Gunakan Pusat Cadangan untuk melakukan pencadangan dan pemulihan aplikasi antara kluster ACK dalam wilayah yang sama, sehingga memungkinkan pencadangan dan pemulihan bencana tingkat kluster.
Batasan
Kondisi berikut harus dipenuhi; jika tidak, migrasi akan gagal:
-
Kubernetes version: Kluster pemulihan harus menjalankan Kubernetes 1.18 atau versi lebih baru untuk menggunakan snapshot Elastic Compute Service (ECS) dalam pemulihan disk.
-
Storage plugin: Kluster pemulihan harus menggunakan plugin Container Storage Interface (CSI). Kluster yang menggunakan FlexVolume atau csi-compatible-controller dengan FlexVolume tidak didukung.
-
Komponen sistem: Instal dan konfigurasikan komponen-komponen berikut di kluster pemulihan sebelum memulihkan:
-
aliyun-acr-credential-helper: Berikan izin yang diperlukan dan konfigurasikanacr-configuration. -
alb-ingress-controller: Konfigurasikan resource ALBConfig.
-
-
Cross-region: Prosedur ini hanya mendukung migrasi dalam satu wilayah. Untuk migrasi lintas wilayah, lihat Migrasikan aplikasi antar kluster di wilayah berbeda.
-
Kompatibilitas volume plugin: Untuk kluster yang menggunakan volume plugin berbeda atau menjalankan versi Kubernetes lama, lihat Gunakan Pusat Cadangan untuk migrasikan aplikasi di kluster ACK yang menjalankan versi Kubernetes lama.
Prasyarat
Sebelum memulai:
-
Dua kluster ACK yang dikelola dalam wilayah yang sama: kluster backup dan kluster pemulihan
-
migrate-controller telah diinstal dengan izin yang diperlukan di kedua kluster
-
penyimpanan cadangan telah dibuat. Penyimpanan yang sudah ada akan terdeteksi secara otomatis selama instalasi.
Cara kerja
Penyimpanan cadangan bersama berfungsi sebagai perantara antar kluster. Saat Anda membuat tugas backup, Pusat Cadangan mengunggah status aplikasi dan data volume ke penyimpanan tersebut, lalu menyinkronkan catatan backup ke kluster pemulihan.
Saat pemulihan, versi API resource Kubernetes ditingkatkan secara otomatis agar sesuai dengan kluster pemulihan. Misalnya, Deployment yang menggunakan extensions/v1beta1 di Kubernetes 1.16 akan menjadi apps/v1 di Kubernetes 1.28.
Migrasikan aplikasi WordPress antar kluster ACK
Contoh ini menggunakan dua kluster ACK yang dikelola di wilayah China (Hohhot): Cluster_A (backup) dan Cluster_B (pemulihan). WordPress menggunakan volume disk untuk teks dan volume sistem file NAS untuk gambar.
Langkah 1: Siapkan kluster
-
Buat kluster ACK yang dikelola Cluster_A dan Cluster_B dalam wilayah yang sama. Tingkatkan Cluster_B ke Kubernetes 1.18 atau versi lebih baru untuk pemulihan disk berbasis snapshot ECS.
-
Instal WordPress di Cluster_A dengan Helm. Lihat Deploy aplikasi WordPress menggunakan Helm.
-
Publikasikan posting blog dengan gambar di WordPress. Hal ini akan mengisi volume disk (teks) dan volume NAS (gambar) untuk verifikasi pasca-migrasi.
Langkah 2: Instal migrate-controller dan buat penyimpanan cadangan di Cluster_A
Instal migrate-controller di Cluster_A, berikan izin yang diperlukan, dan buat penyimpanan cadangan. Lihat Instal migrate-controller dan berikan izin.
Jika penyimpanan cadangan sudah ada, sistem akan mendeteksinya secara otomatis.
Langkah 3: Backup aplikasi di Cluster_A
Buat tugas backup bernama 123backup-1 di Cluster_A untuk mencadangkan namespace default. Lihat Buat backup plan atau backup langsung.
Tunggu hingga status tugas backup berubah menjadi Completed. Catatan backup kemudian akan muncul di tab Backups and Snapshots pada halaman Application Backup di Cluster_B setelah sinkronisasi penyimpanan.
Langkah 4: Pulihkan aplikasi di Cluster_B
-
Pada halaman Application Backup di Cluster_B, klik Restore Now dan pilih penyimpanan cadangan bersama.
-
Jika diminta untuk melakukan inisialisasi penyimpanan, klik Initialize Backup Vault untuk mengaitkannya dengan Cluster_B.
-
Setelah inisialisasi, pilih file backup 123backup-1 dan mulai tugas pemulihan. Lihat Pulihkan aplikasi dan volume.
Langkah 5: Verifikasi migrasi
Verifikasi kesehatan workload:
-
Di panel navigasi kiri halaman detail Cluster_B, pilih Workloads > Deployments.
-
Temukan Deployment WordPress dan klik Details di kolom Actions.
-
Pastikan status Deployment adalah Running.
Verifikasi aksesibilitas dan integritas data:
-
Di panel navigasi kiri, pilih Network > Services.
-
Di halaman Services, temukan Service WordPress dan klik tautan External Endpoint.

-
Pastikan halaman utama WordPress dan posting blog beserta gambarnya muncul secara utuh.
Langkah berikutnya
-
Untuk mengelola backup dan pemulihan dari command line, lihat Gunakan kubectl untuk backup dan pulihkan aplikasi.
-
Untuk migrasi aplikasi antar wilayah, lihat Migrasikan aplikasi antar kluster di wilayah berbeda.
-
Untuk kluster yang menggunakan volume plugin atau versi Kubernetes berbeda, lihat Gunakan Pusat Cadangan untuk migrasikan aplikasi di kluster ACK yang menjalankan versi Kubernetes lama.