您可以使用 Kubernetes 物件,為在 AWS 上的 GKE 執行的工作負載建立永久儲存空間。
在 GKE on AWS 工作負載中使用永久儲存空間
在 GKE on AWS 中,您可以使用 Kubernetes PersistentVolume (PV)、PersistentVolumeClaim (PVC) 和 StorageClass 資源,為工作負載提供永久檔案和區塊儲存空間。如果是 1.17 以上版本的使用者叢集,您可以透過 VolumeSnapshot 和 VolumeSnapshotClass 資源,建立永久儲存空間的快照。快照會儲存在 AWS 帳戶中。
StorageClass
使用者叢集具有預設 Kubernetes StorageClass,可動態佈建 AWS Elastic Block Storage (EBS) 磁碟區上的工作負載狀態儲存空間。您也可以使用其他 StorageClass 佈建其他類型的磁碟區。這些選項說明如下。
VolumeSnapshotClass
使用者叢集具有 default Kubernetes VolumeSnapshotClass,可建立 AWS Elastic Block Storage (EBS) 磁碟區上具狀態儲存空間的快照。
設定叢集儲存空間
如要使用非預設的 StorageClass 佈建儲存空間磁碟區,可以在叢集中建立新的 StorageClass,並使用不同的參數或儲存空間驅動程式。接著,您可以將 StorageClass 設為叢集的預設值,或設定工作負載以使用 StorageClass。舉例來說,您可以使用 StatefulSet 設定特定 StorageClass 名稱。
使用磁碟區快照功能
在 Kubernetes 1.17 以上版本中,您可以使用 VolumeSnapshot 資源建立儲存空間磁碟區的快照。然後,您就可以從這些快照佈建新的永久磁碟區。
Elastic Block Storage (EBS)
GKE on AWS 會使用 aws-ebs-csi-driver 管理 AWS EBS 磁碟區。
EBS CSI 驅動程式版本與 GKE on AWS Kubernetes 版本相關。升級使用者叢集版本時,系統會自動套用新的驅動程式版本。這個版本通常是 GKE on AWS 版本發布時的最新驅動程式。
GKE on AWS 預先安裝的驅動程式預設會提供下列 StorageClass:
standard-rwo
(預設):用於佈建 EBSgp2
磁碟區。premium-rwo
:用於佈建 EBSio1
磁碟區。
EBS 磁碟區支援 Kubernetes ReadWriteOnce 存取模式。
現有的 EBS 磁碟區
您可以在 GKE on AWS 工作負載中佈建現有的 EBS 磁碟區。如需如何在 GKE on AWS 中使用 EBS 磁碟區的範例,請參閱「匯入現有的 EBS 磁碟區」。
Elastic File System (EFS)
GKE on AWS 1.6 以上版本支援掛接預先存在的 AWS EFS 檔案系統和存取點。詳情請參閱「使用 EFS」一文。
其他儲存空間選項
您可以使用第三方容器儲存空間介面 (CSI) 驅動程式 (建議使用),或樹狀結構內的 Kubernetes 磁碟區外掛程式,透過 AWS 上的 GKE 使用其他第三方儲存空間系統。
CSI 驅動程式
Container Storage Interface (CSI) 是一種開放標準 API,可讓 Kubernetes 將任意儲存系統附加至容器化工作負載。如需 CSI 驅動程式的非完整清單,請參閱 Kubernetes CSI 開發人員說明文件。AWS 上的 GKE 支援 CSI v1.x。
如要在叢集中使用 CSI 驅動程式,您必須安裝儲存空間供應商提供的 CSI 驅動程式。然後,您可以將工作負載設定為使用驅動程式的 StorageClass,或將其設為預設 StorageClass。
AWS 專屬儲存空間驅動程式
下列磁碟區驅動程式可用於 AWS 上的 GKE。
FSx for Lustre (FSX)
GKE on AWS 不會直接管理 FSx 磁碟區。您可以手動安裝 aws-fsx-csi-driver,但 Google 不提供支援。
Kubernetes 樹內磁碟區外掛程式
Kubernetes 隨附樹狀結構內 (內建) 磁碟區外掛程式。支援的樹內驅動程式包括:
- configMap
- emptyDir
- hostPath
- nfs
- 預計
- Secret
後續步驟
- 瞭解如何搭配工作負載使用 StorageClasses。
- 將現有的 EBS 磁碟區匯入 GKE on AWS。
- 瞭解 GKE 中的永久磁碟區。
- 瞭解 GKE 中的磁碟區快照。
- 請參閱 Kubernetes 的儲存空間類別說明文件。
- 請參閱 Container Storage Interface 版本發布公告。