AKS(Azure Kubernetes Service)에서 GPU 워크로드를 실행하는 경우 원격 분석을 위해 GPU 드라이버, Kubernetes 디바이스 플러그 인 및 GPU 메트릭 내보내기를 비롯한 여러 소프트웨어 구성 요소를 설치하고 유지 관리해야 합니다. 이러한 구성 요소는 GPU 예약, 컨테이너 수준 GPU 액세스, 리소스 사용의 관찰 가능성 및 AKS GPU 사용 노드의 적절한 작동을 사용하도록 설정하는 데 필수적입니다. 이전에는 클러스터 운영자가 이러한 구성 요소를 수동으로 설치하거나 NVIDIA GPU 연산자와 같은 오픈 소스 대안을 사용해야 했기 때문에 복잡성과 운영 오버헤드가 발생할 수 있습니다.
AKS는 이제 완전 관리형 GPU 노드(미리 보기)를 지원하고 기본적으로 NVIDIA GPU 드라이버, 디바이스 플러그 인 및 DCGM(Data Center GPU Manager ) 메트릭 내보내기를 설치합니다 . 이 기능을 사용하면 1단계 GPU 노드 풀을 만들 수 있으며 AKS에서 GPU 리소스를 범용 CPU 노드처럼 간단하게 사용할 수 있습니다.
이 문서에서는 NVIDIA GPU 드라이버, 디바이스 플러그 인 및 메트릭 내보내기의 기본 설치를 포함하여 AKS 클러스터에서 완전히 관리되는 GPU 노드 풀(미리 보기)을 프로비전하는 방법을 알아봅니다.
중요합니다
AKS 미리 보기 기능은 셀프 서비스에서 사용할 수 있습니다(옵트인 방식). 미리 보기는 "있는 그대로" 및 "사용 가능한 상태로" 제공되며 서비스 수준 계약 및 제한적 보증에서 제외됩니다. AKS 미리 보기의 일부는 고객 지원팀에서 최선을 다해 지원합니다. 따라서 이러한 기능은 프로덕션 용도로 사용할 수 없습니다. 자세한 내용은 다음 지원 문서를 참조하세요.
시작하기 전 주의 사항:
- 이 문서에서는 기존 AKS 클러스터가 있다고 가정합니다. 클러스터가 없으면 Azure CLI, Azure PowerShell 또는 Azure Portal을 사용하여 클러스터를 만듭니다.
- Azure CLI 버전 2.72.2 이상이 설치되어 있어야 합니다. 버전을 확인하려면
az --version을 실행합니다. 설치 또는 업그레이드해야 하는 경우 Azure CLI 설치를 참조하세요. -
최신 버전의
aks-preview확장을 설치하고 업그레이드해야 합니다. -
구독에 기능 플래그를
ManagedGPUExperiencePreview등록해야 합니다.
제한점
- 이 기능은 현재 NVIDIA GPU 지원 VM(가상 머신) 크기 만 지원합니다.
- GPU VM 크기를 추가하도록 범용 노드 풀을 업데이트하는 것은 AKS에서 지원되지 않습니다.
- GPU 메트릭은 지원되지 않으므로 Windows 노드 풀은 이 기능에서 지원되지 않습니다. Windows GPU 노드 풀을 만들 때 AKS는 드라이버 및 Directx 디바이스 플러그 인을 자동으로 설치하고 관리합니다. 자세한 내용은 AKS Windows GPU 설명서를 참조하세요.
- 이 기능을 사용하도록 기존 다중 인스턴스 GPU 노드 풀을 마이그레이션하는 것은 지원되지 않습니다.
- 기존 GPU 사용 노드에서 이 기능을 사용하기 위한 현재 위치 업그레이드는 지원되지 않습니다.
aks-preview CLI 확장 설치
aks-preview명령을 사용하여az extension addCLI 확장을 설치합니다.az extension add --name aks-previewaz extension update명령을 사용하여 최신 버전이 설치되어 있는지 확인하려면 확장을 업데이트합니다.az extension update --name aks-preview
구독에 ManagedGPUExperiencePreview 기능 플래그를 등록합니다.
ManagedGPUExperiencePreview명령을 사용하여 구독에az feature register기능 플래그를 등록합니다.az feature register --namespace Microsoft.ContainerService --name ManagedGPUExperiencePreview
클러스터의 자격 증명 가져오기
az aks get-credentials명령을 사용하여 AKS 클러스터의 자격 증명을 가져옵니다.az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
AKS 관리 GPU 노드 풀 만들기(미리 보기)
OS SKU 및 --tags EnableManagedGPUExperience=true 명령을 지정하여 완전히 관리되는 GPU 노드 풀(미리 보기)을 기존 AKS 클러스터에 추가할 수 있습니다. 이렇게 하면 AKS는 GPU 드라이버, GPU 디바이스 플러그 인 및 메트릭 내보내기를 자동으로 설치합니다.
기본 OS(운영 체제) SKU를 사용하려면 OS SKU를 지정하지 않고 노드 풀을 만듭니다. 노드 풀은 클러스터의 Kubernetes 버전을 기반으로 기본 운영 체제로 설정됩니다.
명령
az aks nodepool add와--tags EnableManagedGPUExperience=true를 사용하여 클러스터에 노드 풀을 추가합니다.az aks nodepool add \ --resource‐group MyResourceGroup \ --cluster‐name MyAKSCluster \ --name gpunp \ --node‐count 1 \ --node‐vm‐size Standard_NC6s_v3 \ --node‐taints sku=gpu:NoSchedule \ --enable‐cluster‐autoscaler \ --min‐count 1 \ --max‐count 3 \ --tags EnableManagedGPUExperience=true관리되는 NVIDIA GPU 소프트웨어 구성 요소가 성공적으로 설치되었는지 확인합니다.
az aks nodepool show \ --resource-group myResourceGroup \ --cluster-name myAKSCluster \ --name gpunp \출력에는 다음 값이 포함되어야 합니다.
... ... "gpuInstanceProfile": … "gpuProfile": { "driver": "Install" }, ... ...
기존 GPU 워크로드를 AKS 관리 GPU 노드 풀로 마이그레이션
표준 NVIDIA GPU 노드 풀에서 AKS 클러스터의 완전 관리형 NVIDIA GPU 노드 풀(미리 보기)로의 현재 위치 업그레이드는 지원되지 않습니다. 기존 GPU 노드를 조정 및 드레이닝한 다음, 이 기능을 사용하도록 설정된 새 GPU 지원 노드 풀에 워크로드를 다시 배포하는 것이 좋습니다. 자세한 내용은 AKS의 노드 풀 크기 조정 을 참조하세요.
BYO(Bring Your Own) GPU 드라이버
NVIDIA 드라이버의 설치를 제어하거나 NVIDIA GPU 연산자를 사용하려는 경우 노드 풀을 만드는 동안 GPU 드라이버 설치를 무시할 수 있습니다. 이 경우 Microsoft는 노드 이미지 배포의 일부로 NVIDIA 드라이버의 유지 관리 및 호환성을 지원하거나 관리하지 않습니다 . 자세한 내용은 AKS에서 NVIDIA GPU 사용 노드에 대한 GPU 드라이버 설치 건너뛰 기를 참조하세요.
다음 단계
- AKS 관리 GPU 사용 노드에 샘플 GPU 워크로드 를 배포합니다.
- GPU 노드 풀의 관리되는 NVIDIA DCGM 익스포터에서 GPU 사용률 및 성능 메트릭에 대해 알아봅니다.
관련 문서
- AKS에서 NPD(Node Problem Detector)를 사용한 GPU 상태 모니터링 에 대해 알아봅니다.
- 여러 AKS GPU 노드에서 분산 유추를 실행합니다.