- CPU 사용률을 기반으로 파드의 자동 수평 스케일링 설정
- 사용자 정의 메트릭 기반으로 파드의 자동 수평 스케일링 설정
- 파드의 수직 스케일링이 아직 불가능한 이유 이해
- 클러스터 노드 자동 수평 스케일링 이해
수평적 파드 오토스케일링
오토스케일링 프로세스
- 확장 가능한 리소스 오브젝트에서 관리하는 모든 파드의 메트릭을 가져온다
- 메트릭을 지정한 목표 값과 같거나 가깝도록 하기 위해 필요한 파드 수를 계산한다
- 확장 가능한 리소스의 replicas 필드를 갱신한다.
파드 메트릭 얻기
- cAdvisor
- Pod, Node 메트릭 수집
- kubelet에 의해 실행
- 힙스터
- 수집한 메트릭 집계
- HPA (Horizontal Pod Autoscaler)
- 힙스터에 REST 질의를 통해 메트릭을 가져옴
필요한 파드 수 계산
- 모든 레플리카에서 메트릭의 평균값을 이용해 지정한 목표 값과 가능한 가깝게하는 숫자를 찾음
- 실제 계산은 메트릭 값이 불안정한 상태에서 빠르게 변할 때 오토스케일러가 같이 요동치지 않도록 하기 위해 더 복잡하다.
스케일링된 리소스의 레플리카 수 갱신
전체 오토스케일링 과정 이해