축소 모드를 사용하여 AKS(Azure Kubernetes Service)에서 노드 삭제/할당 취소

기본적으로 수동으로 또는 클러스터 자동 크기 조정기에서 수행된 축소 작업에는 새 노드의 할당과 프로비전이 필요하며 축소 작업은 노드를 삭제합니다. 축소 모드를 사용하면 축소 시 AKS(Azure Kubernetes Service) 클러스터에서 노드를 삭제 또는 할당 취소할지 여부를 결정할 수 있습니다.

Azure VM이 Stopped(할당 취소됨) 상태이면 VM 컴퓨팅 리소스에 대한 요금이 청구되지 않습니다. 그러나 VM에 연결된 OS 및 데이터 스토리지 디스크에 대한 요금을 계속 지불해야 합니다. 즉, 컨테이너 이미지가 해당 노드에 유지됩니다. 자세한 내용은 Azure Virtual Machines의 상태 및 청구를 참조하세요. 이 동작을 사용하면 배포에서 캐시된 이미지를 사용하므로 작업 속도가 더 빨라집니다. 스케일 다운 모드를 사용하면 노드를 미리 프로비전하고 컨테이너 이미지를 미리 끌어올 필요가 없으므로 컴퓨팅 비용이 절약됩니다.

시작하기 전에

Warning

할당 취소된 VM을 유지하려면 축소 모드를 할당 취소로 설정해야 합니다. 여기에는 IaaS API(Virtual Machine Scale Set API)를 통해 할당 취소된 VM이 포함됩니다. 축소 모드를 삭제로 설정하면 할당 취소 VM이 제거됩니다. 할당 취소 모드를 적용하고 스케일 다운 작업이 발생하면 해당 노드는 API 서버에 등록된 상태를 유지하고 NotReady 상태로 나타납니다.

이 문서에서는 기존 AKS 클러스터가 있다고 가정합니다. AKS 클러스터가 없는 경우 AKS의 엔터프라이즈 규모 구현 설계에 대한 지침은 AKS 디자인 계획을 참조하세요.

제한 사항

  • 임시 OS 디스크는 지원되지 않습니다. 클러스터나 노드 풀을 만들 때 인수 --node-osdisk-type Managed를 포함하여 관리되는 OS 디스크를 지정해야 합니다.

참고 항목

이전에는 스케일 다운 모드가 미리 보기 상태인 동안 스폿 노드 풀이 지원되지 않았습니다. 이제 스케일 다운 모드가 일반 공급되었으므로 이 제한은 더 이상 적용되지 않습니다.

축소 모드를 사용하여 축소 시 노드 할당 취소

--scale-down-mode Deallocate를 설정하면 클러스터/노드 풀 축소 중에 노드 할당이 취소됩니다. 할당 취소된 모든 노드가 중지됩니다. 클러스터/노드 풀을 확장해야 하는 경우 새 노드가 프로비전되기 전에 할당 취소된 노드가 먼저 시작됩니다.

이 예에서는 노드 20개를 사용하여 새 노드 풀을 만들고 스케일 다운 시 --scale-down-mode Deallocate 인수를 사용하여 할당 취소할 노드를 지정합니다.

az aks nodepool add --node-count 20 --scale-down-mode Deallocate --node-osdisk-type Managed --max-pods 10 --name nodepool2 --cluster-name myAKSCluster --resource-group myResourceGroup

노드 풀 크기를 조정하고 노드 수를 5로 변경하여 노드 15개를 할당 취소합니다.

az aks nodepool scale --node-count 5 --name nodepool2 --cluster-name myAKSCluster --resource-group myResourceGroup

스케일 다운 중에 Windows 노드의 할당을 취소하려면 다음 명령을 실행합니다. 기본 동작은 노드가 스케일 다운 중에 삭제되는 Linux 노드와 일치합니다.

az aks nodepool add --node-count 20 --scale-down-mode Deallocate --os-type Windows --node-osdisk-type Managed --max-pods 10 --name npwin2 --cluster-name myAKSCluster --resource-group myResourceGroup

이전에 할당 취소된 노드 삭제

할당 취소된 노드를 삭제하려면 Delete를 설정하여 축소 모드를 --scale-down-mode Delete로 변경하면 됩니다. 할당 취소된 노드 15개가 이제 삭제됩니다.

az aks nodepool update --scale-down-mode Delete --name nodepool2 --cluster-name myAKSCluster --resource-group myResourceGroup

참고 항목

축소 모드를 Deallocate에서 Delete로 변경한 다음, 다시 Deallocate로 변경하면 모든 할당 취소된 노드가 삭제되지만 Deallocate 축소 모드에서 노드 풀이 보존됩니다.

축소 모드를 사용하여 축소 시 노드 삭제

축소 모드를 사용하지 않는 AKS의 기본 동작은 클러스터를 축소할 때 노드를 삭제하는 것입니다. 스케일 다운 모드를 사용하면 --scale-down-mode Delete를 설정하여 이 동작을 명시적으로 수행할 수 있습니다.

이 예에서는 새 노드 풀을 만들고 --scale-down-mode Delete 인수를 사용하여 축소 시 삭제되는 노드를 지정합니다. 크기 조정 작업은 클러스터 자동 크기 조정기를 사용하여 처리됩니다.

az aks nodepool add --enable-cluster-autoscaler --min-count 1 --max-count 10 --max-pods 10 --node-osdisk-type Managed --scale-down-mode Delete --name nodepool3 --cluster-name myAKSCluster --resource-group myResourceGroup

다음 단계