Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Upgrade mit dem Bediener

Beitragende

Sie können eine bestehende Astra Trident-Installation ganz einfach mithilfe des Betreibers aufrüsten.

Was Sie benötigen

Zur Aktualisierung mit Hilfe des Bedieners sollten die folgenden Bedingungen erfüllt sein:

  • Sie sollten über eine CSI-basierte Astra Trident-Installation verfügen. Überprüfen Sie Ihre Pods im Trident Namespace, ob Sie CSI Trident ausführen. Wenn sie dem folgen trident-csi-* Benennungsmuster wird CSI Trident ausgeführt.

  • Sie sollten über eine CRD-basierte Trident Installation verfügen. Dies entspricht allen Versionen von 19.07 und höher. Wenn Sie eine CSI-basierte Installation haben, verfügen Sie wahrscheinlich über eine CRD-basierte Installation.

  • Wenn Sie CSI Trident deinstalliert haben und die Metadaten aus der Installation beibehalten werden, können Sie mithilfe des Operators ein Upgrade durchführen.

  • Es sollte nur eine Astra Trident Installation über alle Namespaces in einem bestimmten Kubernetes Cluster hinweg vorhanden sein.

  • Sie sollten ein Kubernetes-Cluster verwenden, der ausgeführt wird "Version 1.19 -1.24".

  • Wenn Alpha-Snapshot-CRDs vorhanden sind, sollten Sie sie mit entfernen tridentctl obliviate alpha-snapshot-crd. Dadurch werden die CRDs für die Alpha-Snapshot-Spezifikation gelöscht. Informationen zu vorhandenen Snapshots, die gelöscht/migriert werden sollen, finden Sie unter "Diesem Blog".

Warnung Wenn Sie das Upgrade von Trident mithilfe des Betreibers für OpenShift Container Platform vornehmen, sollten Sie ein Upgrade auf Trident 21.01.1 oder höher durchführen. Der mit 21.01.0 veröffentlichte Trident-Operator enthält ein bekanntes Problem, das in 21.01.1 behoben wurde. Weitere Informationen finden Sie im "Details zur Ausgabe auf GitHub".

Upgrade einer Cluster-Scoped Operator-Installation

Für ein Upgrade von Trident 21.01 und höher, hier sind die Schritte zu folgen.

Schritte
  1. Löschen Sie den Trident-Operator, der zur Installation der aktuellen Astra Trident-Instanz verwendet wurde. Wenn Sie beispielsweise ein Upgrade von 21.01 durchführen, führen Sie den folgenden Befehl aus:

    kubectl delete -f 21.01/trident-installer/deploy/bundle.yaml -n trident
  2. (Optional) Wenn Sie die Installationsparameter ändern möchten, bearbeiten Sie das TridentOrchestrator Objekt, das Sie beim Installieren von Trident erstellt haben. Dies kann Änderungen umfassen, z. B. das Ändern des benutzerdefinierten Trident Images, die private Image-Registrierung zum Ziehen von Container-Images, das Aktivieren von Debug-Protokollen oder die Angabe von Pull-Secrets für Images.

  3. Installieren Sie Astra Trident mit dem bundle.yaml Datei, die den Trident-Operator für die neue Version eingerichtet hat. Führen Sie den folgenden Befehl aus:

    kubectl create -f 21.10.0/trident-installer/deploy/bundle.yaml -n trident

In diesem Schritt identifiziert der 21.10.0 Trident-Operator eine bestehende Astra Trident-Installation und aktualisiert sie auf die gleiche Version wie der Operator.

Aktualisieren einer Installation des Namespace-Scoped-Operators

Um von einer Instanz von Astra Trident zu aktualisieren, die mit dem Namespace-Scoped Operator (Versionen 20.07 bis 20.10) installiert wurde, gehen Sie wie folgt vor:

Schritte
  1. Überprüfen Sie den Status der vorhandenen Trident Installation. Prüfen Sie dazu den Status von TridentProvisioner. Der Status sollte sein Installed.

    kubectl describe tprov trident -n trident | grep Message: -A 3
    Message:  Trident installed
    Status:   Installed
    Version:  v20.10.1
    Anmerkung Wenn der Status angezeigt wird Updating, Stellen Sie sicher, dass Sie es lösen, bevor Sie fortfahren. Eine Liste möglicher Statuswerte finden Sie unter "Hier".
  2. Erstellen Sie die TridentOrchestrator CRD mit dem Manifest, das mit dem Trident-Installer bereitgestellt wurde.

    # Download the release required [21.01]
    mkdir 21.07.1
    cd 21.07.1
    wget https://github.com/NetApp/trident/releases/download/v21.07.1/trident-installer-21.07.1.tar.gz
    tar -xf trident-installer-21.07.1.tar.gz
    cd trident-installer
    kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
  3. Löschen Sie den Operator Namespace-Scoped mithilfe des Manifests. Um diesen Schritt abzuschließen, benötigen Sie die bundle.yaml Datei, die für die Bereitstellung des Operatoren für Namespace-Scoped verwendet wird. Sie erhalten können bundle.yaml Von "Trident Repository". Stellen Sie sicher, dass Sie den entsprechenden Zweig verwenden.

    Anmerkung Sie sollten die erforderlichen Änderungen an den Trident Installationsparametern vornehmen (z. B. Ändern der Werte für tridentImage, autosupportImage, Ein privates Image Repository von und das imagePullSecrets) Nach dem Löschen des Operator Namespace-scoped und vor der Installation des Operators Cluster-scoped. Eine vollständige Liste der Parameter, die aktualisiert werden können, finden Sie im "Liste der Parameter".
    #Ensure you are in the right directory
    pwd
    /root/20.10.1/trident-installer
    
    #Delete the namespace-scoped operator
    kubectl delete -f deploy/bundle.yaml
    serviceaccount "trident-operator" deleted
    clusterrole.rbac.authorization.k8s.io "trident-operator" deleted
    clusterrolebinding.rbac.authorization.k8s.io "trident-operator" deleted
    deployment.apps "trident-operator" deleted
    podsecuritypolicy.policy "tridentoperatorpods" deleted
    
    #Confirm the Trident operator was removed
    kubectl get all -n trident
    NAME                               READY   STATUS    RESTARTS   AGE
    pod/trident-csi-68d979fb85-dsrmn   6/6     Running   12         99d
    pod/trident-csi-8jfhf              2/2     Running   6          105d
    pod/trident-csi-jtnjz              2/2     Running   6          105d
    pod/trident-csi-lcxvh              2/2     Running   8          105d
    
    NAME                  TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
    service/trident-csi   ClusterIP   10.108.174.125   <none>        34571/TCP,9220/TCP   105d
    
    NAME                         DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                                     AGE
    daemonset.apps/trident-csi   3         3         3       3            3           kubernetes.io/arch=amd64,kubernetes.io/os=linux   105d
    
    NAME                          READY   UP-TO-DATE   AVAILABLE   AGE
    deployment.apps/trident-csi   1/1     1            1           105d
    
    NAME                                     DESIRED   CURRENT   READY   AGE
    replicaset.apps/trident-csi-68d979fb85   1         1         1       105d

    In dieser Phase, der trident-operator-xxxxxxxxxx-xxxxx Pod wurde gelöscht.

  4. (Optional) Wenn die Installationsparameter geändert werden müssen, aktualisieren Sie den TridentProvisioner Spez. Dies können Änderungen sein, wie z. B. das Ändern der privaten Image-Registry zum Ziehen von Container-Images, das Aktivieren von Debug-Protokollen oder das Festlegen von Image Pull Secrets.

    kubectl patch tprov <trident-provisioner-name> -n <trident-namespace> --type=merge -p '{"spec":{"debug":true}}'
  5. Installieren Sie den Operator Cluster-Scoped.

    Anmerkung Durch die Installation des Operators Cluster-Scoped wird die Migration von initiiert TridentProvisioner Objekte an TridentOrchestrator Objekte, löscht TridentProvisioner Objekte und das tridentprovisioner CRD, und aktualisiert Astra Trident auf die Version des verwendeten Cluster-Scoped-Betreibers. Im folgenden Beispiel wird Trident auf 21.07.1 aktualisiert.
    Wichtig Ein Upgrade von Astra Trident mithilfe von Operator mit Cluster-Umfang führt zur Migration von tridentProvisioner Zu A tridentOrchestrator Objekt mit dem gleichen Namen. Dieser Vorgang wird automatisch vom Betreiber übernommen. Auch Astra Trident ist auf dem Upgrade im selben Namespace wie zuvor installiert.
    #Ensure you are in the correct directory
    pwd
    /root/21.07.1/trident-installer
    
    #Install the cluster-scoped operator in the **same namespace**
    kubectl create -f deploy/bundle.yaml
    serviceaccount/trident-operator created
    clusterrole.rbac.authorization.k8s.io/trident-operator created
    clusterrolebinding.rbac.authorization.k8s.io/trident-operator created
    deployment.apps/trident-operator created
    podsecuritypolicy.policy/tridentoperatorpods created
    
    #All tridentProvisioners will be removed, including the CRD itself
    kubectl get tprov -n trident
    Error from server (NotFound): Unable to list "trident.netapp.io/v1, Resource=tridentprovisioners": the server could not find the requested resource (get tridentprovisioners.trident.netapp.io)
    
    #tridentProvisioners are replaced by tridentOrchestrator
    kubectl get torc
    NAME      AGE
    trident   13s
    
    #Examine Trident pods in the namespace
    kubectl get pods -n trident
    NAME                                READY   STATUS    RESTARTS   AGE
    trident-csi-79df798bdc-m79dc        6/6     Running   0          1m41s
    trident-csi-xrst8                   2/2     Running   0          1m41s
    trident-operator-5574dbbc68-nthjv   1/1     Running   0          1m52s
    
    #Confirm Trident has been updated to the desired version
    kubectl describe torc trident | grep Message -A 3
    Message:                Trident installed
    Namespace:              trident
    Status:                 Installed
    Version:                v21.07.1

Aktualisieren einer Helm-basierten Bedienerinstallation

Führen Sie die folgenden Schritte durch, um eine Helm-basierte Bedienerinstallation zu aktualisieren.

Schritte
  1. Laden Sie die neueste Version von Astra Trident herunter.

  2. Verwenden Sie die helm upgrade Befehl. Das folgende Beispiel zeigt:

    helm upgrade <name> trident-operator-21.07.1.tgz

    Wo trident-operator-21.07.1.tgz Gibt die Version an, auf die Sie ein Upgrade durchführen möchten.

  3. Laufen helm list Um zu überprüfen, ob sowohl die Karten- als auch die App-Version aktualisiert wurden.

Anmerkung Um Konfigurationsdaten während des Upgrades weiterzuleiten, verwenden Sie --set.

Um beispielsweise den Standardwert von zu ändern tridentDebug, Ausführen des folgenden Befehls:

helm upgrade <name> trident-operator-21.07.1-custom.tgz --set tridentDebug=true

Wenn Sie ausführen tridentctl logs, Sie können die Debug-Nachrichten sehen.

Anmerkung Wenn Sie während der Erstinstallation keine Standardoptionen festlegen, stellen Sie sicher, dass die Optionen im Befehl Upgrade enthalten sind, oder werden die Werte auf ihre Standardeinstellungen zurückgesetzt.

Upgrade von einer nicht-Betreiber-Installation

Wenn Sie über eine CSI Trident-Instanz verfügen, die die oben genannten Voraussetzungen erfüllt, können Sie ein Upgrade auf die aktuelle Version des Trident-Operators durchführen.

Schritte
  1. Laden Sie die neueste Version von Astra Trident herunter.

    # Download the release required [21.07.1]
    mkdir 21.07.1
    cd 21.07.1
    wget https://github.com/NetApp/trident/releases/download/v21.07.1/trident-installer-21.07.1.tar.gz
    tar -xf trident-installer-21.07.1.tar.gz
    cd trident-installer
  2. Erstellen Sie die tridentorchestrator CRD aus dem Manifest.

    kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
  3. Stellen Sie den Bediener bereit.

    #Install the cluster-scoped operator in the **same namespace**
    kubectl create -f deploy/bundle.yaml
    serviceaccount/trident-operator created
    clusterrole.rbac.authorization.k8s.io/trident-operator created
    clusterrolebinding.rbac.authorization.k8s.io/trident-operator created
    deployment.apps/trident-operator created
    podsecuritypolicy.policy/tridentoperatorpods created
    
    #Examine the pods in the Trident namespace
    NAME                                READY   STATUS    RESTARTS   AGE
    trident-csi-79df798bdc-m79dc        6/6     Running   0          150d
    trident-csi-xrst8                   2/2     Running   0          150d
    trident-operator-5574dbbc68-nthjv   1/1     Running   0          1m30s
  4. Erstellen Sie ein TridentOrchestrator CR für die Installation von Astra Trident.

    #Create a tridentOrchestrator to initate a Trident install
    cat deploy/crds/tridentorchestrator_cr.yaml
    apiVersion: trident.netapp.io/v1
    kind: TridentOrchestrator
    metadata:
      name: trident
    spec:
      debug: true
      namespace: trident
    
    kubectl create -f deploy/crds/tridentorchestrator_cr.yaml
    
    #Examine the pods in the Trident namespace
    NAME                                READY   STATUS    RESTARTS   AGE
    trident-csi-79df798bdc-m79dc        6/6     Running   0          1m
    trident-csi-xrst8                   2/2     Running   0          1m
    trident-operator-5574dbbc68-nthjv   1/1     Running   0          5m41s
    
    #Confirm Trident was upgraded to the desired version
    kubectl describe torc trident | grep Message -A 3
    Message:                Trident installed
    Namespace:              trident
    Status:                 Installed
    Version:                v21.07.1

Die vorhandenen Back-Ends und PVCs stehen automatisch zur Verfügung.