某些 Kubernetes 工作負載需要用於永久儲存資料的持續性儲存區。為了針對 Kubernetes 工作負載佈建持續性儲存區,vSphere with Tanzu 會與雲端原生儲存 (CNS) (一項可管理持續性磁碟區的 vCenter Server 元件) 整合。
持續性儲存區由 vSphere 網繭、Tanzu Kubernetes 叢集和虛擬機器使用。下列範例說明了 vSphere 網繭如何使用持續性儲存區。
若要瞭解 vSphere with Tanzu 如何與持續性儲存區搭配運作,請熟悉下列基本概念。
- 持續性磁碟區
-
為了提供持續性儲存區,Kubernetes 會使用可保留其狀態和資料的持續性磁碟區。如果持續性磁碟區由網繭掛接,則即使刪除或重新設定該網繭後,持續性磁碟區仍持續存在。在 vSphere with Tanzu 環境中,持續性磁碟區物件由資料存放區上的第一級磁碟支援。
vSphere with Tanzu 支援在 ReadWriteOnce 模式下動態和靜態佈建磁碟區,該磁碟區可由單一網繭掛接。
從 vSphere 7.0 Update 3 版本開始,vSphere with Tanzu 還支援 Tanzu Kubernetes 叢集中持續性磁碟區的 ReadWriteMany 模式。透過 ReadWriteMany 支援,叢集中執行的多個網繭或應用程式可以同時掛接單一磁碟區。vSphere with Tanzu 針對 ReadWriteMany 類型的持續性磁碟區使用 vSAN 檔案共用。如需詳細資訊,請參閱 在 vSphere with Tanzu中建立 ReadWriteMany 持續性磁碟區。
- 動態和靜態佈建
-
使用動態磁碟區佈建時,不需要預先佈建儲存區,可以根據需要建立持續性磁碟區。DevOps 工程師會發出參考命名空間中可用儲存區類別的持續性磁碟區宣告。vSphere with Tanzu 會自動佈建對應的持續性磁碟區和支援虛擬磁碟。
主管叢集 和 Tanzu Kubernetes 叢集均支援動態佈建。
如需如何動態建立持續性磁碟區的範例,請參閱為可設定狀態的應用程式佈建動態持續性磁碟區。
- 第一級磁碟
-
vSphere with Tanzu 使用虛擬磁碟的第一級磁碟 (FCD) 類型來支援持續性磁碟區。第一級磁碟 (也稱為已改進虛擬磁碟) 是未與虛擬機器相關聯的具名虛擬磁碟。
第一級磁碟會按 UUID 識別。此 UUID 是全域唯一的,並且是 FCD 的主要識別碼。UUID 仍然有效,即使其 FCD 已重新放置或建立快照也是如此。
- 持續性磁碟區宣告
-
DevOps 工程師會建立持續性磁碟區宣告,以要求持續性儲存區資源。要求會佈建持續性磁碟區物件和相符的虛擬磁碟。在 vSphere Client 中,持續性磁碟區會將資訊清單宣告為可由 vSphere 管理員監控的 FCD 虛擬磁碟。
- 儲存區類別
-
Kubernetes 使用儲存區類別來說明支援持續性磁碟區的儲存區需求。DevOps 工程師可以在其持續性磁碟區宣告規格中包含特定的儲存區類別,以要求類別所描述的儲存區類型。
持續性儲存區工作流程
在 vSphere with Tanzu 中佈建持續性儲存區的工作流程通常包括下列連續動作。
步驟 |
動作 |
說明 |
---|---|---|
1 |
vSphere 管理員將持續性儲存區資源提供給 DevOps 團隊。 |
vSphere 管理員會建立說明不同的儲存區需求和服務類別的虛擬機器儲存區原則。然後,他們可以將儲存區原則指派給 vSphere 命名空間。 |
2 |
vSphere with Tanzu 會建立符合指派給 vSphere 命名空間 之儲存區原則的儲存區類別。 |
儲存區類別會自動顯示在 Kubernetes 環境中,並且可供 DevOps 團隊使用。如果 vSphere 管理員將多個儲存區原則指派給 vSphere 命名空間,則會為每個儲存區原則建立單獨的儲存區類別。 如果您使用 Tanzu Kubernetes Grid 服務 來佈建 Tanzu Kubernetes 叢集,則每個 Tanzu Kubernetes 叢集會從佈建叢集的 vSphere 命名空間 繼承儲存區類別。 |
3 |
DevOps 工程師會使用儲存區類別為工作負載要求持續性儲存區資源。 |
此要求會以參考特定儲存區類別的持續性磁碟區宣告的一種形式提供。 |
4 |
vSphere with Tanzu 會為工作負載建立持續性磁碟區物件和相符的持續性虛擬磁碟。 |
vSphere with Tanzu 會將虛擬磁碟放置在符合原始儲存區原則及其相符儲存區類別中所指定需求的資料存放區中。虛擬磁碟可以由工作負載掛接。 |
5 |
vSphere 管理員會在 vSphere with Tanzu 環境中監控持續性磁碟區。 |
透過使用 vSphere Client,vSphere 管理員可以監控持續性磁碟區及其支援的虛擬磁碟。此外,還可以監控持續性磁碟區的儲存區符合性和健全狀況狀態。 |
請觀看此影片,以瞭解 vSphere with Tanzu 中的持續性儲存區。
vSphere 管理員的儲存區管理工作
一般而言,vSphere with Tanzu 中的持續性儲存區管理工作包括下列各項。身為 vSphere 管理員,您可以使用 vSphere Client 來執行這些工作。
執行虛擬機器儲存區原則的生命週期作業。
啟用主管叢集和設定命名空間之前,請為持續性儲存區建立儲存區原則。儲存區原則是以 DevOps 工程師向您傳達的儲存區需求為基礎。請參閱建立 vSphere with Tanzu 的儲存區原則。
備註:當具有對應儲存區類別的持續性磁碟區宣告在命名空間中執行時,請勿從 vCenter Server 或 vSphere 命名空間 中刪除儲存區原則。此建議也適用於 Tanzu Kubernetes 叢集。
透過將儲存區原則指派給命名空間以及設定儲存區限制,將儲存區資源提供給 DevOps 工程師。如需變更儲存區原則指派的相關資訊,請參閱變更命名空間的儲存區設定。如需有關設定限制權限的資訊,請參閱針對 vSphere 命名空間 中的 Kubernetes 物件設定限制。
在 vSphere Client 中監控 Kubernetes 物件及其儲存區原則符合性。請參閱在 vSphere Client 中監控持續性磁碟區。
DevOps 工程師的儲存區管理工作
通常,DevOps 工程師會使用 kubectl 執行下列儲存區工作。
管理儲存區類別。請參閱在 vSphere 命名空間 或 Tanzu Kubernetes 叢集中顯示儲存區類別。
部署和管理可設定狀態應用程式。請參閱為可設定狀態的應用程式佈建動態持續性磁碟區。
執行持續性磁碟區的生命週期作業。Tanzu Kubernetes 持續性磁碟區宣告範例。