升級Astra Trident
Astra Trident依照每季發行時段進行、每一日曆年發行四個主要版本。每個新版本均以舊版為基礎、提供新功能與效能增強功能、以及錯誤修正與改善功能。我們建議您每年至少升級一次、以善用Astra Trident的新功能。
|
若要升級至未來五個版本的版本、您必須執行多步驟升級。 |
判斷要升級的版本
-
您可以升級至
YY.MM
從發行YY-1.MM
版本與任何版本之間的版本。例如、您可以直接從19.07或更新版本升級至20.07(包括點版本、例如19.07.1)。 -
如果您有較早的版本、應該執行多步驟升級。這需要您先升級至最新版本、以符合您的四個版本。例如、如果您執行的是18.07、想要升級至20.07版本、請依照下列指示執行多步驟升級程序:
-
第一次從18.07升級至19.07。請參閱個別版本的文件、以取得升級的特定指示。
-
然後從19.07升級至20.07。
-
|
19.04版及更早版本的所有升級都需要從自己的Astra Trident中繼資料進行移轉 etcd 至CRD物件。請務必查看版本文件、瞭解升級的運作方式。
|
|
升級時、請務必提供 parameter.fsType 在中 StorageClasses 由Astra Trident使用。您可以刪除並重新建立 StorageClasses 無需中斷既有的磁碟區。這是對 SAN 磁碟區強制執行 security 內容 的 需求 。https://github.com/NetApp/trident/tree/master/trident-installer/sample-input[sample INPUT ^] 目錄包含 https://github.com/NetApp/trident/blob/master/trident-installer/sample-input/storage-class-samples/storage-class-basic.yaml.templ 等範例[storage-class-basic.yaml.templ ^] 和連結: storage-class-bronze-default.yaml 。如需詳細資訊、請參閱 "已知問題"。 |
我應該選擇哪種升級途徑?
您可以使用下列其中一種方法來升級:
-
使用Trident運算子。
-
使用
tridentctl
。
|
現在、自Kubernetes 1.20開始、「csi Volume Snapshot」就是GA的一項功能。升級Astra Trident時、必須先移除所有先前的Alpha Snapshot CRS和CRD(Volume Snapshot類別、Volume Snapshot和Volume Snapshot內容)、才能執行升級。請參閱 "這篇部落格" 瞭解將Alpha快照移轉至測試版/GA規格所需的步驟。 |
如果符合下列條件、您可以使用Trident運算子進行升級:
-
您執行的是「csi Trident」(19.07及更新版本)。
-
您有一個CRD型Trident版本(19.07及更新版本)。
-
您正在執行自訂安裝(使用自訂YAML)。
|
如果您使用的是、請勿使用運算子來升級Trident `etcd`Trident版本(19.04或更早版本)。 |
如果您不想使用操作員、或是擁有操作員無法支援的自訂安裝、您可以使用進行升級 tridentctl
。這是Trident 19.04及更早版本的首選升級方法。
操作員變更
Astra Trident的21.01版為營運者帶來了一些重要的架構變更、如下所示:
-
運算子現在*叢集範圍*。Trident運算子先前的執行個體(20.04到20.10版)為*命名空間範圍*。叢集範圍內的運算子具有下列優點:
-
資源責任:營運者現在可在叢集層級管理與Astra Trident安裝相關的資源。在安裝Astra Trident的過程中、營運者會使用來建立及維護多項資源
ownerReferences
。維護ownerReferences
在叢集範圍內的資源上、某些Kubernetes經銷商(例如OpenShift)可能會發生錯誤。叢集範圍的運算子可減輕此問題。對於自動修復和修補Trident資源、這是必要的需求。 -
卸載期間清理:完整移除Astra Trident將需要刪除所有相關資源。命名空間範圍的運算子可能會在移除叢集範圍的資源(例如叢集角色、叢集角色繫結和Podcast安全性原則)時遇到問題、並導致不完整的清理。叢集範圍的運算子可消除此問題。使用者可以完全解除安裝Astra Trident、並視需要重新安裝。
-
-
TridentProvisioner
現已取代為TridentOrchestrator
作為用於安裝及管理Astra Trident的自訂資源。此外、也會在中引進新的欄位TridentOrchestrator
規格使用者可以指定命名空間Trident必須使用安裝/升級spec.namespace
欄位。您可以參考範例 "請按這裡"。