Halaman ini menjelaskan cara membuat salinan, atau snapshot, volume penyimpanan pada titik waktu tertentu untuk aplikasi container Anda. Snapshot volume memungkinkan Anda mengembalikan volume ke status sebelumnya atau menyediakan volume baru.
Halaman ini ditujukan bagi developer dalam grup operator aplikasi, yang bertanggung jawab membuat workload aplikasi untuk organisasi mereka.
Sebelum memulai
Untuk menjalankan perintah terhadap cluster Kubernetes bare metal yang telah dikonfigurasi sebelumnya, pastikan Anda memiliki resource berikut:
Temukan nama cluster Kubernetes, atau tanyakan kepada Administrator Platform Anda nama cluster tersebut.
Login dan buat file kubeconfig untuk cluster Kubernetes jika Anda belum memilikinya.
Gunakan jalur kubeconfig cluster Kubernetes untuk mengganti
CLUSTER_KUBECONFIG
dalam petunjuk ini.
Untuk mendapatkan izin yang diperlukan guna mengelola snapshot volume, minta Admin IAM Organisasi Anda untuk memberi Anda peran Namespace Admin (namespace-admin
) di namespace project Anda.
Mengambil snapshot volume
Untuk mengambil snapshot objek PersistentVolumeClaim
, buat objek
VolumeSnapshot
. Sistem tidak menjamin konsistensi data. Jeda
aplikasi dan kosongkan data sebelum mengambil snapshot.
Buat resource kustom
VolumeSnapshot
:kubectl --kubeconfig CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: snapshot.storage.k8s.io/v1 kind: VolumeSnapshot metadata: name: VOLUME_SNAPSHOT_NAME spec: source: persistentVolumeClaimName: PVC_NAME EOF
Ganti kode berikut:
CLUSTER_KUBECONFIG
: file kubeconfig untuk cluster Kubernetes.NAMESPACE
: namespace project tempat membuat snapshot volume.VOLUME_SNAPSHOT_NAME
: nama objekVolumeSnapshot
.PVC_NAME
: nama PVC yang akan Anda buatkan snapshot-nya.
Operasi snapshot selesai saat kolom
.status.readyToUse
menjaditrue
. Anda dapat menggunakan perintah berikut untuk memeriksa status:kubectl --kubeconfig CLUSTER_KUBECONFIG get volumesnapshot \ -o custom-columns='NAME:.metadata.name,READY:.status.readyToUse'
Perbarui manifes PVC dengan snapshot volume yang ditentukan sebagai sumber data:
kubectl --kubeconfig CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: dataSource: name: VOLUME_SNAPSHOT_NAME kind: VolumeSnapshot apiGroup: snapshot.storage.k8s.io storageClassName: standard-rwo accessModes: - ReadWriteOnce resources: requests: storage: 10Gi EOF
Ganti kode berikut:
CLUSTER_KUBECONFIG
: file kubeconfig untuk cluster Kubernetes.NAMESPACE
: namespace tempat resource PVC berada.PVC_NAME
: nama PVC yang akan Anda buatkan snapshot-nya.VOLUME_SNAPSHOT_NAME
: nama snapshot volume.