AKS(Azure Kubernetes Service) 클러스터 중지 및 시작
AKS(Azure Kubernetes Service) 워크로드를 지속적으로 실행할 필요는 없습니다. 예를 들어 업무 시간 중에만 사용하는 개발 클러스터가 있을 수 있습니다. 이로 인해 클러스터가 유휴 상태가 되어 시스템 구성 요소만 실행되는 경우가 발생합니다. 모든 User
노드 풀을 0으로 확장하여 클러스터 공간을 줄일 수 있지만, 클러스터가 실행되는 동안에는 시스템 구성 요소를 실행 하는 데에도 System
풀이 필요 합니다.
이러한 기간 동안 비용을 좀 더 최적화하려면 클러스터를 해제 또는 중지할 수 있습니다. 이 작업은 컨트롤 플레인과 에이전트 노드를 중지하여 독립형 Pod를 제외한 모든 개체를 유지 관리하면서 모든 컴퓨팅 비용을 절감할 수 있습니다. 클러스터 상태는 다시 시작할 때 저장되므로 중단한 위치를 선택할 수 있습니다.
주의
클러스터를 중지하면 컨트롤 플레인의 할당이 취소되고 용량이 해제됩니다. 용량 제약 조건이 있는 지역에서는 고객이 중지된 클러스터를 시작하지 못할 수 있습니다. 이러한 이유로 중요 업무용 워크로드를 중지하지 않는 것이 좋습니다.
시작하기 전에
이 문서에서는 기존 AKS 클러스터가 있다고 가정합니다. AKS 클러스터가 필요한 경우 Azure CLI, Azure PowerShell 또는 Azure Portal을 사용하여 만들 수 있습니다.
클러스터 중지/시작 기능 정보
클러스터 시작/중지 기능을 사용하는 경우 다음 조건이 적용됩니다.
- 이 기능은 Virtual Machine Scale Set 지원 클러스터에서만 지원됩니다.
- NAP(노드 자동 프로비전) 기능을 사용하는 클러스터는 중지할 수 없습니다.
- 중지된 AKS 클러스터의 클러스터 상태는 최대 12개월 동안 보존됩니다. 클러스터가 12개월 이상 중지되면 클러스터 상태를 복구할 수 없습니다. 자세한 내용은 AKS 지원 정책을 참조하세요.
- 중지된 AKS 클러스터에서는 시작 또는 삭제 작업만 수행할 수 있습니다. 스케일링 또는 업그레이드 등의 다른 작업을 수행하려면 먼저 클러스터를 시작해야 합니다.
- 프라이빗 클러스터에 연결된 고객이 PrivateEndpoints는 프로비전한 경우 중지된 AKS 클러스터를 시작할 때 삭제하고 다시 만들어야 합니다.
- 중지 프로세스는 모든 노드, 독립 실행형 Pod(즉, Deployment, StatefulSet, DaemonSet, Job 등에 의해 관리되지 않는 Pod)를 드레이닝하기 때문에 삭제됩니다.
- 클러스터 백업을 시작할 때 예상되는 동작은 다음과 같습니다.
- API 서버의 IP 주소는 변경될 수 있습니다.
- 클러스터 자동 스케일러를 사용하는 경우 클러스터를 시작할 때 현재 노드 수가 설정한 최소 및 최대 범위 값 사이에 없을 수 있습니다. 클러스터는 워크로드를 실행하는 데 필요한 노드 수로 시작하며, 자동 크기 조정기 설정의 영향을 받지 않습니다. 클러스터가 조정 작업을 수행할 때 최소값 및 최대값은 현재 노드 수에 영향을 주며, 클러스터는 클러스터를 중지할 때까지 원하는 범위에 진입하여 유지됩니다.
AKS 클러스터 중지
az aks stop
명령을 사용하여 노드 및 컨트롤 플레인을 포함하여 실행 중인 AKS 클러스터를 중지합니다. 다음 예제에서는 myAKSCluster라는 클러스터를 중지합니다.az aks stop --name myAKSCluster --resource-group myResourceGroup
클러스터가
az aks show
명령을 사용하고powerState
에Stopped
이 표시되는지 확인했는지 확인합니다.az aks show --name myAKSCluster --resource-group myResourceGroup
출력은 다음과 같이 요약된 예제 출력과 비슷하게 됩니다.
{ [...] "nodeResourceGroup": "MC_myResourceGroup_myAKSCluster_westus2", "powerState":{ "code":"Stopped" }, "privateFqdn": null, "provisioningState": "Succeeded", "resourceGroup": "myResourceGroup", [...] }
provisioningState
가Stopping
을 표시하면 클러스터가 아직 완전히 중지되지 않은 것입니다.
Important
Pod 중단 예산을 사용하는 경우 드레이닝 프로세스를 완료 하는 데 시간이 더 오래 걸릴 수 있으므로 중지 작업에 시간이 더 오래 걸릴 수 있습니다.
AKS 클러스터 시작
주의
클러스터를 반복적으로 중지했다가 시작하지 마세요. 이로 인해 오류가 발생할 수 있습니다. 클러스터가 중지되면 다시 시작하기 전에 15~30분 이상 기다려야 합니다.
az aks start
명령을 사용하여 중지된 AKS 클러스터를 시작합니다. 클러스터가 이전 컨트롤 플레인 상태 및 에이전트 노드 수로 다시 시작됩니다. 다음 예제에서는 myAKSCluster라는 클러스터를 시작합니다.az aks start --name myAKSCluster --resource-group myResourceGroup
클러스터가
az aks show
명령을 사용하고powerState
에Running
이 표시되는지 확인했는지 확인합니다.az aks show --name myAKSCluster --resource-group myResourceGroup
출력은 다음과 같이 요약된 예제 출력과 비슷하게 됩니다.
{ [...] "nodeResourceGroup": "MC_myResourceGroup_myAKSCluster_westus2", "powerState":{ "code":"Running" }, "privateFqdn": null, "provisioningState": "Succeeded", "resourceGroup": "myResourceGroup", [...] }
provisioningState
가Starting
을 표시하면 클러스터가 아직 완전히 시작되지 않은 것입니다.
다음 단계
User
풀 크기를 0으로 조정 하는 방법에 대한 자세한 내용은User
풀 크기를 0으로 조정을 참조하세요.- 스폿 인스턴스를 사용하여 비용을 절감하는 방법을 알아보려면 AKS에 별색 노드 풀 추가를 참조하세요.
- AKS 지원 정책에 대해 자세히 알아보려면 AKS 지원 정책을 참조하세요.