Upgrade mit dem Bediener
Eine vorhandene Astra Trident Installation lässt sich ganz einfach entweder manuell oder über Helm aufrüsten.
Upgrade über den Trident-Operator
Im Allgemeinen sollte Astra Trident mit derselben Methode aktualisiert werden, die auch für die ursprüngliche Installation verwendet wurde. Die Vorgehensweise "Wählen Sie eine Aktualisierungsmethode aus" sollte vor dem Upgrade mit dem Trident Operator überprüft werden.
|
|
Bei einem Upgrade von einer Instanz von Astra Trident, die über den Namespace-Scoped-Operator (Versionen 20.07 bis 20.10) installiert wurde, führt der Trident-Operator automatisch folgende Schritte aus:
|
Upgrade einer Installation des Trident Operators mit Cluster-Umfang
Sie können eine Installation eines Trident-Operators mit Cluster-Umfang aktualisieren. Alle Astra Trident Versionen 21.01 und höher verwenden einen Operator mit Cluster-Umfang.
Stellen Sie sicher, dass Sie ein Kubernetes-Cluster ausführen "Eine unterstützte Kubernetes Version".
-
Überprüfen Sie die Astra Trident Version:
./tridentctl -n trident version
-
Löschen Sie den Trident-Operator, der zur Installation der aktuellen Astra Trident-Instanz verwendet wurde. Wenn Sie beispielsweise ein Upgrade von 22.01 durchführen, führen Sie den folgenden Befehl aus:
kubectl delete -f 22.01/trident-installer/deploy/bundle.yaml -n trident
-
Wenn Sie Ihre Erstinstallation mit angepasst haben
TridentOrchestratorAttribute, können Sie die bearbeitenTridentOrchestratorObjekt zum Ändern der Installationsparameter. Dies kann auch Änderungen umfassen, die an der Angabe gespiegelter Trident- und CSI-Image-Register für den Offline-Modus vorgenommen wurden, Debug-Protokolle aktivieren oder Geheimnisse für die Bildausziehung angeben. -
Installieren Sie Astra Trident mit der richtigen Paket-YAML-Datei für Ihre Umgebung und Astra Trident-Version. Wenn Sie beispielsweise Astra Trident 23.04 für Kubernetes 1.27 installieren, führen Sie den folgenden Befehl aus:
kubectl create -f 23.04.0/trident-installer/deploy/bundle_post_1_25.yaml -n trident
Trident stellt eine Paketdatei bereit, mit der der Operator installiert und damit verknüpfte Objekte für die Kubernetes-Version erstellt werden können.
-
Verwenden Sie für Cluster mit Kubernetes 1.24 oder früheren Versionen "Bundle_pre_1_25.yaml".
-
Verwenden Sie für Cluster mit Kubernetes 1.25 oder höher "Bundle_Post_1_25.yaml".
-
Der Trident-Operator identifiziert eine bestehende Astra Trident-Installation und aktualisiert sie auf die gleiche Version wie der Operator.
Aktualisieren einer Installation des Namespace-Scoped-Operators
Sie können ein Upgrade von einer Instanz von Astra Trident, die mit dem Namespace-Scoped Operator (Versionen 20.07 bis 20.10) installiert ist, auf eine Cluster-Scoped Operator-Installation durchführen.
Sie benötigen die Paket-YAML-Datei, die zum Bereitstellen des Namespace-Scoped-Operators verwendet wird https://github.com/NetApp/trident/tree/stable/vXX.XX/deploy/BUNDLE.YAML Wo vXX.XX Ist die Versionsnummer und BUNDLE.YAML Ist der Name der Paket-YAML-Datei.
-
Überprüfen Sie die
TridentProvisionerDer Status der bestehenden Trident-Installation lautetInstalled.kubectl describe tprov trident -n trident | grep Message: -A 3 Message: Trident installed Status: Installed Version: v20.10.1
Wenn der Status Updatingangezeigt wird, sollte das Problem vor dem Fortfahren behoben werden. Eine Liste möglicher Statuswerte befindet sich unter "Hier". -
Erstellen Sie die
TridentOrchestratorCRD mit dem Manifest, das mit dem Trident-Installer bereitgestellt wurde.# Download the release required [23.04.0] mkdir 23.04.0 cd 23.04.0 wget https://github.com/NetApp/trident/releases/download/v23.04.0/trident-installer-23.04.0.tar.gz tar -xf trident-installer-23.04.0.tar.gz cd trident-installer kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
-
Löschen Sie den Operator Namespace-Scoped mithilfe des Manifests.
-
Stellen Sie sicher, dass Sie sich im richtigen Verzeichnis befinden.
pwd /root/20.10.1/trident-installer
-
Löschen Sie den Namespace-Scoped-Operator.
kubectl delete -f deploy/<BUNDLE.YAML> -n trident 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
-
Bestätigen Sie, dass der Trident-Operator entfernt wurde.
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
-
-
(Optional) Wenn die Installationsparameter geändert werden müssen, muss die
TridentProvisionerSpec aktualisiert werden. Dies kann Änderungen umfassen wie das Ändern der Werte fürtridentImage,autosupportImage, ein privates Image-Repository und das Bereitstellen vonimagePullSecrets) nach dem Löschen des Operators mit Namespace-Gültigkeitsbereich und vor der Installation des Operators mit Cluster-Gültigkeitsbereich. Eine vollständige Liste der Parameter, die aktualisiert werden können, finden Sie unter "Konfigurationsoptionen".kubectl patch tprov <trident-provisioner-name> -n <trident-namespace> --type=merge -p '{"spec":{"debug":true}}' -
Installieren Sie den Trident-Operator für den Cluster-Umfang.
-
Stellen Sie sicher, dass Sie sich im richtigen Verzeichnis befinden.
pwd /root/23.04.0/trident-installer
-
Installieren Sie den Cluster-scoped-Operator im gleichen Namespace.
Trident stellt eine Paketdatei bereit, mit der der Operator installiert und damit verknüpfte Objekte für die Kubernetes-Version erstellt werden können.
-
Verwenden Sie für Cluster mit Kubernetes 1.24 oder früheren Versionen "Bundle_pre_1_25.yaml".
-
Verwenden Sie für Cluster mit Kubernetes 1.25 oder höher "Bundle_Post_1_25.yaml".
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
-
-
Untersuchen Sie die Trident Pods im Namespace. Der
trident-controllerZudem geben die Pod-Namen die im Jahr 23.01 eingeführte Namenskonvention wieder.kubectl get pods -n trident NAME READY STATUS RESTARTS AGE trident-controller-79df798bdc-m79dc 6/6 Running 0 1m41s trident-node-linux-xrst8 2/2 Running 0 1m41s trident-operator-5574dbbc68-nthjv 1/1 Running 0 1m52s
-
Bestätigen Sie, dass Trident auf die beabsichtigte Version aktualisiert wurde.
kubectl describe torc trident | grep Message -A 3 Message: Trident installed Namespace: trident Status: Installed Version: v23.04.0
-
Aktualisieren einer Helm-basierten Bedienerinstallation
Führen Sie die folgenden Schritte durch, um eine Helm-basierte Bedienerinstallation zu aktualisieren.
|
|
Wenn Sie ein Kubernetes-Cluster von 1.24 auf 1.25 oder höher aktualisieren, auf das Astra Trident installiert ist, müssen Sie Werte.yaml aktualisieren excludePodSecurityPolicy Bis true Oder hinzufügen --set excludePodSecurityPolicy=true Bis zum helm upgrade Befehl bevor Sie ein Upgrade des Clusters durchführen können.
|
-
Laden Sie die neueste Version von Astra Trident herunter.
-
Verwenden Sie die
helm upgradeBefehl wotrident-operator-23.04.0.tgzGibt die Version an, auf die Sie ein Upgrade durchführen möchten.helm upgrade <name> trident-operator-23.04.0.tgz
Wenn Sie während der Erstinstallation alle nicht standardmäßigen Optionen festlegen (z. B. Private, gespiegelte Registryes für Trident- und CSI-Images), verwenden Sie
--setUm sicherzustellen, dass diese Optionen im Upgrade-Befehl enthalten sind, werden die Werte andernfalls auf die Standardeinstellung zurückgesetzt.Um beispielsweise den Standardwert von zu ändern
tridentDebug, Ausführen des folgenden Befehls:helm upgrade <name> trident-operator-23.04.0-custom.tgz --set tridentDebug=true
-
Laufen
helm listUm zu überprüfen, ob sowohl die Karten- als auch die App-Version aktualisiert wurden. Laufentridentctl logsUm alle Debug-Nachrichten zu überprüfen.
Der Trident-Operator identifiziert eine bestehende Astra Trident-Installation und aktualisiert sie auf die gleiche Version wie der Operator.
Upgrade von einer nicht-Betreiber-Installation
Sie können ein Upgrade auf die neueste Version des Trident-Operators von durchführen tridentctl Installation:
-
Laden Sie die neueste Version von Astra Trident herunter.
# Download the release required [23.04.0] mkdir 23.04.0 cd 23.04.0 wget https://github.com/NetApp/trident/releases/download/v22.01.1/trident-installer-23.04.0.tar.gz tar -xf trident-installer-23.04.0.tar.gz cd trident-installer
-
Erstellen Sie die
tridentorchestratorCRD aus dem Manifest.kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
-
Stellen Sie den Clusteroperator im selben Namespace bereit.
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-controller-79df798bdc-m79dc 6/6 Running 0 150d trident-node-linux-xrst8 2/2 Running 0 150d trident-operator-5574dbbc68-nthjv 1/1 Running 0 1m30s
-
Erstellen Sie ein
TridentOrchestratorCR für die Installation von Astra Trident.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
-
Bestätigen Sie, dass das Upgrade von Trident auf die beabsichtigte Version durchgeführt wurde.
kubectl describe torc trident | grep Message -A 3 Message: Trident installed Namespace: trident Status: Installed Version: v23.04.0
Die vorhandenen Back-Ends und PVCs stehen automatisch zur Verfügung.