Anpassen der Trident Operator-Installation
Mit dem Operator Trident können Sie die Astra Trident-Installation mithilfe der Attribute in der Spezifikation anpassen TridentOrchestrator
. Wenn Sie die Installation über die Argumente hinaus anpassen möchten TridentOrchestrator
, sollten Sie die Verwendung verwenden, tridentctl
um benutzerdefinierte YAML-Manifeste zu erstellen, die bei Bedarf geändert werden.
Allgemeines zu Controller-Pods und Node-Pods
Astra Trident wird als einzelner Controller-Pod ausgeführt sowie als Node-Pod auf jedem Worker-Node im Cluster. Der Node Pod muss auf jedem Host ausgeführt werden, auf dem Sie ein Astra Trident Volume mounten möchten.
Kubernetes "Knotenauswahl" und "Toleranzen und Verfleckungen"schränken die Ausführung eines Pods auf einem bestimmten oder bevorzugten Node ein. Mit dem`ControllerPlugin` und können Sie Bedingungen und NodePlugin
Überschreibungen festlegen.
-
Das Controller-Plug-in übernimmt Volume-Bereitstellung und -Management, beispielsweise Snapshots und Größenanpassungen.
-
Das Node-Plug-in verarbeitet das Verbinden des Speichers mit dem Node.
Konfigurationsoptionen
spec.namespace Wird in angegeben TridentOrchestrator , um den Namespace zu kennzeichnen, in dem Astra Trident installiert ist. Dieser Parameter kann nicht aktualisiert werden, nachdem Astra Trident installiert wurde. Der Versuch, dies zu tun, führt dazu, dass der TridentOrchestrator Status in geändert Failed wird. Astra Trident ist nicht für die Migration auf Namespaces vorgesehen.
|
In dieser Tabelle sind die TridentOrchestrator
Attribute aufgeführt.
Parameter | Beschreibung | Standard |
---|---|---|
|
Namespace für die Installation von Astra Trident in |
|
|
Aktivieren Sie das Debugging für Astra Trident |
|
|
|
|
|
Die Einstellung auf |
|
|
Einstellung auf |
|
|
Bei Verwendung der Cloud-Identität auf einem AKS-Cluster auf Workload-Identität („Azure.Workload.Identity/Client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx“) einstellen. Bei Verwendung der Cloud-Identität auf einem EKS-Cluster auf AWS iam Role (“'eks.amazonaws.com/role-arn: arn:aws:IAM::123456:Role/astrarident-Role“) einstellen. |
|
|
Installieren Sie Astra Trident über IPv6 |
Falsch |
|
Zeitüberschreitung für Kubernetes-Betrieb |
|
|
Schicken Sie AutoSupport Bundles nicht automatisch an NetApp |
|
|
Das Container-Image für AutoSupport Telemetrie |
|
|
Die Adresse/der Port eines Proxys zum Senden von AutoSupport Telemetrie |
|
|
Eine Flagge, die zum Deinstallieren von Astra Trident verwendet wird |
|
|
Astra Trident Protokollformat zur Verwendung [Text, json] |
|
|
Astra Trident-Image zu installieren |
|
|
Pfad zur internen Registrierung des Formats |
|
|
Pfad zum kubelet-Verzeichnis auf dem Host |
|
|
Eine Liste mit zu löschenden Ressourcen, um Astra Trident vollständig zu entfernen |
|
|
Secrets, um Bilder aus einer internen Registrierung zu ziehen |
|
|
Legt die BildPull-Richtlinie für den Trident-Operator fest. Gültige Werte sind: |
|
|
Zusätzliche Node-Auswahl für Pods Entspricht dem gleichen Format wie |
Kein Standard; optional |
|
Überschreibt Kubernetes-Toleranzen für Pods. Entspricht dem gleichen Format wie |
Kein Standard; optional |
|
Zusätzliche Node-Auswahl für Pods Entspricht dem gleichen Format wie |
Kein Standard; optional |
|
Überschreibt Kubernetes-Toleranzen für Pods. Entspricht dem gleichen Format wie |
Kein Standard; optional |
Weitere Informationen zum Formatieren von Pod-Parametern finden Sie unter "Pods werden Nodes zugewiesen". |
Details zum Ablösen von Krafteinwirkung
Trennung erzwingen ist nur für und ontap-san-economy
verfügbar ontap-san
. Vor der Aktivierung von Force Trennen muss das nicht-anmutige Herunterfahren des Node (NGNS) auf dem Kubernetes-Cluster aktiviert sein. Weitere Informationen finden Sie unter "Kubernetes: Nicht ordnungsgemäßes Herunterfahren von Nodes".
Da Astra Trident auf Kubernetes NGNS setzt, sollten Sie Fehler erst dann von einem unzulässigen Node entfernen out-of-service , wenn alle nicht tolerierbaren Workloads neu geplant werden. Das rücksichtslose Anwenden oder Entfernen der Schein kann den Schutz der Back-End-Daten gefährden.
|
Wenn der Kubernetes Cluster Administrator den Farbton auf den Node angewendet und enableForceDetach
auf festgelegt true
hat node.kubernetes.io/out-of-service=nodeshutdown:NoExecute
, bestimmt Astra Trident den Node-Status und:
-
Beenden Sie den Back-End-I/O-Zugriff für Volumes, die auf diesem Node gemountet sind.
-
Markieren Sie das Objekt des Astra Trident-Knotens als
dirty
(nicht sicher für neue Publikationen).Der Trident-Controller lehnt neue Anforderungen für veröffentlichte Volumes ab, bis der Node vom Trident-Node-Pod neu qualifiziert wird (nachdem er als markiert wurde dirty
). Alle Workloads, die mit einer gemounteten PVC geplant sind (selbst nachdem der Cluster-Node funktionsfähig und bereit ist), werden erst akzeptiert, wenn Astra Trident den Node überprüfen kannclean
(sicher für neue Publikationen).
Wenn der Zustand der Nodes wiederhergestellt und die Wartung entfernt wird, übernimmt Astra Trident folgende Aufgaben:
-
Veraltete veröffentlichte Pfade auf dem Node identifizieren und bereinigen.
-
Wenn der Node sich in einem Status befindet
cleanable
(die Servicestaint wurde entfernt, und der Node befindet sich imReady
Status) und alle veralteten, veröffentlichten Pfade bereinigt sind, übermittelt Astra Trident den Node erneut alsclean
und ermöglicht neue veröffentlichte Volumes auf dem Node.
Beispielkonfigurationen
Sie können die Attribute in verwendenKonfigurationsoptionen, wenn Sie definieren TridentOrchestrator
, um Ihre Installation anzupassen.
Einfache benutzerdefinierte Konfiguration
Dies ist ein Beispiel für eine benutzerdefinierte Basisinstallation.
cat deploy/crds/tridentorchestrator_cr_imagepullsecrets.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident imagePullSecrets: - thisisasecret
Knotenauswahl
In diesem Beispiel wird Astra Trident mit Node-Selektoren installiert.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident controllerPluginNodeSelector: nodetype: master nodePluginNodeSelector: storage: netapp
Windows Worker-Knoten
Dieses Beispiel installiert Astra Trident auf einem Windows Worker Node.
cat deploy/crds/tridentorchestrator_cr.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident windows: true
Verwaltete Identitäten auf einem AKS-Cluster
In diesem Beispiel wird Astra Trident installiert, um gemanagte Identitäten auf einem AKS-Cluster zu aktivieren.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure"
Cloud-Identität auf einem AKS-Cluster
In diesem Beispiel wird Astra Trident zur Verwendung mit einer Cloud-Identität auf einem AKS-Cluster installiert.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "Azure" cloudIdentity: 'azure.workload.identity/client-id: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx'
Cloud-Identität auf einem EKS-Cluster
In diesem Beispiel wird Astra Trident zur Verwendung mit einer Cloud-Identität auf einem AKS-Cluster installiert.
apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident cloudProvider: "AWS" cloudIdentity: "'eks.amazonaws.com/role-arn: arn:aws:iam::123456:role/astratrident-role'"