[쿠버네티스] Helm 차트의 Resource와 Autoscaling
2024. 2. 5. 20:29ㆍ개발로그/쿠버네티스
반응형
쿠버네티스에 Deployment를 위한 설정 중 Resource와 Autoscaling에 대해 정리 합니다.
Resources
- 파드에 할당할 CPU와 메모리 리소스의 최소, 최대 한계를 정의
- 파드가 사용 할 수 있는 리소스의 양을 제한하여, 리소스의 과도한 사용을 방지하고, 다른 파드와의 리소스 경쟁을 최소화 하는데 도움을 줌
Resources 설정 예제는 아래와 같습니다.
resources:
requests:
memory: "64Mi"
cpu: "250m"
limits:
memory: "128Mi"
cpu: "500m"
- requests
- 파드가 시작될 때 요청하는 리소스의 양
- 이 값을 기반으로 쿠버네티스 스케줄러는 파드를 적절한 노드에 배치
- limits
- 파드가 사용할 수 있는 리소스의 최대 한계
- 이 한계를 초과하는 리소스 사용은 제한 됨
Autoscaling
- HPA(Horizontal Pod Autoscaler)의 자동 스케일링 정책을 설정
- 특정 조건(예: CPU 사용량, 메모리 사용량)에 따라 파드의 인스턴스 수를 자동으로 조정 함
autoscaling:
enabled: true
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
targetMemoryUtilizationPercentage: 80
- enabled
- 자동 스케일링을 활성화/비활성화
- minReplicas
- 자동 스케일링을 통해 유지 할 수 있는 파드의 최소 인스턴스 수
- maxReplicas
- 자동 스케일링을 통해 유지 할 수 있는 파드의 최대 인스턴스 수
- targetCPUUtilizationPercentage
- HPA가 파드를 스케일링하기 시작하는 CPU 사용률의 목표치
- 예를 들어 이 값이 80이라면 CPU 사용률이 80%에 도달했을 때 파드의 인스턴스 수를 증가
- 80%는 파드가 할당 받은 CPU 리소스 대비 사용 중인 CPU의 비율을 의미
- 예를 들어 CPU 요청량이 250m으로 설정되어 있고, targetCPUUtilizationPercentage 값이 80%로 설정되어 있는 경우, 해당 파드는 200m(250m의 80%)의 사용량에 도달했을 때 HPA에 의해 스케일링 됨
- targetMemoryUtilizationPercentage
- 메모리 사용률에 따른 자동 스케일링을 위한 설정
- 메모리 사용률의 목표치를 지정
반응형
'개발로그 > 쿠버네티스' 카테고리의 다른 글
[쿠버네티스] CPU 점유율 메모리 사용량 확인, HPA 설정 (0) | 2024.02.06 |
---|