GPU enabled K8s Cluster in vSphere mit Tanzu

Der Einsatz von GPUs in Container-Workloads ist eine wichtige Anforderung von Entwicklern, die mit Machine Learning und künstlicher Intelligenz arbeiten.

Sie können benutzerdefinierte VM-Klassen erstellen, in der ein VI-Administrator eine vGPU-Spezifikation für diese Klasse definiert. Entwickler können diese Klasse verwenden, um ihren Workloads GPU-Ressourcen zuzuweisen. Die VM-Klasse definiert z.B. die Knotenplatzierung und das vGPU-Profil.

Dies gilt nicht nur für GPU-fähige TKG-Cluster, sondern auch für VMs. Durch die Verwendung von benutzerdefinierten Klassen wird die Nutzung von GPU-Ressourcen in ML/AI-Anwendungen vereinfacht.

Unten ist beispielhaft eine VM Klasse dargestellt.

kind: TanzuKubernetesCluster
apiVersion: run.tanzu.vmware.com/v1
metadata:
  name: GPU-Cluster
spec:
  topology:
    workers:
      count: 3
      class: gpu-vmclass
  distribution: v1.20.2

Diese Klasse kann beispielsweise für die Bereitstellung einer VM genutzt werden.

kind: VirtualMachine
metadata:
  name: gpu-vm
  namespace: tkg-dev
spec:
  networkInterfaces:
  - networkName: "dev-network"
    networkType: vsphere-distributed
  classname: gpu-vmclass
  imageName: ubuntu-custom-gpu    
  storageClass: GPU-vm-policy

Dieser Beitrag war ursprünglich Teil meines Artikels über die Neuerungen in vSphere7 Update3. Auf Wunsch von VMware wurde der Inhalt bis zum 5. Oktober 2021 zurückgezogen und hiermit als eigener Artikel veröffentlicht.