13.3 Autoscaling 테스트
Step #5: 부하 발생에 따라 Instance Pool내에 인스턴스 수 증가 - Scale Out 테스트
-
Instance Pool로 이동해서 현재 있는 Compute 인스턴스의 IP를 확인한 뒤 SSH로 접속합니다.
-
stress 툴 설치
sudo yum-config-manager --enable ol8_developer_EPEL sudo yum install -y stress
-
stress 수행
sudo stress --cpu N
-
실행 예시
사용할 Compute Instance의 CPU에 갯수에 맞춰 조정하여 부하를 계속 줍니다. 오토스케일 설정시 정한 Cool Down을 값을 고려하여 그 시간 이상 부하를 줍니다.
[opc@web-server-template ~]$ sudo stress --cpu 4 stress: info: [42769] dispatching hogs: 4 cpu, 0 io, 0 vm, 0 hdd
부하발생 중 모니터링
-
OCI 콘솔에서 내비게이션 메뉴를 엽니다. Compute > Instance Pools 항목으로 이동합니다.
-
Autoscaling 할 Instance Pool의 상세화면으로 이동합니다.
-
Resources > Metrics 에서 인스턴스 풀에 대한 모니터링을 지원합니다.
-
Metric namespace는 oci_computeagent를 선택하면 인스턴스 풀에 속한 VM 들에 대한 메트릭 정보를 볼 수 있습니다. 아래와 같이 CPU 부하가 모니터링 되고 있습니다.
Scale Out 확인
-
지정한 Cooldown을 초과하여 부하가 계속발생하여 그림과 같이 Autoscaling이 발생합니다.
-
Instance Pool 상세 정보에서 서버 추가가 완료된 결과를 볼 수 있습니다.
-
Load Balancer의 Backend Set에서 신규 서버가 추가되는 것을 볼 수 있습니다.
-
서버 추가로 인해 Instance Pool의 평균 CPU 부하는 반으로 내려간 것을 볼 수 있습니다.
-
브라우저를 통해 LB의 Public IP로 접속합니다.
-
브라우저를 리프레쉬합니다. 잘 분배되는 것을 볼 수 있습니다.
Step #6: 부하 감소에 따라Instance Pool내에 인스턴스 수 감소 - Scale In 테스트
-
1번 서버 SSH 접속 터미널에서 주던 부하를 중지합니다.
[opc@web-server-template ~]$ sudo stress --cpu 4 stress: info: [42769] dispatching hogs: 4 cpu, 0 io, 0 vm, 0 hdd ^C [opc@web-server-template ~]$
-
모니터링에서 Instance Pool의 평균 CPU 부하가 감소되었습니다.
-
부하가 줄어들어 그림과 같이 Autoscaling이 발생합니다.
-
Work Requests 상의 로그를 보면 Load Balancer에서 먼저 인스턴스를 백엔드 셋에서 제외하고 종료하는 순으로 Scale In이 됩니다.
-
Scale In 완료
-
Load Balancer의 Backend Set에서도 삭제된 것이 확인됨.
이 글은 개인으로서, 개인의 시간을 할애하여 작성된 글입니다. 글의 내용에 오류가 있을 수 있으며, 글 속의 의견은 개인적인 의견입니다.