Skip to main content
Eine neuere Version dieses Produkts ist erhältlich.
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Implementierungsübersicht

Beitragende

Sie können Astra Trident über den Trident-Operator oder mit implementieren tridentctl.

Wählen Sie die Bereitstellungsmethode

Um zu ermitteln, welche Bereitstellungsmethode verwendet werden soll, sollten Sie Folgendes berücksichtigen:

Warum sollte ich den Trident Operator verwenden?

Der "Betreiber von Trident" Bietet eine hervorragende Möglichkeit, Astra Trident Ressourcen dynamisch zu managen und die Einrichtungsphase zu automatisieren. Es gibt einige Voraussetzungen, die erfüllt werden müssen. Siehe "Den Anforderungen gerecht zu werden".

Der Trident Operator hat mehrere Vorteile wie unten beschrieben.

Funktionen zur Selbstreparatur

Sie können eine Astra Trident-Installation überwachen und aktiv Maßnahmen ergreifen, um Probleme wie das Löschen der Implementierung oder das versehentliche Ändern der Implementierung zu beheben. Wenn der Bediener als Bereitstellung eingerichtet ist, wird ein trident-operator-<generated-id> Pod wird erstellt. Dieser Pod ordnet A zu TridentOrchestrator CR mit einer Astra Trident Installation und sorgt stets dafür, dass nur eine aktiv ist TridentOrchestrator. Mit anderen Worten, der Operator stellt sicher, dass es nur eine Instanz von Astra Trident im Cluster gibt und steuert seine Einrichtung, um sicherzustellen, dass die Installation ist idempotent. Wenn Änderungen an der Installation vorgenommen werden (z. B. Löschen der Bereitstellung oder Knotendemonsatz), identifiziert der Bediener diese und korrigiert sie einzeln.

Einfache Updates vorhandener Installationen

Sie können eine vorhandene Implementierung einfach mit dem Bediener aktualisieren. Sie müssen nur die bearbeiten TridentOrchestrator CR, um Aktualisierungen für eine Installation durchzuführen. Betrachten Sie zum Beispiel ein Szenario, bei dem Sie Astra Trident aktivieren müssen, um Debug-Protokolle zu generieren.

Um dies zu tun, patchen Sie Ihre TridentOrchestrator Einstellen spec.debug Bis true:

kubectl patch torc <trident-orchestrator-name> -n trident --type=merge -p '{"spec":{"debug":true}}'

Nachher TridentOrchestrator Wird aktualisiert, verarbeitet der Bediener die Updates und Patches für die vorhandene Installation. Dies kann dazu führen, dass neue Pods erstellt werden, um die Installation entsprechend zu ändern.

Automatische Verarbeitung von Kubernetes-Upgrades

Wenn die Kubernetes-Version des Clusters auf eine unterstützte Version aktualisiert wird, aktualisiert der Operator automatisch eine bestehende Astra Trident-Installation und ändert sie, um sicherzustellen, dass sie die Anforderungen der Kubernetes-Version erfüllt.

Hinweis Wenn das Cluster auf eine nicht unterstützte Version aktualisiert wird, verhindert der Operator die Installation von Astra Trident. Falls Astra Trident bereits mit dem Operator installiert wurde, wird eine Warnmeldung angezeigt, die angibt, dass Astra Trident auf einer nicht unterstützten Kubernetes-Version installiert ist.

Warum sollte ich Helm verwenden?

Wenn Sie andere Applikationen, die Sie mit Helm managen, ab Astra Trident 21.01 können Sie Ihre Implementierung auch mit Helm managen.

Wann sollte ich verwenden tridenctl?

Wenn Sie eine vorhandene Implementierung haben, die aktualisiert werden muss, oder wenn Sie Ihre Implementierung stark anpassen möchten, sollten Sie sich unbedingt die Lösung verwenden "Tridentctl". Dies ist die herkömmliche Methode der Implementierung von Astra Trident.

Überlegungen beim Wechsel zwischen Implementierungsmethoden

Es ist nicht schwer, sich ein Szenario vorzustellen, in dem ein Wechsel zwischen Implementierungsmethoden gewünscht wird. Sie sollten Folgendes berücksichtigen, bevor Sie versuchen, von A zu wechseln tridentctl Implementierung in eine Operator-basierte Implementierung oder umgekehrt:

  • Verwenden Sie immer die gleiche Methode, um Astra Trident zu deinstallieren. Wenn Sie mit bereitgestellt haben tridentctl, Sie sollten die entsprechende Version des verwenden tridentctl Binary zur Deinstallation von Astra Trident. Ebenso sollten Sie bei der Bereitstellung mit dem Operator die bearbeiten TridentOrchestrator CR und Set spec.uninstall=true Um Astra Trident zu deinstallieren.

  • Wenn Sie über eine bedienerbasierte Bereitstellung verfügen, die Sie entfernen und verwenden möchten tridentctl Bei der Implementierung von Astra Trident sollten Sie zuerst bearbeiten TridentOrchestrator Und gesetzt spec.uninstall=true Um Astra Trident zu deinstallieren. Löschen Sie dann TridentOrchestrator Und die Bedienerbereitstellung. Sie können dann mit installieren tridentctl.

  • Wenn Sie über eine manuelle, bedienerbasierte Implementierung verfügen und die Helm-basierte Trident Operator-Implementierung verwenden möchten, sollten Sie zuerst den Operator manuell deinstallieren und dann die Helm-Installation durchführen. So kann Helm den Trident-Operator mit den erforderlichen Beschriftungen und Anmerkungen implementieren. Wenn dies nicht der Fall ist, schlägt die Bereitstellung des Helm-basierten Trident-Operators mit einem Fehler bei der Labelvalidierung und einem Validierungsfehler bei der Annotation fehl. Wenn Sie eine haben tridentctl-Basierte Bereitstellung, können Sie Helm-basierte Implementierung nutzen, ohne Probleme zu verursachen.

Analysieren Sie die Bereitstellungsmodi

Es gibt drei Möglichkeiten für die Implementierung von Astra Trident:

Standardimplementierung

Die Implementierung von Trident auf einem Kubernetes Cluster führt zum Astra Trident Installer auf zwei Dinge:

  • Abrufen der Container-Images über das Internet

  • Erstellung einer Implementierung und/oder Node-Demonset, bei der Astra Trident Pods auf allen teilnahmeberechtigten Nodes im Kubernetes-Cluster gespinnt werden.

Eine solche Standardimplementierung kann auf zwei verschiedene Arten ausgeführt werden:

  • Wird Verwendet tridentctl install

  • Verwenden des Betreibers von Trident. Trident-Operator kann entweder manuell oder mit Helm implementiert werden.

Dieser Installationsmodus ist die einfachste Möglichkeit, Astra Trident zu installieren und funktioniert für die meisten Umgebungen, die keine Netzwerkeinschränkungen auferlegen.

Offline-Bereitstellung

Um eine luftvergoppte Installation durchzuführen, können Sie den verwenden --image-registry Markierung beim Aufrufen tridentctl install Auf eine private Bildregistrierung verweisen. Bei der Implementierung mit dem Trident-Operator können Sie alternativ angeben spec.imageRegistry In Ihren TridentOrchestrator. Diese Registrierung sollte den enthalten "Bild: Trident", Das "Bild: Trident AutoSupport", Und die CSI-Sidecar-Bilder, wie von Ihrer Kubernetes-Version erforderlich.

Verwenden Sie zum Anpassen Ihrer Implementierung die Möglichkeit tridentctl Generierung der Manifeste für Trident Ressourcen: Dies umfasst die Implementierung, das Demonet, das Servicekonto und die Cluster-Rolle, die Astra Trident im Rahmen der Installation erstellt.

Weitere Informationen zum Anpassen Ihrer Bereitstellung finden Sie unter diesen Links:

Wichtig Wenn Sie ein privates Image Repository verwenden, sollten Sie hinzufügen /k8scsi Für Kubernetes-Versionen vor 1.17 oder /sig-storage Für Kubernetes-Versionen ab 1.17 bis zum Ende der privaten Registrierungs-URL. Wenn Sie eine private Registrierung für verwenden tridentctl Implementierung, sollten Sie verwenden --trident-image Und --autosupport-image Zusammen mit --image-registry. Wenn Sie Astra Trident mithilfe des Trident-Operators implementieren, stellen Sie sicher, dass der Orchestrator CR enthält tridentImage Und autosupportImage In den Installationsparametern.

Remote-Implementierung

Im Folgenden finden Sie einen allgemeinen Überblick über den Remote-Implementierungsprozess:

  • Stellen Sie die entsprechende Version von bereit kubectl Auf dem Remote-Rechner, von wo aus Sie Astra Trident implementieren möchten.

  • Kopieren Sie die Konfigurationsdateien aus dem Kubernetes-Cluster und legen Sie die fest KUBECONFIG Umgebungsvariable auf dem Remotecomputer.

  • Initiieren Sie A kubectl get nodes Befehl zum Überprüfen, ob eine Verbindung mit dem erforderlichen Kubernetes-Cluster hergestellt werden kann.

  • Führen Sie die Implementierung von der Remote-Maschine aus, indem Sie die standardmäßigen Installationsschritte verwenden.