Dokumen ini menjelaskan cara mencadangkan dan memulihkan cluster admin dan pengguna Google Distributed Cloud versi 1.32 dan yang lebih tinggi yang mengaktifkan cluster lanjutan. Fitur pencadangan dan pemulihan tersedia dalam Pratinjau di versi 1.32 dan GA di versi 1.33 dan yang lebih tinggi.
Proses pencadangan dan pemulihan gkectl
tidak mencakup volume persisten. Semua
volume yang dibuat oleh penyedia volume lokal (LVP) tidak diubah.
Mencadangkan cluster
Perintah gkectl backup cluster
menambahkan informasi cluster dari penyimpanan etcd dan sertifikat PKI untuk cluster yang ditentukan ke file tar. Penyimpanan etcd adalah penyimpanan pendukung Kubernetes untuk semua data cluster dan berisi semua objek Kubernetes dan objek kustom yang diperlukan untuk mengelola status cluster. Sertifikat PKI digunakan untuk autentikasi melalui Transport Layer Security (TLS).
Data ini dicadangkan dari bidang kontrol cluster atau dari salah satu bidang kontrol untuk deployment ketersediaan tinggi (HA).
File tar cadangan berisi kredensial sensitif, termasuk kunci akun layanan dan kunci SSH Anda. Simpan file cadangan di lokasi yang aman. Untuk mencegah eksposur file yang tidak diinginkan, proses pencadangan hanya menggunakan file dalam memori.
Cadangkan cluster Anda secara rutin untuk memastikan data snapshot Anda relatif baru. Sesuaikan frekuensi pencadangan untuk mencerminkan frekuensi perubahan signifikan pada cluster Anda.
Sebelum memulai, pastikan cluster Anda beroperasi dengan benar, dengan kredensial yang berfungsi dan konektivitas SSH ke semua node. Tujuan dari proses pencadangan adalah untuk merekam cluster Anda dalam kondisi baik yang diketahui sehingga Anda dapat memulihkan operasi jika terjadi kegagalan yang parah.
Untuk mencadangkan cluster:
Jalankan perintah berikut untuk memeriksa cluster Anda:
gkectl diagnose cluster --cluster-name CLUSTER_NAME \ --kubeconfig ADMIN_KUBECONFIG
Ganti kode berikut:
CLUSTER_NAME: nama cluster yang akan Anda cadangkan.
ADMIN_KUBECONFIG: jalur file kubeconfig untuk admin cluster.
Jalankan perintah yang berlaku untuk mencadangkan cluster:
Cluster admin
gkectl backup admin --kubeconfig ADMIN_KUBECONFIG
Cluster pengguna
gkectl backup cluster --cluster-name CLUSTER_NAME \ --kubeconfig ADMIN_KUBECONFIG
Secara default, file tar cadangan disimpan ke direktori
gkectl-workspace/backups
di workstation admin Anda. File tar diberi nama
CLUSTER_NAME_backup_TIMESTAMP.tar.gz
,
dengan CLUSTER_NAME
adalah nama
cluster yang dicadangkan dan TIMESTAMP
adalah tanggal dan waktu
pencadangan dilakukan. Misalnya, jika nama cluster adalah testuser
, file
cadangan memiliki nama seperti testuser_backup_2025-08-23T150405Z0700.tar.gz
.
Atau, Anda dapat menentukan nama dan lokasi yang berbeda untuk file cadangan
dengan tanda --backup-file
, misalnya:
gkectl backup cluster testuser \
--kubeconfig admin-cluster/kubeconfig \
--backup-file cluster-backups/testuser-backup-aug-23-2025.tar.gz
File cadangan akan berakhir setelah satu tahun dan proses pemulihan cluster tidak berfungsi dengan file cadangan yang sudah berakhir.
Mencadangkan ke vSphere
Untuk mengonfigurasi pencadangan sehingga file cadangan untuk cluster admin dan pengguna diupload ke vSphere selain disimpan di workstation admin Anda, lakukan hal berikut:
Tambahkan kolom clusterBackup.datastore ke file konfigurasi cluster admin Anda:
clusterBackup: datastore: DATASTORE
Ganti
DATASTORE
dengan datastore tempat Anda ingin menyimpan cadangan. Datastore harus berada di pusat data yang sama dengan cluster admin. Cadangan terletak di direktorianthos/CLUSTER_NAME/backup
dari datastore yang ditentukan.Perbarui cluster admin:
gkectl update admin --kubeconfig ADMIN_KUBECONFIG \ --config ADMIN_CONFIG
Ganti kode berikut:
ADMIN_KUBECONFIG
: jalur file kubeconfig untuk admin cluster.ADMIN_CONFIG
: jalur file konfigurasi cluster admin.
Secara default, perintah gkectl backup
menyimpan tiga file cadangan
terbaru di vSphere dan menghapus file cadangan yang lebih lama. Jika Anda ingin menyimpan file cadangan yang lebih lama, tambahkan tanda --keep-all-backups
, yang tersedia di versi 1.32.100 dan yang lebih baru.
Memulihkan cluster
Memulihkan cluster dari cadangan adalah pilihan terakhir dan hanya boleh digunakan jika cluster mengalami kegagalan parah dan tidak dapat diaktifkan kembali dengan cara lain. Misalnya, data etcd rusak atau Pod etcd berada dalam loop error.
Gunakan perintah gkectl restore
hanya jika ketiga node bidang kontrol gagal.
Jika hanya satu node yang gagal, dan
autoRepair.enabled
disetel ketrue
dalam file konfigurasi cluster admin, node yang gagal akan diperbaiki secara otomatis. JikaautoRepair.enabled
belum dikonfigurasi, tambahkan ke file konfigurasi cluster admin dan jalankangkectl update admin
. Setelah update, node akan otomatis dibuat ulang.Jika dua node bidang kontrol gagal, lihat bagian Memulihkan kuorum di halaman ini.
File tar cadangan berisi kredensial sensitif, termasuk kunci akun layanan dan kunci SSH Anda. Untuk mencegah eksposur file yang tidak diinginkan, proses pemulihan Google Distributed Cloud hanya menggunakan file dalam memori.
Sebelum Anda memulihkan cluster, pastikan kondisi berikut terpenuhi:
- Semua mesin node bidang kontrol yang tersedia untuk cluster pada saat pencadangan beroperasi dengan baik dan dapat dijangkau.
- Konektivitas SSH antar-node berfungsi dengan kunci SSH yang digunakan pada saat pencadangan. Kunci SSH ini diaktifkan kembali sebagai bagian dari proses pemulihan.
- Kunci akun layanan yang digunakan pada saat pencadangan masih aktif. Kunci akun layanan ini diaktifkan kembali untuk cluster yang dipulihkan.
Untuk memulihkan cluster:
Jalankan perintah yang sesuai untuk memulihkan cluster:
Cluster admin
gkectl restore admin --backup-file BACKUP_FILE \ --config ADMIN_CONFIG
Ganti kode berikut:
BACKUP_FILE
: jalur dan nama file cadangan yang Anda gunakan.ADMIN_CONFIG
: jalur ke file konfigurasi cluster admin.
Cluster pengguna
gkectl restore cluster --cluster-name CLUSTER_NAME \ --backup-file BACKUP_FILE \ --kubeconfig ADMIN_KUBECONFIG
Ganti kode berikut:
CLUSTER_NAME
: nama cluster yang Anda pulihkan.BACKUP_FILE
: jalur dan nama file cadangan yang Anda gunakan.ADMIN_KUBECONFIG
: jalur ke file kubeconfig cluster admin.
Di akhir proses pemulihan, file kubeconfig baru dibuat untuk cluster yang dipulihkan di direktori ruang kerja
gkectl-workspace
.Setelah pemulihan selesai, jalankan perintah berikut untuk memverifikasi bahwa pemulihan berhasil:
gkectl diagnose cluster --cluster-name CLUSTER_NAME \ --kubeconfig GENERATED_KUBECONFIG
Ganti
GENERATED_KUBECONFIG
dengan file kubeconfig yang dihasilkan.
Memulihkan kuorum
Jika dua node bidang kontrol gagal di cluster, Anda dapat menggunakan perintah
gkectl restore
untuk memulihkan kuorum. Saat memulihkan kuorum, alih-alih
menentukan file cadangan ke perintah gkectl restore
, Anda menentukan alamat IP
node bidang kontrol yang berfungsi.
Sebelum menjalankan perintah, pastikan kondisi berikut terpenuhi:
- Ada satu (dan hanya satu) node bidang kontrol yang berfungsi.
- Node bidang kontrol yang berfungsi dapat diakses dengan kunci SSH. Untuk mengetahui informasi selengkapnya, lihat Menggunakan SSH untuk terhubung ke node cluster.
Untuk memulihkan kuorum, jalankan perintah yang sesuai untuk jenis cluster Anda:
Cluster admin
gkectl restore admin --kubeconfig ADMIN_KUBECONFIG \
--config ADMIN_CONFIG \
--control-plane-node WORKING_NODE_IP \
--ssh-key ADMIN_SSH_KEY_PATH
Ganti kode berikut:
ADMIN_KUBECONFIG
: jalur file kubeconfig untuk admin cluster.ADMIN_CONFIG
: jalur file konfigurasi cluster admin.WORKING_NODE_IP
: alamat IP node bidang kontrol yang berfungsi.ADMIN_SSH_KEY_PATH
: jalur kunci SSH cluster admin.
Cluster pengguna
gkectl restore cluster --cluster-name CLUSTER_NAME \
--kubeconfig ADMIN_KUBECONFIG \
--control-plane-node WORKING_NODE_IP \
--ssh-key USER_SSH_KEY_PATH
Ganti kode berikut:
CLUSTER_NAME
: nama cluster yang Anda pulihkan.ADMIN_KUBECONFIG
: jalur ke file kubeconfig cluster admin.WORKING_NODE_IP
: alamat IP node bidang kontrol yang berfungsi.USER_SSH_KEY_PATH
: jalur kunci SSH cluster pengguna.
Memecahkan masalah
Jika Anda mengalami masalah dengan proses pencadangan atau pemulihan, bagian berikut dapat membantu Anda memecahkan masalah tersebut.
Jika Anda memerlukan bantuan tambahan, hubungi tim Cloud Customer Care.
Kehabisan memori selama pencadangan atau pemulihan
Jika workstation tempat Anda menjalankan perintah gkectl
tidak memiliki banyak RAM, Anda mungkin tidak memiliki cukup memori untuk melakukan proses pencadangan atau pemulihan. Jika
diperlukan, buat dan gunakan disk sementara untuk memproses operasi pencadangan atau pemulihan
dengan menggunakan parameter --use-disk
dalam perintah pencadangan. Untuk
mempertahankan izin file, parameter ini mengubah izin file,
sehingga Anda harus menjalankan perintah sebagai pengguna root (atau menggunakan sudo
).
Memuat ulang kunci SSH setelah pencadangan mengganggu proses pemulihan
Operasi terkait SSH selama proses pemulihan mungkin gagal jika kunci SSH diubah setelah pencadangan dilakukan. Dalam hal ini, kunci SSH baru menjadi tidak valid untuk proses pemulihan. Untuk mengatasi masalah ini, Anda dapat menambahkan kembali kunci SSH asli untuk sementara, lalu melakukan pemulihan. Setelah proses pemulihan selesai, Anda dapat mengganti kunci SSH.