NAVER Cloud

네이버클라우드에서 서버 중지/기동 스케줄링 설정-CLI

한크크 2021. 2. 1. 10:23

클라우드 서비스의 경우 대부분 서버가 기동되어 있는 경우 과금되고 서버를 삭제하지 않아도 중지해 두면 과금되지 않는다. 네이버클라우드에서도 GPU 나 일부 스펙을 제외하고는 동일한 과금 체계가 적용된다. 

서버를 삭제해버리면 다음에 동일한 구성을 사용할 때 또 설정 작업을 해야하기 때문에 사용할 때만 서버를 켜고 사용하지 않을 때는 서버를 꺼둬서 비용 효율적인 클라우드 운영을 해보고자 한다. 

 

CLI 를 이용하는 방법과 Cloud Functions 을 이용해 API로 스케줄링 하는 두가지 방법이 있는데, CLI를 사용할 경우 OS의 cron 기능을 이용하여 스케줄을 설정할 수 있다. 

 

1. CLI tool 설치 관련

clidocs.ncloud.com/ko/guide/userguide/#시작하기

 

Ncloud CLI 사용 가이드 - CLI 참조서

개요 Ncloud CLI는 Server, Load Balancer, CDN, Auto Scaling, VPC, Server(VPC), NAS(VPC), Auto Scaling(VPC), Load Balancer(VPC) 서비스의 명령줄 환경을 제공합니다. 이 문서에서는 CLI 초기 설정법부터 간단한 이용방법에 대

clidocs.ncloud.com

 

2. CLI 사용 프로필 설정 

cron 실행 시 Access/Secret key 를 입력하도록 스크립트를 짜는것은 번거로우므로 cli profile 을 설정해둔다. 

나는 admin_profile 이라고 profile_name 을 입력했다. 

./ncloud configure --profile {$profile_name}

cli profile 설정 예시

 

Access/SecretKey 확인은 여기서.. 

https://www.ncloud.com/mypage/manage/authkey

 

3. CLI 테스트 

crontab 에 등록하기 전 작성한 커맨드가 정상적으로 동작하는지 확인해 본다. 

VM stop/start 에 대한 cli 옵션은 아래 링크를 참고한다. 

https://clidocs.ncloud.com/ko/cli/server/stopserverinstances/

 

stopServerInstances - CLI 참조서

API 명 서버 인스턴스 정지 설명 서버 인스턴스(VM)를 정지합니다. 요청 파라미터 파라미터 명 필수 여부 타입 제약사항 설명 serverInstanceNoList Yes List 중복 불가 정지할 서버 인스턴스 번호 응답 데

clidocs.ncloud.com

https://clidocs.ncloud.com/ko/cli/server/startserverinstances/

 

startServerInstances - CLI 참조서

API 명 서버 인스턴스 시작 설명 서버 인스턴스(VM)를 시작합니다. 요청 파라미터 파라미터 명 필수 여부 타입 제약사항 설명 serverInstanceNoList Yes List 중복불가 시작할 서버 인스턴스 번호 리스트

clidocs.ncloud.com

/cli_linux/ncloud server startServerInstances --serverInstanceNoList {$instance_id} --profile admin_profile

stop/start 스케줄을 설정할 VM 의 인스턴스 ID는 콘솔에서도 확인할 수 있다. 

 

4. crontab 등록

커맨드가 잘 동작하는 것을 확인했다면 서버의 crontab에 아래와 같이 등록해 준다. 

56 10 * * * /cli_linux/ncloud server startServerInstances --serverInstanceNoList {$instacne_no} --profile admin_profile >>/root/start_test.sh.log 2>&1

반응형