NVIDIA-GPU-Plug-in

Wenn Sie das NVIDIA GPU Plugin Cluster-Add-on aktivieren, können Sie die folgenden Schlüssel/Wert-Paare als Argumente übergeben.

Um sicherzustellen, dass Workloads, die auf NVIDIA-GPU-Worker-Knoten ausgeführt werden, nicht unerwartet unterbrochen werden, empfehlen wir Ihnen, die Version des NVIDIA-GPU-Plug-in-Add-ons für das Deployment auszuwählen, anstatt anzugeben, dass Oracle das Add-on automatisch aktualisieren soll.

Konfigurationsargumente, die allen Cluster-Add-ons gemeinsam sind
Schlüssel (API und CLI) Anzeigename des Schlüssels (Konsole) Beschreibung Erforderlich/Optional Standardwert Beispielwert
affinity Affinität

Eine Gruppe von Affinitätsplanungsregeln.

JSON-Format im Klartext oder Base64-codiert.

Optional Null Null
nodeSelectors Knotenselektoren

Mit Knotenselektoren und Knotenlabels können Sie die Worker-Knoten steuern, auf denen Add-on-Pods ausgeführt werden.

Damit ein Pod auf einem Knoten ausgeführt werden kann, muss der Knotenselektor des Pods denselben Schlüssel/Wert wie das Label des Knotens aufweisen.

Setzen Sie nodeSelectors auf ein Schlüssel/Wert-Paar, das sowohl dem Knotenselektor des Pods als auch dem Label des Worker-Knotens entspricht.

JSON-Format im Klartext oder Base64-codiert.

Optional Null {"foo":"bar", "foo2": "bar2"}

Der Pod wird nur auf Knoten ausgeführt, die das Label foo=bar oder foo2=bar2 aufweisen.

numOfReplicas numOfReplicas Die Anzahl der Replikate der Add-on-Bereitstellung.

(Verwenden Sie für CoreDNS stattdessen nodesPerReplica.)

Erforderlich 1

Erstellt ein Replikat des Add-on-Deployments pro Cluster.

2

Erstellt zwei Replikate des Add-on-Deployments pro Cluster.

rollingUpdate rollingUpdate

Steuert das gewünschte Verhalten der rollierenden Aktualisierung durch maxSurge und maxUnavailable.

JSON-Format im Klartext oder Base64-codiert.

Optional Null Null
tolerations Toleranzen

Mit Taints und Toleranzen können Sie die Worker-Knoten steuern, auf denen Add-on-Pods ausgeführt werden.

Damit ein Pod auf einem Knoten mit einem Taint ausgeführt werden kann, muss der Pod eine entsprechende Toleranz aufweisen.

Setzen Sie tolerations auf ein Schlüssel/Wert-Paar, das sowohl der Podtoleranz als auch dem Taint des Worker-Knotens entspricht.

JSON-Format im Klartext oder Base64-codiert.

Optional Null [{"key":"tolerationKeyFoo", "value":"tolerationValBar", "effect":"noSchedule", "operator":"exists"}]

Nur Pods mit dieser Toleranz können auf Worker-Knoten ausgeführt werden, die den Taint tolerationKeyFoo=tolerationValBar:noSchedule aufweisen.

topologySpreadConstraints topologySpreadConstraints

So verteilen Sie passende Pods auf die angegebene Topologie.

JSON-Format im Klartext oder Base64-codiert.

Optional Null Null
Für dieses Cluster-Add-on spezifische Konfigurationsargumente
Schlüssel (API und CLI) Anzeigename des Schlüssels (Konsole) Beschreibung Erforderlich/Optional Standardwert Beispielwert
deviceIdStrategy Strategie für Gerätekennung

Welche Strategie zum Übergeben von Geräte-IDs an die zugrunde liegende Laufzeit verwendet werden soll.

Einer der folgenden Werte:

  • uuid
  • index
Optional uuid
deviceListStrategy Gerätelistenstrategie

Welche Strategie zum Übergeben der Geräteliste an die zugrunde liegende Laufzeit verwendet werden soll.

Unterstützte Werte:

  • envvar
  • volume-mounts
  • cdi-annotations
  • cdi-cri

In einer kommagetrennten Liste werden mehrere Werte unterstützt.

Optional envvar
driverRoot Treiber-Root Der Root-Pfad für die NVIDIA-Treiberinstallation. Optional /
failOnInitError FailOnInitError

Gibt an, ob das Plug-in nicht erfolgreich ausgeführt werden kann, wenn während der Initialisierung ein Fehler auftritt.

Wenn dieser Wert auf false gesetzt ist, wird das Plug-in unbegrenzt blockiert, anstatt nicht erfolgreich zu sein.

Optional true
migStrategy MIG-Strategie

Welche Strategie zum Bereitstellen von MIG-(Multi-Instance-GPU-)Geräten auf GPUs verwendet werden soll, die sie unterstützen.

Einer der folgenden Werte:

  • none
  • single
  • mixed
Optional none
nvidia-gpu-device-plugin.ContainerResources nvidia-gpu-device-plugin-Containerressourcen

Sie können die Ressourcenmengen angeben, die von den Add-on-Containern angefordert werden, und Grenzwerte für die Ressourcennutzung festlegen, die von den Add-on-Containern nicht überschritten werden dürfen.

JSON-Format im Klartext oder Base64-codiert.

Optional Null {"limits": {"cpu": "500m", "memory": "200Mi" }, "requests": {"cpu": "100m", "memory": "100Mi"}}

Erstellen Sie Add-on-Container, die 100 Millicores CPU und 100 Mebibyte Speicher anfordern. Begrenzen Sie Add-on-Container auf 500 Millicores CPU und 200 Mebibyte Arbeitsspeicher.

passDeviceSpecs Gerätespezifikationen übergeben Gibt an, ob die Pfade und die gewünschten Geräteknotenberechtigungen für NVIDIA-Geräte übergeben werden sollen, die dem Container zugewiesen werden. Optional false
useConfigFile Konfigurationsdatei aus ConfigMap verwenden

Gibt an, ob das Nvidia-Geräte-Plug-in für Kubernetes mit einer Konfigurationsdatei konfiguriert werden soll. Die Konfigurationsdatei wird von einem ConfigMap abgeleitet.

Wenn dieser Wert auf true gesetzt ist, müssen Sie eine ConfigMap im Cluster erstellen, die ConfigMap nvidia-device-plugin-config benennen und Werte für Konfigurationsargumente angeben. Siehe Beispiel.

Die ConfigMap wird vom Daemonset nvidia-gpu-device-plugin referenziert.

Optional false

Beispiel für nvidia-device-plugin-config ConfigMap:

apiVersion: v1
kind: ConfigMap
metadata: 
  name: nvidia-device-plugin-config 
  namespace: kube-system
data:
  config.yaml: |
    version: v1
    flags:
      migStrategy: "none"
      failOnInitError: true
      nvidiaDriverRoot: "/"
      plugin:
        passDeviceSpecs: false
        deviceListStrategy: envvar
        deviceIDStrategy: uuid