Konfigurieren von GPU-fähigen Knoten

Kubernetes bietet Unterstützung für die Verwaltung von Grafikprozessoren (GPUs) auf verschiedenen Knoten in einem Cluster. Dazu werden Device-Plug-ins eingesetzt.

In ArcGIS Enterprise on Kubernetes können Sie ein Device-Plug-in implementieren, um GPU-fähige Knoten in einem Cluster zu aktivieren und so GIS-Workflows zu optimieren, z. B. für Raster-Analysen und Deep Learning. Standardmäßig sind Funktionalitäten wie die Raster-Analyse so konfiguriert, dass sie im CPU-Modus ausgeführt werden. Sie bieten aber auch die flexible Möglichkeit zur Ausführung im GPU-Modus, sofern diese Ressourcen verfügbar sind. Überlegen Sie, ob die Verwendung von GPU-fähigen Knoten für Ihre Workloads sinnvoll ist, da dieser Knotentyp in der Regel mit höheren Kosten verbunden ist.

Stellen Sie sicher, dass Sie über ausreichende GPU-Ressourcen für alle Ihre GPU-fähigen Workloads verfügen. Ein einzelner Pod für Raster-Analysen verbraucht beispielsweise 1 GPU. Um 10 Replikate dieser Pods zu unterstützen, benötigen Sie 10 GPUs, die über Ihre GPU-fähigen Knoten verfügbar sind.

Aktivieren der GPU

Führen Sie die folgenden Schritte aus, um die Verwendung der GPU für Workloads zu aktivieren:

  1. Vergewissern Sie sich, dass auf Ihrer Instanz das NVIDIA-Device-Plug-in für Kubernetes installiert ist.

    Das NVIDIA-Device-Plug-in für Kubernetes ist ein DaemonSet, worüber Sie die Anzahl der GPUs auf jedem Knoten eines Clusters anzeigen, GPU-fähige Container ausführen und den Zustand der GPUs verfolgen können. Viele Cloud-Umgebungen verfügen über vorkonfigurierte GPU-Knoten. Wenn das Device-Plug-in nicht installiert ist, finden Sie weitere Informationen und Installationsschritte in der Dokumentation zum NVIDIA-Device-Plug-in für Kubernetes. Bei einer lokalen Bereitstellung muss der Administrator auf jedem Knoten in einem Cluster die GPU aktivieren.

    Hinweis:

    Derzeit wird ArcGIS Enterprise on Kubernetes nur mit NVIDIA-GPUs unterstützt.

  2. Erstellen Sie optional eine benutzerdefinierte Beschriftung für die GPU-Knoten.

    Es wird empfohlen, GPU-Knoten zu beschriften, damit Workloads mithilfe von Pod-Platzierungsregeln für diese Knoten geplant werden können. Verwenden Sie den folgenden Befehl, um die einzelnen Knoten zu beschriften:

    kubectl label nodes <your-node-name> <your-key>=<your-value>
    

  3. Konfigurieren Sie die Services für die GPU-Verwendung.

    Wenn Sie die GPU für Notebook-Services aktivieren, finden Sie unter Anzeigen und Bearbeiten von Runtimes Informationen zum Festlegen von GPU-Einheiten pro Knoten. Informationen zur Aktivierung der GPU für Raster-Analysen finden Sie im Abschnitt Aktivieren von GPU-Ressourcen für Raster-Analysen.

  4. Verwenden Sie ggf. Taints, um sicherzustellen, dass nur Workloads, die eine GPU erfordern, für GPU-fähige Knoten geplant werden.

    Wenden Sie Toleranzen auf alle Workloads an, die auf GPU-fähigen Knoten ausgeführt werden sollen, bevor die Knoten mit Taints gekennzeichnet werden. Verwenden Sie den folgenden Befehl, um einen GPU-Knoten mit einem Taint zu kennzeichnen:

    kubectl taint nodes <your-node-name> nvidia.com/gpu=Exists:NoExecute
    


In diesem Thema
  1. Aktivieren der GPU