자동 크기 조정기 프로필을 사용하여 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

다음 단계