Menetapkan StorageClass default

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.

Langkah selanjutnya