
각 애플리케이션 배포에 할당할 최소 및 최대 리소스 양을 파악하는 방법은 무엇입니까? 클러스터를 설정 중인데 리소스를 설정하지 않았으며 자유롭게 실행되도록 했습니다.
피크 시간 동안 부하를 파악하고 작업하는 데 사용할 수 있을 것 같지만 여전히 상위는 6% 또는 10%와 같은 것으로 표시되지만 다음 과 top command
같은 것을 생성하기 위해 이를 계산하는 방법을 잘 모르겠습니다 . 사용량 에 따라 최대값과 최소값을 결정하는 방법/공식이 있습니까 ?0.5 cpu
100 MB
top command
두 개의 t3.medium 노드 를 실행 중이고 다음 포드가 있습니다 httpd and tomcat in namespace1
. 필요한 최소 리소스에 대한 가이드가 있나요? 아니면 상단이나 다른 방법을 기반으로 계산해야 합니까?mysql in namepsace2
jenkins and gitlab in namespace3
답변1
포드에 할당할 리소스는 애플리케이션 사용량에 따라 다릅니다. 예를 들어 helm을 사용하여 설치할 때 jenkins
다음을 지정했습니다.리소스 요청 및 제한:
resources:
requests:
cpu: "50m"
memory: "256Mi"
limits:
cpu: "2000m"
memory: "4096Mi"
그러나 리소스 부족으로 인한 Pod 종료를 방지하려면 다음을 사용할 수 있습니다.Horizontal Pod Autoscaler
리소스 측정항목을 사용하여 포드를 확장하거나 축소합니다.자원 소비(또는 다른맞춤 측정항목, 요청 등). HPA에는 다음이 필요합니다.metrics-server
클러스터에서 실행 중입니다.
을 사용하여 쉽게 만들 수 있습니다.kubectl autoscale
, 예를 들어:
kubectl autoscale deployment <deployment-name> --cpu-percent=50 --min=1 --max=10
--min
실행할 최소 복제본 수는 어디에 있고, --max
로드 증가 시 생성되는 Pod의 최대 복제본 수는 어디입니까?