- 인쇄
- PDF
Auto Scaling Group
- 인쇄
- PDF
Classic 환경에서 이용 가능합니다.
Launch Configuration을 기반으로 Auto Scaling Group을 생성하는 방법을 설명합니다.
Auto Scaling Group 화면
Auto Scaling Group 이용을 위한 기본적인 설명은 다음과 같습니다.
영역 | 설명 |
---|---|
① 메뉴명 | 현재 확인 중인 메뉴명 및 생성된 항목 개수 |
② 기본 기능 | Auto Scaling Group 메뉴 최초 진입 시 표시되는 기능 |
③ 생성 후 기능 | |
④ Auto Scaling Group 목록 | 생성한 Auto Scaling 그룹 목록 |
Auto Scaling Group 목록 확인
생성된 Auto Scaling 그룹별 정보를 확인할 수 있습니다. 확인하는 방법은 다음과 같습니다.
생성된 Auto Scaling 그룹이 1개 이상인 경우 목록을 확인할 수 있습니다. 생성된 Auto Scaling 그룹이 없는 경우 Auto Scaling Group 화면에서 목록이 표시되지 않습니다.
- 네이버 클라우드 플랫폼 콘솔의 Region 메뉴와 Platform 메뉴에서 이용 중인 환경을 클릭해 주십시오.
- Services > Compute > Auto Scaling 메뉴를 차례대로 클릭해 주십시오.
- Auto Scaling Group 메뉴를 클릭해 주십시오.
- Auto Scaling Group 목록이 나타나면 요약 정보를 확인하거나 Auto Scaling 그룹을 클릭하여 상세 정보를 확인해 주십시오.
- Auto Scaling Group 이름: Auto Scaling 그룹 생성 시 입력한 이름
- Launch Configuration 이름: Auto Scaling 그룹에 지정한 Launch Configuration 이름
- 최소 용량: Auto Scaling 그룹의 최소 서버 수
- 최대 용량: Auto Scaling 그룹의 최대 서버 수
- 기대 용량: Auto Scaling 그룹의 기대 서버 수. 미입력 시 최소 용량에 따라 서버가 생성됨.
- 서버 수: 현재 서버 수
- 헬스 체크 유형: Auto Scaling 그룹의 헬스 체크 기준
- 서버 이름 Prefix: Auto Scaling 서버에 붙는 접두사
- Zone(s): Auto Scaling 그룹이 할당되는 존
- 쿨다운 기본값(초): Scaling 수행 시 적용할 쿨다운 시간값
- 서버 구성: Auto Scaling 서버의 상세 스펙
- 내 서버 이미지: 사용된 내 서버 이미지 이름. 기본 이미지를 사용했다면 공란 표시.
- 로드밸런서: 헬스 체크 유형이 로드밸런서일 때 연결된 Load Balancer 이름
- 헬스 체크 보류 기간(초): 헬스 체크 보류 시간값
- 반납 정책: Auto Scaling 그룹 생성 시 설정한 서버 반납 정책
- NAT Gateway: NAT Gateway 이용 여부
- Peer Host: NAT Gateway 이용 시 Peer Host 이름
Auto Scaling Group 생성
네이버 클라우드 플랫폼 콘솔에서 Auto Scaling 그룹을 생성하는 방법은 다음과 같습니다.
계정당 최대 100개의 Auto Scaling 그룹을 생성할 수 있으며, 그룹당 최대 30대의 서버를 생성할 수 있습니다.
- 네이버 클라우드 플랫폼 콘솔의 Region 메뉴와 Platform 메뉴에서 이용 중인 환경을 클릭해 주십시오.
- Services > Compute > Auto Scaling 메뉴를 차례대로 클릭해 주십시오.
- Auto Scaling Group 메뉴를 클릭해 주십시오.
- [Auto Scaling Group 생성] 버튼을 클릭해 주십시오.
- Auto Scaling Group 생성 화면이 나타나면 다음 단계를 차례대로 진행해 주십시오.
1. Launch Configuration 선택
Auto Scaling 그룹에 포함될 서버의 구성 템플릿, 즉 Launch Configuration을 선택한 후 [다음] 버튼을 클릭해 주십시오.
2. 그룹 설정
Auto Scaling 그룹 설정 정보를 지정한 후 [다음] 버튼을 클릭해 주십시오.
- Auto Scaling 그룹 이름: 1~255자의 영어 소문자, 숫자, 하이픈(-)을 사용해 입력
- Zone: Auto Scaling 그룹을 배치할 존 선택
- 서버 이름 Prefix: Auto Scaling 서버에 붙일 접두사 입력
- 최소 용량: Auto Scaling 그룹의 최소 서버 수 입력
- 최대 용량: Auto Scaling 그룹의 최대 서버 수 입력
- 기대 용량: Auto Scaling 그룹의 기대 서버 수 입력. 미입력 시 그룹 생성 후에 최소 용량의 서버가 생성됨.
- 쿨다운 기본값(초): Scaling을 수행할 때 서버가 완전히 준비되기까지 다른 알람에 반응하지 않고 대기하는 쿨다운 시간값 입력
- 헬스 체크 보류 기간: 서버 생성 직후 업데이트 등의 작업으로 인해 헬스 체크에 정상 응답하지 못하는 점을 고려하여, 헬스 체크에 실패하더라도 이상이 없다고 판단하는 보류 시간값 입력
- 헬스 체크 기준이 Load Balancer인 경우 반드시 입력해야 합니다.
- 헬스 체크 유형: Auto Scaling 그룹의 헬스 체크 기준. 기본적으로 서버가 선택되어 있으며 Load Balancer 선택 가능.
- 로드밸런서: Load Balancer 연결 여부 선택
- 로드밸런서에 연결 체크 박스를 클릭하여 선택하면 헬스 체크 유형이 Load Balancer로 설정되고 연결할 Load Balancer를 선택할 수 있습니다.(최대 10개 연결 가능) Load Balancer 선택 시 Auto Scaling 서버가 해당 Load Balancer에 자동으로 바인딩됩니다.
- 반납 정책: 서버 반납 정책 설정
- 기본 설정: 소속 서버 중 가장 오래된 서버부터 반납
- 고객이 API로 직접 지정: 사용자가 API를 통해 반납 대상을 지정하여 반납
- 호출될 API URL: 서버 반납이 필요할 때 사용자에게 반납할 서버 목록을 요청할 API URL
- 응답 대기 시간: 사용자 응답 대기 시간으로, 이를 초과하면 기본 설정대로 반납
- API 인증(옵션): 사용자의 API에 대한 추가 인증 수단
- NAT Gateway 용: NAT Gateway 이용 여부 선택
반납 대상을 API로 지정하는 경우 다음의 규격을 참고하여 API를 작성해 주십시오.
HTTP query API, LIKE REST API, but not REST
HTTP only, not yet HTTPS
HTTP method: POST
POST body data type: json
{autoScalingGroupName:”asg-1”, terminationCandidateInstances:[{instanceName:”s-1”, instanceNo:”10342”, instanceIpAddress:”10.7.31.4”}], adjustmentMagnitude:2}
Result data type: json
{autoScalingGroupName:”asg-1”, selectedInstanceNoList:[{“10342”, “20024”, “89103”}]}
Size of list must be >= adjustmentMagnitude:2 and <= # of terminationCandidateInstances
3. 정책/일정 설정
Scaling 정책 또는 일정을 설정한 후 [다음] 버튼을 클릭해 주십시오.
- 나중에 설정: 지금 설정하지 않고 나중에 설정
- 정책 설정: 서버 수 증가/감소 정책 설정(최대 10개 생성 가능)
- 정책 이름: 정책의 이름 입력
- Scaling 설정: 증감 변경, 비율 변경, 고정값 중에서 Scaling 정책 설정
- 증감변경: 증가 또는 감소시킬 서버 대 수 입력
- 비율변경: 현재 그룹 크기에 대비하여 서버가 증가 또는 감소될 일정 비율 입력
- 고정값: 그룹 크기의 고정값 입력
- 최소 조정 폭: 비율변경 선택 시에만 입력 가능하며 최소 조정 폭 지정
- 쿨다운(초): Scaling 수행 시 다른 알람에 반응하지 않고 대기하는 시간값 입력
- 일정 설정: 서버 수 증가/감소 일정 설정(최대 100개 생성 가능)
- 일정 이름: 일정의 이름 입력
- Scaling 설정: Scaling 실행할 최소 용량, 최대 용량, 기대 용량 입력
- 셋 중 적어도 하나의 항목을 반드시 입력해야 합니다.
- Time Zone: 기준 시간대 선택
- 시작 시간: 일정을 시작할 날짜 및 시간 입력. 미입력 시 설정 저장 후 가장 빠른 반복 일정으로 시작일이 지정됨.
- 반복 설정: 반복 실행 필요시 반복 주기를 입력하되, 리눅스 Cronjob과 동일한 규칙으로 입력
- 종료 시간: 반복 설정 시 반복을 종료할 날짜 및 시간 입력. 미입력 시 무한 반복됨.
4. 통보 설정
이벤트 통보 기능을 설정한 후 [다음] 버튼을 클릭해 주십시오.
- 나중에 설정: 지금 설정하지 않고 나중에 설정
- 통보내역: 이벤트 발생 시 통보하도록 기능 활성화
- 통보내역: 통보를 보낼 이벤트 선택
- Administrative Suspension은 Launch Configuration에 결함이 있는 것으로 판단되어 해당 Launch Configuration의 사용이 중지된 상황을 뜻합니다.
- 통보설정: 통보받을 담당자 선택
- 통보 대상 관리 그룹에 등록된 대상자 중에서만 선택 가능
- 새로운 통보 대상자를 추가하려면 [통보대상관리] 버튼을 클릭하여 대상자 추가(Notification Recipient 참고)
- 통보내역: 통보를 보낼 이벤트 선택
5. 최종 확인
설정 내용을 확인한 후 [Auto Scaling Group 생성] 버튼을 클릭해 주십시오.
- 그룹이 생성되어 Auto Scaling Group 목록에 추가됩니다.
모니터링 이벤트를 기반으로 Auto Scaling 정책이 활성화되도록 하려면 Monitoring과 연동시켜야 합니다. 자세한 내용은 모니터링 이벤트 연동을 참고해 주십시오.
모니터링 이벤트 연동
Auto Scaling 수행 규칙을 정책으로 설정했다면, 모니터링 이벤트를 기반으로 Auto Scaling 정책이 실행되도록 설정할 수 있습니다.
Auto Scaling 그룹을 Cloud Insight 모니터링 대상으로 설정하면 됩니다.
먼저 Cloud Insight 이용을 신청한 후 Services > Management & Governance > Cloud Insight (Monitoring) > Configuration > Event Rule 메뉴에서 감시 대상 및 액션을 설정해 주십시오. 설정 방법에 대한 자세한 내용은 Event Rule 생성 가이드을 참조해 주십시오.
- Auto Scaling 그룹이 생성되어 있고, 그룹 내 서버가 존재해야 합니다.
- 감시 Metric(성능 지표)으로는 주로 CPU 사용량과 관련된 항목이 사용됩니다.
Auto Scaling Group 설정 및 확인
생성된 Auto Scaling 그룹의 정책, 일정, Launch Configuration, 이벤트 통보 여부, 세부 프로세스를 변경할 수 있습니다. 또한 Auto Scaling 그룹의 Scaling 실행 이력이나 그룹 소속 서버를 확인할 수도 있습니다. 실행하는 방법은 다음과 같습니다.
- 네이버 클라우드 플랫폼 콘솔의 Region 메뉴와 Platform 메뉴에서 이용 중인 환경을 클릭해 주십시오.
- Services > Compute > Auto Scaling 메뉴를 차례대로 클릭해 주십시오.
- Auto Scaling Group 메뉴를 클릭해 주십시오.
- Auto Scaling 그룹을 선택한 후 [설정 및 관리] 버튼을 클릭해 주십시오.
- 변경할 설정 탭을 클릭하고 내용을 변경해 주십시오.
- [Launch Configuration] 탭: 그룹에 연결된 Launch Configuration 변경
- [정책] 탭: Scaling 정책 변경
- [생성] 버튼 클릭 시 새로운 Scaling 정책 추가(정책 설정 참고)
- [수정] 또는 [삭제] 버튼 클릭 시 선택된 정책을 수정 또는 삭제하며, [실행] 버튼 클릭 시 선택된 정책을 바로 실행
- [일정] 탭: Scaling 일정 설정
- [생성] 버튼 클릭 시 새로운 Scaling 일정 추가(일정 설정 참고)
- [수정] 또는 [삭제] 버튼 클릭 시 선택된 일정을 수정 또는 삭제
- [이력] 탭: Scaling 실행 이력 확인
- [상세정보] 버튼 클릭 시 선택된 이력 항목의 자세한 내용 확인
- [통보 설정] 탭: 통보 이벤트와 통보 대상자 변경
- 새로운 통보 대상자를 추가하려면 [통보대상관리] 버튼을 클릭하여 대상자 추가(Notification Recipient 참고)
- [서버] 탭: 그룹에 소속된 서버 목록 및 상태 확인
- [프로세스 관리] 탭: 그룹의 프로세스 상태 확인 및 일시 정지/재시작
프로세스 설명 LAUNCH (LANCH) - Scale-out(서버 확장) 조건 발생 시 설정값을 확인해 서버 생성 및 투입
- 일시 정지 시 서버 생성이 중지되고, 재시작 시 기대 수량에 따라 필요시 Scale-out 진행
TERMINATE (TERMT) - Scale-in(서버 축소) 조건 발생 시 설정값을 확인해 서버 반납
- 일시 정지 시 서버 반납이 중지되고, 재시작 시 기대 수량에 따라 Scale-in 진행
HEALTH CHECK (HTHCK) - 10초 주기로 서버 헬스 체크
- 일시 정지 시 헬스 체크가 종료되고, 재시작 시 시작 시점부터 헬스 체크 재진행
REPLACE UNHEALTHY (RPUNH) - 특정 서버의 헬스 체크가 실패하면 실패 이력을 데이터베이스에 기록 및 주기적인 모니터링 실시하며 다른 서버로 교체
- 일시 정지 시 헬스 체크 실패해도 서버 반납하지 않고 기대 수량에 따른 Scaling 진행. 재시작 시 남아 있는 헬스 체크 실패 서버를 다시 반납.
SCHEDULED ACTIONS (SCACT) - 등록된 일정에 따라 Scaling 수행
- 일시 정지 시 일정 시작 시간이 되어도 Scaling을 수행하지 않고, 재시작 시 이후 일정에 따라 Scaling 수행
- 헬스 체크 실패 또는 기대 수량 변경에 따른 Scaling은 프로세스 정지 여부와 상관없이 정상 처리됨
ADD TO LOAD BALANCER (ADTLB) - 헬스 체크 유형이 Load Balancer일 경우 추가 생성되어 정상 운영 상태가 된 서버를 Load Balancer에 바인딩
- 일시 정지 시 바인딩을 수행하지 않고, 재시작 시 이후 추가되는 서버에 한해서만 바인딩 수행(일시 정지 기간에 추가된 서버는 바인딩 요청을 진행하지 않음)
ALARM NOTIFICATION (ALMNO) - Cloud Insight 알람에 따른 Scaling 수행 이벤트를 사용자에게 통보
- 일시 정지 시 Cloud Insight 알람이 무시되며 Scaling 미수행 및 통보 발송 중지. 재시작 시 이후 발생하는 Cloud Insight 알람이 전달되고 Scaling 수행 및 통보.
Auto Scaling Group 정보 수정
생성된 Auto Scaling 그룹의 상세 정보를 수정하는 방법은 다음과 같습니다.
- 네이버 클라우드 플랫폼 콘솔의 Region 메뉴와 Platform 메뉴에서 이용 중인 환경을 클릭해 주십시오.
- Services > Compute > Auto Scaling 메뉴를 차례대로 클릭해 주십시오.
- Auto Scaling Group 메뉴를 클릭해 주십시오.
- Auto Scaling 그룹을 선택한 후 [수정] 버튼을 클릭해 주십시오.
- 상세 정보를 수정한 후 [확인] 버튼을 클릭해 주십시오.
- 각 항목에 대한 자세한 설명은 2. 그룹설정을 참고해 주십시오.
Auto Scaling Group 삭제
생성된 Auto Scaling 그룹을 삭제하는 방법은 다음과 같습니다.
Auto Scaling 그룹에 서버가 남아 있으면 그룹을 삭제할 수 없습니다. 최소 용량 또는 기대 용량을 조정하여 남은 서버가 없도록 한 후에 시도해 주십시오.
- 네이버 클라우드 플랫폼 콘솔의 Region 메뉴와 Platform 메뉴에서 이용 중인 환경을 클릭해 주십시오.
- Services > Compute > Auto Scaling 메뉴를 차례대로 클릭해 주십시오.
- Auto Scaling Group 메뉴를 클릭해 주십시오.
- 삭제할 Auto Scaling Group을 클릭한 후 [삭제] 버튼을 클릭해 주십시오.
- 삭제 팝업 창이 나타나면 [확인] 버튼을 클릭해 주십시오.
- Auto Scaling Group 목록에서 해당 Auto Scaling 그룹이 사라집니다.