本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

部署總覽

貢獻者

您可以使用Trident運算子或搭配部署Astra Trident tridentctl

附註 從22.04版開始、每次安裝Astra Trident時、AES金鑰就不會再重新產生。在這個版本中、Astra Trident會安裝一個新的秘密物件、並在安裝過程中持續存在。這表示、 tridentctl 在22.04中可以解除安裝舊版Trident、但舊版無法解除安裝22.04安裝。

Kubernetes 1.25的重要資訊

Astra Trident 22.10支援Kubernetes 1.25。升級至Kubernetes 1.25之前、您必須先升級至Astra Trident 22.10。

選擇部署方法

若要判斷要使用哪種部署方法、請考慮下列事項:

為什麼我應該使用Trident運算子?

"Trident運算子" 是動態管理Astra Trident資源及自動化設定階段的絕佳方法。必須滿足一些先決條件。請參閱 "需求"

Trident營運者提供以下幾項優點:

自我修復功能

您可以監控Astra Trident安裝、並主動採取措施來處理問題、例如刪除部署或意外修改部署。當操作員設定為部署時 trident-operator-<generated-id> Pod已建立。此Pod會建立關聯 TridentOrchestrator 含Astra Trident安裝的CR可確保只有一個作用中 TridentOrchestrator。換句話說、操作人員可確保叢集中只有一個Astra Trident執行個體、並控制其設定、確保安裝具有冪等特性。當對安裝進行變更(例如刪除部署或節點取消設定)時、操作員會分別識別並修正這些變更。

輕鬆更新現有安裝

您可以輕鬆地與營運者一起更新現有的部署。您只需要編輯 TridentOrchestrator 以更新安裝。例如、假設您需要啟用Astra Trident來產生偵錯記錄的案例。

若要這麼做、請修補您的 TridentOrchestrator 以設定 spec.debugtrue

kubectl patch torc <trident-orchestrator-name> -n trident --type=merge -p '{"spec":{"debug":true}}'

之後 TridentOrchestrator 更新後、營運者會處理更新並修補現有安裝。這可能會觸發建立新的Pod、以據此修改安裝。

自動處理Kubernetes升級

當叢集的Kubernetes版本升級至支援的版本時、營運者會自動更新現有的Astra Trident安裝、並加以變更、以確保其符合Kubernetes版本的要求。

附註 如果叢集升級至不受支援的版本、則操作員將無法安裝Astra Trident。如果操作員已安裝Astra Trident、則會顯示警告、指出Astra Trident安裝在不受支援的Kubernetes版本上。

使用Cloud Manager管理Kubernetes叢集

"使用Cloud Manager的Astra Trident"、您可以升級至最新版的Astra Trident、新增及管理儲存類別、並將其連線至工作環境、以及使用Cloud Backup Service NetApp備份持續的Volume。Cloud Manager可手動或使用Helm、使用Trident營運者來支援Astra Trident部署。

為什麼要使用Helm?

如果您有其他使用Helm管理的應用程式、從Astra Trident 21.01開始、您也可以使用Helm來管理部署。

我應該何時使用 tridenctl

如果您現有的部署必須升級至、或是想要高度自訂部署、請參閱使用 "試用"。這是部署Astra Trident的傳統方法。

在部署方法之間移動的考量

不難想像需要在部署方法之間移動的情況。在嘗試從移出之前、您應該考慮下列事項 tridentctl 部署至以營運者為基礎的部署、反之亦然:

  • 請務必使用相同的方法來解除安裝Astra Trident。如果您已部署 tridentctl、您應該使用適當版本的 tridentctl 二進位以解除安裝Astra Trident。同樣地、如果您是與操作員一起部署、則應該編輯 TridentOrchestrator 並設定 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為基礎的部署、而不會發生問題。

瞭解部署模式

有三種方法可以部署Astra Trident。

標準部署

在Kubernetes叢集上部署Trident會導致Astra Trident安裝程式執行兩項作業:

  • 透過網際網路擷取Container映像

  • 建立部署和/或節點取消設定、在Kubernetes叢集中的所有合格節點上執行Astra Trident Pod。

這類的標準部署可透過兩種不同方式執行:

  • 使用 tridentctl install

  • 使用Trident運算子。您可以手動或使用Helm來部署Trident運算子。

這種安裝模式是安裝Astra Trident的最簡單方法、適用於大多數不受網路限制的環境。

離線部署

若要執行無線部署、您可以使用 --image-registry 叫用時顯示旗標 tridentctl install 指向私有映像登錄。如果使用Trident運算子進行部署、您也可以指定 spec.imageRegistry 在您的中 TridentOrchestrator。此登錄應包含 "Trident影像""Trident AutoSupport 的圖片"以及Kubernetes版本所需的csi sidecar映像。

若要自訂部署、您可以使用 tridentctl 產生Trident資源的資訊清單。這包括部署、取消程式集、服務帳戶、以及Astra Trident在安裝過程中所建立的叢集角色。

如需自訂部署的詳細資訊、請參閱下列連結:

重要 如果您使用的是私有映像儲存庫、則應該新增 /sig-storage 到私有登錄URL的結尾。使用的私有登錄時 tridentctl 部署、您應該使用 --trident-image--autosupport-image 與搭配使用 --image-registry。如果您使用Trident運算子來部署Astra Trident、請確定Orchestrator CR包含在內 tridentImageautosupportImage 安裝參數。

遠端部署

以下是遠端部署程序的高階概觀:

  • 部署適當版本的 kubectl 在您要部署Astra Trident的遠端機器上。

  • 從Kubernetes叢集複製組態檔案、然後設定 KUBECONFIG 遠端機器上的環境變數。

  • 啟動 kubectl get nodes 命令來驗證您是否可以連線至所需的Kubernetes叢集。

  • 使用標準安裝步驟、從遠端機器完成部署。

其他已知組態選項

在VMware Tanzu產品組合產品上安裝Astra Trident時:

  • 叢集必須支援特殊權限的工作負載。

  • --kubelet-dir 旗標應設定為kubelet目錄的位置。依預設、這是 /var/vcap/data/kubelet

    使用指定kubelet位置 --kubelet-dir 已知適用於Trident運算子、Helm和 tridentctl 部署: