瞭解Astra Trident安裝
為了確保Astra Trident可安裝在各種環境和組織中、NetApp提供多種安裝選項。您可以使用 Trident 運算子(手動或使用 Helm )或搭配來安裝 Astra Trident tridentctl
。本主題提供重要資訊、協助您選擇正確的安裝程序。
Astra Trident 24.06 的重要資訊
您必須閱讀下列有關Astra Trident的重要資訊。
關於Astra Trid-功能 的資訊</strong> <strong>
-
Kubernetes 1.31 現在支援 Astra Trident 。升級Kubernetes之前先升級Trident。
-
Astra Trident 嚴格強制在 SAN 環境中使用多重路徑組態、建議在 multipath.conf 檔案中使用值
find_multipaths: no
。在 multipath.conf 檔案中使用非多重路徑組態或使用
find_multipaths: yes`或 `find_multipaths: smart`值、將會導致掛載失敗。Trident 建議自 2007 年 21 月 1 日起使用 `find_multipaths: no
。
開始之前
無論安裝路徑為何、您都必須具備:
-
對執行支援版本Kubernetes及啟用功能需求的Kubernetes叢集擁有完整權限。如需詳細資訊、請參閱"需求"。
-
存取支援的NetApp儲存系統。
-
能夠從所有Kubernetes工作節點掛載磁碟區。
-
已安裝並設定 Linux 主機
kubectl
(如果您使用 OpenShift 、則為或oc
)來管理您要使用的 Kubernetes 叢集。 -
`KUBECONFIG`環境變數設為指向 Kubernetes 叢集組態。
-
如果您使用 Kubernetes 搭配 Docker Enterprise 、 "請依照他們的步驟啟用CLI存取"。
如果您尚未熟悉"基本概念"、現在正是您熟悉的好時機。 |
選擇您的安裝方法
選取最適合您的安裝方法。在做出決定之前、您也應該先檢閱的考量事項"在方法之間移動"。
使用Trident運算子
無論是手動部署或使用Helm、Trident營運者都是簡化安裝及動態管理Astra Trident資源的絕佳方式。您甚至可以"自訂您的Trident營運者部署"使用自訂資源( CR )中的屬性 TridentOrchestrator
。
使用Trident營運者的好處包括:
不只是個Trident物件、更是個可說是個可說是個地方</strong> <strong>
Trident運算子會自動為Kubernetes版本建立下列物件。
-
營運者服務帳戶
-
叢集角色和叢集角色繫結至服務帳戶
-
專屬的PodSecurity原則(適用於Kubernetes 1.25及更早版本)
-
營運者本身
<strong> 問責表 </strong>
叢集範圍的 Trident 運算子可在叢集層級管理與 Astra Trident 安裝相關的資源。這可減輕使用命名空間範圍運算子來維護叢集範圍資源時可能造成的錯誤。這對於自我修復和修補至關重要。
還原功能的功能</strong> <strong>
營運者會監控Astra Trident安裝、並主動採取措施來處理問題、例如刪除部署或意外修改部署。 trident-operator-<generated-id>`建立 Pod 時、會將 CR 與 Astra Trident 安裝建立關聯 `TridentOrchestrator
。如此可確保叢集中只有一個Astra Trident執行個體、並控制其設定、確保安裝功能強大。當對安裝進行變更(例如刪除部署或節點取消設定)時、操作員會分別識別並修正這些變更。
更新至現有安裝的更新功能</strong> <strong>
您可以輕鬆地與營運者一起更新現有的部署。您只需編輯 TridentOrchestrator
CR 即可更新安裝。
例如、假設您需要啟用Astra Trident來產生偵錯記錄的案例。若要執行此操作、請將您的 TridentOrchestrator`設 `spec.debug`為 `true
:
kubectl patch torc <trident-orchestrator-name> -n trident --type=merge -p '{"spec":{"debug":true}}'
更新之後 TridentOrchestrator
、操作員會處理更新並修補現有安裝。這可能會觸發建立新的 Pod 、以據此修改安裝。
<strong> 的重新安裝過程 </strong>
叢集範圍的 Trident 運算子可清除移除叢集範圍的資源。使用者可以完全解除安裝 Astra Trident 、並輕鬆重新安裝。
支援升級功能的不一樣之處</strong> <strong>
當叢集的Kubernetes版本升級至支援的版本時、營運者會自動更新現有的Astra Trident安裝、並加以變更、以確保其符合Kubernetes版本的要求。
如果叢集升級至不受支援的版本、則操作員將無法安裝Astra Trident。如果操作員已安裝Astra Trident、則會顯示警告、指出Astra Trident安裝在不受支援的Kubernetes版本上。 |
使用 tridentctl
如果您現有的部署必須升級、或是想要高度自訂部署、您應該考慮。這是部署Astra Trident的傳統方法。
您可以產生 Trident 資源的資訊清單。這包括部署、取消程式集、服務帳戶、以及Astra Trident在安裝過程中所建立的叢集角色。
從22.04版開始、每次安裝Astra Trident時、AES金鑰就不會再重新產生。在這個版本中、Astra Trident會安裝一個新的秘密物件、並在安裝過程中持續存在。這表示 `tridentctl`在 22.04 中可以解除安裝舊版 Trident 、但舊版無法解除安裝 22.04 安裝。選取適當的安裝方法_。 |
選擇安裝模式
根據組織所需的安裝模式_(標準、離線或遠端)來判斷您的部署程序。
這是安裝Astra Trident最簡單的方法、適用於大多數不受網路限制的環境。標準安裝模式使用默認註冊表來存儲所需的 Trident (registry.k8s.io
)(`docker.io`和 CSI ( CSI )映像。
使用標準模式時、Astra Trident安裝程式會:
-
透過網際網路擷取容器映像
-
在Kubernetes叢集中的所有合格節點上建立部署或節點取消設定、以執行Astra Trident Pod
在無線或安全的位置可能需要離線安裝模式。在此案例中、您可以建立單一私有、鏡射的登錄或兩個鏡射登錄、以儲存所需的Trident和csi映像。
無論您的登錄組態為何、都必須將csi映像存放在單一登錄中。 |
以下是遠端安裝程序的高階概觀:
-
在您要部署 Astra Trident 的遠端機器上部署適當版本的
kubectl
。 -
從 Kubernetes 叢集複製組態檔案、並在遠端機器上設定 `KUBECONFIG`環境變數。
-
啟動 `kubectl get nodes`命令、確認您可以連線至所需的 Kubernetes 叢集。
-
使用標準安裝步驟、從遠端機器完成部署。
根據您的方法和模式選取程序
在安裝方法之間移動
您可以決定變更安裝方法。在執行此操作之前、請先考慮下列事項:
-
安裝及解除安裝Astra Trident時、請務必使用相同的方法。如果您已與一起部署
tridentctl
、則應使用適當版本tridentctl`的二進位檔案來解除安裝 Astra Trident 。同樣地、如果您是與運算子一起部署、則應編輯 `TridentOrchestrator
CR 並設定 `spec.uninstall=true`為解除安裝 Astra Trident 。 -
如果您想要移除並改用以操作員為基礎的部署
tridentctl`來部署 Astra Trident 、則應先編輯 `TridentOrchestrator`並設定 `spec.uninstall=true`為解除安裝 Astra Trident 。然後刪除 `TridentOrchestrator`和操作員部署。然後您可以使用安裝 `tridentctl
。 -
如果您有手動的操作員型部署、而且想要使用以Helm為基礎的Trident操作員部署、您應該先手動解除安裝操作員、然後再執行Helm安裝。如此一來、Helm就能部署具有所需標籤和註釋的Trident運算子。如果您不這麼做、則Helm型Trident營運者部署將會失敗、並顯示標籤驗證錯誤和註釋驗證錯誤。如果您有基礎部署、則 `tridentctl`可以使用 Helm 型部署、而不會發生問題。
其他已知組態選項
在VMware Tanzu產品組合產品上安裝Astra Trident時:
-
叢集必須支援特殊權限的工作負載。
-
--kubelet-dir`旗標應設定為 kibelet 目錄的位置。依預設,這是 `/var/vcap/data/kubelet
。使用指定 kibelet 位置
--kubelet-dir
、已知可用於 Trident 操作員、 Helm 和 `tridentctl`部署。