Anda membuat penyimpanan persisten untuk workload yang berjalan di GKE di AWS dengan objek Kubernetes.
Menggunakan penyimpanan persisten di GKE pada workload AWS
Di GKE di AWS, Anda menggunakan resource PersistentVolume (PV), PersistentVolumeClaim (PVC), dan StorageClass Kubernetes untuk menyediakan file persisten dan block storage ke workload. Untuk cluster pengguna versi 1.17 dan yang lebih tinggi, Anda dapat membuat snapshot penyimpanan persisten dengan resource VolumeSnapshot dan VolumeSnapshotClass. Snapshot disimpan di akun AWS Anda.
StorageClass
Cluster pengguna memiliki Kubernetes StorageClass default yang secara dinamis menyediakan penyimpanan stateful untuk workload pada volume AWS Elastic Block Storage (EBS). Anda juga dapat menggunakan StorageClass berbeda untuk menyediakan jenis volume lain. Opsi ini dijelaskan di bagian berikut.
VolumeSnapshotClass
Cluster pengguna memiliki default Kubernetes VolumeSnapshotClass yang membuat snapshot penyimpanan stateful pada volume AWS Elastic Block Storage (EBS).
Mengonfigurasi penyimpanan cluster
Jika ingin menyediakan volume penyimpanan dengan StorageClass non-default, Anda dapat membuat StorageClass baru dalam cluster yang menggunakan parameter berbeda atau driver penyimpanan yang berbeda. Kemudian, Anda dapat menetapkan StorageClass sebagai default cluster, atau mengonfigurasi beban kerja untuk menggunakan StorageClass. Misalnya, Anda dapat menggunakan StatefulSet untuk menetapkan nama StorageClass tertentu.
Menggunakan snapshot volume
Pada Kubernetes versi 1.17+, Anda dapat menggunakan resource VolumeSnapshot untuk membuat snapshot volume penyimpanan. Kemudian, Anda dapat menyediakan volume persisten baru dari snapshot ini.
Penyimpanan Blok Elastis (EBS)
GKE di AWS mengelola volume AWS EBS dengan aws-ebs-csi-driver.
Versi Driver EBS CSI terikat dengan GKE pada versi AWS Kubernetes. Saat Anda mengupgrade versi cluster pengguna, versi driver baru akan otomatis diterapkan. Versi ini biasanya merupakan driver terbaru yang tersedia saat GKE on AWS versi dirilis.
Driver yang telah diinstal sebelumnya dengan GKE di AWS menyediakan StorageClasses berikut secara default:
standard-rwo
(default): Digunakan untuk menyediakan volumegp2
EBS.premium-rwo
: Digunakan untuk menyediakan volumeio1
EBS.
Volume EBS mendukung mode akses ReadWriteOnce Kubernetes.
Volume EBS yang sudah ada
Anda dapat menyediakan volume EBS yang ada di GKE pada workload AWS. Lihat Mengimpor volume EBS yang sudah ada untuk contoh tentang cara menggunakan volume EBS di GKE di AWS.
Sistem File Elastic (EFS)
GKE pada AWS 1.6 dan yang lebih tinggi mendukung pemasangan sistem file AWS EFS dan titik akses yang sudah ada sebelumnya. Untuk mengetahui informasi selengkapnya, lihat Menggunakan EFS.
Opsi penyimpanan tambahan
Sistem penyimpanan pihak ketiga lainnya dapat digunakan dengan GKE di AWS melalui driver Container Storage Interface (CSI) pihak ketiga (direkomendasikan) atau plugin volume Kubernetes dalam pohon.
Driver CSI
Container Storage Interface (CSI) adalah API standar terbuka yang memungkinkan Kubernetes untuk memasang sistem penyimpanan arbitrer ke workload dalam container. Daftar lengkap driver CSI dapat ditemukan di Dokumentasi Developer Kubernetes CSI. GKE di AWS mendukung CSI v1.x.
Untuk menggunakan driver CSI di cluster, Anda harus menginstal driver CSI yang disediakan oleh vendor penyimpanan. Kemudian Anda dapat mengonfigurasi workload untuk menggunakan StorageClass pengemudi atau menetapkannya sebagai StorageClass default.
Driver penyimpanan khusus AWS
Driver volume berikut dapat digunakan dengan GKE di AWS.
FSx untuk Lustre (FSX)
GKE di AWS tidak mengelola volume FSx secara langsung. Anda dapat menginstal aws-fsx-csi-driver secara manual, tetapi dukungan tidak tersedia dari Google.
Plugin volume in-tree Kubernetes
Kubernetes dilengkapi dengan plugin volume in-tree (bawaan). Driver in-tree yang didukung mencakup:
- configMap
- emptyDir
- hostPath
- nfs
- diproyeksikan
- secrets
Apa langkah selanjutnya?
- Pelajari cara Menggunakan StorageClasses dengan workload Anda.
- Impor volume EBS yang sudah ada ke GKE di AWS.
- Pelajari Volume persisten di GKE.
- Pelajari Snapshot volume di GKE.
- Baca dokumentasi Kelas Penyimpanan Kubernetes.
- Baca pengumuman rilis Container Storage Interface.