컨테이너 인사이트를 사용하여 GPU 모니터링 구성
에이전트 버전 ciprod03022019부터 컨테이너 인사이트 통합 에이전트는 이제 GPU(그래픽 처리 장치) 인식 Kubernetes 클러스터 노드의 GPU 사용량에 대한 모니터링을 지원하며, GPU 리소스를 요청하고 사용하는 Pod 또는 컨테이너를 모니터링합니다.
참고 항목
Kubernetes 업스트림 공지에 따라 Kubernetes는 Kubernetes 버전 1.20+에 대해 kubelet에서 보고하는 GPU 메트릭을 더 이상 사용하지 않습니다. 따라서, 컨테이너 인사이트는 더 이상 다음 메트릭을 즉시 수집할 수 없습니다.
- containerGpuDutyCycle
- containerGpumemoryTotalBytes
- containerGpumemoryUsedBytes
컨테이너 인사이트를 통해 GPU 메트릭을 계속 수집하려면 2022년 12월 31일까지 GPU 공급업체별 메트릭 내보내기로 마이그레이션합니다. 배포된 공급업체별 내보내기에서 메트릭을 스크래핑하도록 Prometheus 스크래핑을 구성합니다.
지원되는 GPU 공급업체
컨테이너 인사이트는 다음 GPU 공급업체의 GPU 클러스터에 대한 모니터링을 지원합니다.
컨테이너 인사이트는 60초 간격으로 다음 메트릭을 수집하고 InsightMetrics 테이블에 저장하여 노드와 GPU 요청 Pod 및 워크로드의 GPU 사용량에 대한 모니터링을 자동으로 시작합니다.
참고 항목
GPU 노드를 사용하여 클러스터를 프로비전한 후 AKS(Azure Kubernetes Service)의 요구 사항에 따라 GPU 워크로드를 실행하는 데 필요한 GPU 드라이버가 설치되어 있는지 확인합니다. 컨테이너 인사이트는 노드에서 실행되는 GPU 드라이버 Pod를 통해 GPU 메트릭을 수집합니다.
메트릭 이름 | 메트릭 차원(태그) | 설명 |
---|---|---|
containerGpuDutyCycle* | container.azm.ms/clusterId, container.azm.ms/clusterName, containerName, gpuId, gpuModel, gpuVendor | 과거 샘플 기간(60초) 대비 GPU가 컨테이너를 위해 사용 중/적극적으로 처리 중인 시간의 백분율입니다. 업무 주기는 1에서 100 사이의 숫자입니다. |
containerGpuLimits | container.azm.ms/clusterId, container.azm.ms/clusterName, containerName | 각 컨테이너가 하나 이상의 GPU로 한도를 지정할 수 있습니다. GPU의 일부를 요청하거나 제한할 수는 없습니다. |
containerGpuRequests | container.azm.ms/clusterId, container.azm.ms/clusterName, containerName | 각 컨테이너가 하나 이상의 GPU를 요청할 수 있습니다. GPU의 일부를 요청하거나 제한할 수는 없습니다. |
containerGpumemoryTotalBytes* | container.azm.ms/clusterId, container.azm.ms/clusterName, containerName, gpuId, gpuModel, gpuVendor | 특정 컨테이너에 사용할 수 있는 GPU 메모리 크기(바이트)입니다. |
containerGpumemoryUsedBytes* | container.azm.ms/clusterId, container.azm.ms/clusterName, containerName, gpuId, gpuModel, gpuVendor | 특정 컨테이너에 사용 중인 GPU 메모리 크기(바이트)입니다. |
nodeGpuAllocatable | container.azm.ms/clusterId, container.azm.ms/clusterName, gpuVendor | Kubernetes에서 사용할 수 있는 한 노드의 GPU 수입니다. |
nodeGpuCapacity | container.azm.ms/clusterId, container.azm.ms/clusterName, gpuVendor | 한 노드에 있는 총 GPU 수입니다. |
* Kubernetes 업스트림 변경 내용에 따라 이러한 메트릭은 더 이상 즉시 수집되지 않습니다. 임시 핫픽스로, AKS의 경우 GPU 노드 풀을 최신 버전 또는 *-2022.06.08 이상으로 업그레이드합니다. Azure Arc 지원 Kubernetes의 경우 노드의 kubelet 구성에서 기능 게이트 DisableAcceleratorUsageMetrics=false
를 사용하도록 설정하고 kubelet을 다시 시작합니다. 업스트림 변경 내용이 일반 공급에 도달하면 이 픽스는 더 이상 작동하지 않습니다. 2022년 12월 31일까지 GPU 공급업체별 메트릭 내보내기를 사용하여 마이그레이션할 계획을 세웁니다.
GPU 성능 차트
컨테이너 인사이트에는 앞서 표에 나열된 메트릭에 대해 미리 구성된 차트가 각 클러스터의 GPU 통합 문서로 포함되어 있습니다. 컨테이너 인사이트에 사용할 수 있는 통합 문서에 대한 설명은 컨테이너 인사이트의 통합 문서를 참조하세요.
다음 단계
- GPU 지원 노드가 포함된 AKS 클러스터를 배포하는 방법에 대한 자세한 내용은 Azure Kubernetes Service에서 컴퓨팅 집약적인 워크로드에 GPU 사용을 참조하세요.
- Azure의 GPU 최적화 VM SKU에 대해 자세히 알아보세요.
- 클러스터에 있는 하나 이상의 노드에서 GPU를 관리하기 위한 Kubernetes 실험적 지원에 대한 자세한 내용은 Kubernetes의 GPU 지원을 참조하세요.
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기