Cluster pengguna memiliki satu atau beberapa objek StorageClass, dan salah satunya ditetapkan sebagai StorageClass default. Halaman ini menunjukkan cara menetapkan StorageClass default untuk cluster pengguna.
Untuk informasi selengkapnya, lihat Penyimpanan.
Menemukan StorageClass default
Mencantumkan semua StorageClasses:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get storageclasses
Dalam output, Anda dapat melihat StorageClass mana yang merupakan default. Misalnya, dalam
output berikut, Anda dapat melihat bahwa StorageClass bernama standard-rwo
adalah
StorageClass default:
standard kubernetes.io/vsphere-volume standard-rwo (default) csi.vsphere.vmware.com
Saat meminta penyimpanan, Anda dapat menentukan StorageClass. Jika Anda tidak menetapkan StorageClass, StorageClass default akan digunakan. Misalnya, Anda membuat PersistentVolumeClaim yang tidak menentukan StorageClass. Pengontrol volume akan memenuhi klaim sesuai dengan StorageClass default.
Mengubah StorageClass default
Sebagai administrator cluster, Anda mungkin ingin mengubah kelas penyimpanan default. Kemudian, semua permintaan untuk penyimpanan yang tidak menentukan StorageClass akan dipenuhi sesuai dengan StorageClass pilihan Anda. Bagian ini menampilkan langkah-langkah untuk mengubah default-nya.
Men-deploy sistem penyimpanan baru
Men-deploy sistem penyimpanan baru dan komponen software apa pun untuk mengintegrasikan mekanisme penyimpanan baru dengan cluster Kubernetes. Misalnya, Anda mungkin perlu menginstal driver CSI di cluster.
Langkah ini bergantung pada vendor penyimpanan yang Anda gunakan. Untuk driver CSI, vendor harus memberikan petunjuk untuk men-deploy driver CSI mereka ke cluster Kubernetes. Dokumentasi driver CSI juga harus menyertakan parameter khusus pengemudi yang Anda berikan di StorageClass, termasuk nama penyedia.
Saat membuat StorageClass untuk peralatan baru, Anda harus memberi nama StorageClass berdasarkan propertinya (seperti "cepat" atau "sangat direplikasi"), bukan sesuai nama driver atau peralatan tertentu di belakangnya. Hal ini akan memudahkan Anda memiliki kebijakan penyimpanan yang konsisten di seluruh cluster dan lingkungan.
Menghapus anotasi default dari StorageClass default
Buka StorageClass default di editor teks:
kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] edit storageclass \ DEFAULT_STORAGE_CLASS
Di editor teks, hapus
anotasi storageclass.kubernetes.io/is-default-class: "true"
. Tutup
editor teks.
Untuk memverifikasi bahwa anotasi telah dihapus, masukkan perintah berikut:
kubectl --kubeconfig [USER_CLUSTER_KUBECONFIG] get storageclass \ DEFAULT_STORAGE_CLASS --output yaml
Membuat StorageClass baru
Buat manifes untuk StorageClass baru.
Menyertakan anotasi storageclass.kubernetes.io/is-default-class: "true"
.
Contoh:
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: annotations: storageclass.kubernetes.io/is-default-class: "true" ... name: my-storage-class ... parameters: ... provisioner: [MY_PROVISIONER] ...
Simpan manifes Anda sebagai file YAML, dan buat StorageClass baru:
kubectl --kubeconfig [CLUSTER_KUBECONFIG] apply -f [MANIFEST_FILE]
dengan [MANIFEST_FILE] adalah jalur ke file manifes StorageClass baru Anda.