자동 크기 조정기 프로필을 사용하여 Azure Arc에서 사용하도록 설정된 AKS에서 클러스터 자동 크기 조정 구성
적용 대상: Azure Stack HCI 22H2의 AKS, Windows Server의 AKS
Autoscaler 프로필 개체의 매개 변수를 사용하여 Arc에서 사용하도록 설정된 AKS에서 크기 조정 이벤트를 정의할 수 있습니다. 클러스터 자동 크기 조정기 프로필은 클러스터 자동 크기 조정기를 사용하는 모든 노드 풀에 영향을 줍니다. 노드 풀별로 자동 크기 조정기 프로필을 설정할 수는 없습니다. 이 문서에서는 자동 크기 조정기가 작동하는 방식을 설명하고, 기본 자동 크기 조정기 프로필 값을 설명하고, 프로필 정의를 구성하고 사용하는 방법을 설명합니다.
프로필 사용
클러스터 자동 크기 조정기 프로필에는 다음과 같은 특성이 있습니다.
- 자동 크기 조정기 프로필은 클러스터의 모든 노드 풀에 적용됩니다.
- 프로필은 전역 배포 수준 개체입니다.
- AKS Arc에서 여러 프로필을 사용할 수 있습니다.
- 지정된 클러스터에 하나의 프로필만 할당됩니다. 프로필은 클러스터의 모든 노드 풀에 사용됩니다.
- 프로필 변경 내용은 autoscaler 함수를 사용하도록 설정된 모든 노드 풀에 적용됩니다.
프로필 설정
기본 프로필은 아래의 기본값으로 구성됩니다. 다음 설정을 업데이트할 수 있습니다.
설정 | Description | 기본값 |
---|---|---|
min-node-count | 이 프로필이 할당된 노드 풀이 축소할 수 있는 최소 노드 수입니다. | 0 |
max-node-count | 이 프로필이 할당된 노드 풀이 확장할 수 있는 최대 노드 수입니다. | 1 |
scan-interval | 스케일 업 또는 다운을 위해 클러스터가 다시 평가되는 빈도입니다. | 10초 |
scale-down-delay-after-add | 스케일 다운 평가가 다시 시작하는 확장 후의 기간입니다. | 10분 |
scale-down-delay-after-delete | 스케일 다운 평가가 다시 시작하는 노드 삭제 후의 기간입니다. | scan-interval |
scale-down-delay-after-failure | 스케일 다운 실패 후 스케일 다운 평가가 다시 시작하는 기간입니다. | 3분 |
scale-down-unneeded-time | 노드가 스케일 다운에 적합하기 전에 불필요한 기간을 지정해야 합니다. | 10분 |
scale-down-unready-time | 스케일 다운에 적합하기 전에 준비되지 않은 노드를 불필요한 상태로 유지해야 하는 기간입니다. | 20분 |
scale-down-utilization-threshold | 요청된 리소스의 합계로 정의된 노드 사용률 수준은 아래의 노드를 스케일 다운으로 간주할 수 있는 용량으로 나뉩니다. | 0.5 |
max-graceful-termination-sec | 노드를 스케일 다운하려고 할 때 클러스터 자동 크기 조정기가 Pod 종료를 위해 대기하는 최대 시간(초) | 600초 |
balance-similar-node-groups | 유사한 노드 풀을 검색하고 그 사이의 노드 수의 균형을 조정합니다. | false |
확장기 | 스케일 업에 사용할 노드 풀 확장기의 유형입니다. 가능한 값: 대부분의 Pod, 임의, 최소 폐기물, 우선 순위. | random |
skip-nodes-with-local-storage | true 클러스터 자동 크기 조정기가 로컬 스토리지가 있는 Pod가 있는 노드(예: EmptyDir 또는 HostPath)를 삭제하지 않습니다. | true |
skip-nodes-with-system-pods | true인 경우 클러스터 자동 크기 조정기는 kube-system에서 Pod가 있는 노드를 삭제하지 않습니다(DaemonSet 또는 미러 Pod 제외). | true |
max-empty-bulk-delete | 동시에 삭제할 수 있는 최대 빈 노드 수입니다. | 10개 노드 |
new-pod-scale-up-delay | Kubernetes 스케줄러가 모든 Pod를 예약하기 전에 CA가 작동하지 않도록 하려는 버스트/일괄 처리 규모와 같은 시나리오의 경우, 어느 정도 시간이 지나기 전에 예약되지 않은 Pod를 CA가 무시하도록 지시할 수 있습니다. | 0초 |
max-total-unready-percentage | 클러스터에서 준비되지 않은 노드의 최대 비율입니다. 이 비율을 초과하면 CA는 작업을 중지합니다. | 45% |
max-node-provision-time | 자동 크기 조정기가 노드가 프로비전될 때까지 대기하는 최대 시간입니다. | 15분 |
자동 크기 조정기 구성에 대한 참고 사항
Set-AksHciAutoScalerConfig PowerShell cmdlet을 사용하여 클러스터 자동 크기 조정기 프로필의 설정을 변경할 수 있습니다.
클러스터 자동 크기 조정기는 각 노드 풀에 설정된 최소 및 최대 개수에 따라 크기 조정 결정을 내리지만 최소 또는 최대 개수를 업데이트한 후에는 적용하지 않습니다. 예를 들어 현재 노드 수가 3일 때 최소 5를 설정해도 풀의 크기는 5로 즉시 조정되지 않습니다.
노드 풀의 최소 개수가 현재 노드 수보다 높은 값을 갖는 경우 두 개의 새 추가 노드가 필요하고 자동 크기 조정기 이벤트를 트리거하는 예약할 수 없는 Pod가 충분한 경우 새 최소 또는 최대 설정이 적용됩니다. 크기 조정 이벤트 후에는 새로운 개수 제한이 적용됩니다.
클러스터 전체 자동 크기 조정기 프로필의 기본값을 변경하여 클러스터 자동 크기 조정기의 세부 정보를 구성할 수도 있습니다. 예를 들어 노드가 10분 동안 사용률이 낮아지면 규모 축소 이벤트가 발생합니다. 15분마다 실행되는 워크로드가 있는 경우 15분 또는 20분 후에 사용량이 저조한 노드를 스케일 다운하도록 자동 크기 조정기 프로필을 변경할 수 있습니다. 클러스터 자동 크기 조정기를 사용하도록 설정하면 다른 설정을 지정하지 않는 한 기본 프로필이 사용됩니다.
자동 크기 조정기 프로필 저장 및 로드
자동 크기 조정기 프로필을 프로필 정의에 저장하고 YAML 파일로 저장할 수 있습니다. 텍스트 편집기에서 YAML 파일을 수동으로 편집할 수 있으며 저장된 정의를 로드할 수 있습니다.
프로필 정의 저장
를 사용하여 kvactl
프로필의 복사본을 YAML 파일로 저장합니다. 프로필을 정의한 후 다음 명령을 실행합니다.
kvactl.exe autoscalerprofile get --name default --kubeconfig (Get-AksHciConfig).Kva.kubeconfig --outputformat=yaml > def.yaml
프로필 정의 편집
YAML 파일에서 프로필 정의를 편집할 수 있습니다. 예를 들어 메모장, Visual Studio Code 또는 기타 텍스트 편집기에서 def.yaml을 열 수 있습니다.
프로필 정의 로드
저장된 YAML 파일에서 을 사용하여 kvactl
프로필 정의를 로드할 수 있습니다. 다음 명령 실행:
kvactl.exe autoscalerprofile create --profileconfig .\def-new.yaml --kubeconfig (Get-AksHciConfig).Kva.kubeconfig
다음 단계
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기