오토스케일(AutoScale)이란?
- 운영중인 서버(인스턴스)의 리소스 사용량에 따라 자동으로 규모를 조절 해주는 기능이다.
- 다만 오토스케일 작동되어 새로운 인스턴스가 생성되고 운용되기까지의 소요되는 시간이 있으므로 충분한 모니터링을 검토한 뒤 적절한 임계치를 설정하여 사용하는게 현명하다
NHN 클라우드에서 Auto Scale 적용에 대해서 간단하게 알아보자.
##### NHN Auto Scale 개요 #####
- 내가 원하는 이미지로 Auto Scale 작동되도록 설정
- Auto Scale + Load Balance 적용
##### 작업 개요 #####
- 적용할 인스턴스의 이미지를 생성하여 해당 이미지로 Auto Scale정책이 실행되도록 진행
- Auto Scale 정책 생성 전 서버 이미지 생성
- Auto Scale 정책으로 인해 생성된 인스턴스는 Load Balance에 탑재되어 자동 In/Out 되도록 설정
##### Auto Scale Group 생성 #####
- Compute -> Auto Scale -> 스케일링 그룹 생성
- 해당 가이드에서는 미리 생성한 서버이미지를 사용합니다.
- 인스턴스 정보의 경우 상황에 맞춰 지정합니다.
Ex) 고객사와 합의된 스펙, 다른 Auto Scale 그룹에 적용된 스펙, Etc…
- 키페어의 경우 보안상의 이유로 노출하지 않았습니다. 실제 작업시에는 실제 사용되는 키페어를 지정해 주시길 바랍니다.
- Auto Scale 인스턴스가 생성될 서브넷과 플로팅IP 사용 체크
- Auto Scale 테스트 진행을 위해 공인IP접근 가능하도록 설정하였습니다.(상황에 따라 다를 수 있음)
- 기존 보안그룹과 동일하게 구성하는것을 추천드립니다.
- 위 내용의 Auto Scale 그룹 정책은 아래와 같습니다.
- 생성 규칙 : Auto Scale그룹에 속한 인스턴스의 CPU가 1분동안 80% 이상일 경우 인스턴스 추가생성
- 감소 규칙 : Auto Scale 그룹에 속한 인스턴스의 CPU가 1분동안 30% 미만일 경우 인스턴스 감소
*** 로드밸런서의 경우 지금 단계에서는 설정하지 않도록 하겠습니다. ***
위 과정이 마무리되면 Auto Scale정책 생성이 완료되며, Instance 서비스 항목에서 새로 생성된 Instance를 확인할 수 있습니다.
- NHN Console 내 Auto Scale 서비스 화면
- NHN Console 내 Instance 서비스 화면
##### Auto Scale TEST #####
- 생성된 인스턴스에 접속하여 고의적인 CPU부하를 컨트롤 하여 자동 In/Out이 되는지 테스트 진행
- 인스턴스 접속 및 stress 패키지 설치
- # yum install -y stress
- # stress -c 2
***** CPU 부하 발생 TEST*****
- 현재 Auto Scale CPU사용량 현황 & Instance 갯수
***** CPU 부하 해소 TEST*****
- 현재 Auto Scale CPU사용량 현황 & Instance 개수(중간점검)
- 현재 Auto Scale CPU사용량 현황 & Instance 개수(최종 확인)
##### Auto Scale그룹 Load Balancer 적용 #####
- Compute -> Auto Scale -> LB에 적용할 Auto Scale정책 체크 -> 로드밸런서 변경 -> 로드밸런서 지정 후 적용