KubeVirt로 GPU VM 구축, GPU Passthrough 설정까지!

by DD
6개월 전
조회수 8

KubeVirt를 활용하여 쿠버네티스 환경에서 GPU VM을 관리하는 방법을 제시함

GPU Passthrough를 통해 VM이 물리적 GPU에 직접 접근하도록 설정함

vfio-pci 드라이버 설정 및 CPU 전용 할당을 통해 GPU 성능을 최적화함

GPU Passthrough 원리: vfio-pci 드라이버

vfio-pci 드라이버는 VM이 물리적 GPU에 직접 접근하도록 돕는 핵심 기술이다. 구체적으로, IOMMU를 활용하여 호스트의 GPU 자원을 VM에 안전하게 할당한다. 따라서, VM은 호스트의 간섭 없이 GPU 연산을 수행하며, 성능 저하를 최소화한다.

KubeVirt 설치 및 설정: 핵심 컴포넌트

KubeVirt 설치는 virt-handler, virt-controller, virt-launcher 등 여러 컴포넌트의 구성으로 이루어진다. CDI를 통해 VM 디스크 이미지를 관리하고, GPU Operator를 사용하여 GPU 자원을 자동 인식한다. 따라서, 쿠버네티스 환경에서 VM 관리 효율성을 높이고, GPU 자원 활용도를 극대화한다.

CPU Manager 설정: 성능 최적화

VM의 안정적인 GPU 성능을 위해 CPU Manager를 static 모드로 설정한다. 구체적으로, dedicatedCpuPlacement 옵션을 활성화하여 VM에 전용 CPU 코어를 할당한다. 따라서, CPU 스케줄링 충돌을 방지하고, GPU 연산 성능을 향상시킨다.

KubeVirt로 구현하는 GPU VM (1) - GPU Passthrough 및 Kubevirt 설치