Mencadangkan Layanan Azure Kubernetes dengan menggunakan Azure Backup
Artikel ini menjelaskan cara mengonfigurasi dan mencadangkan Azure Kubernetes Service (AKS).
Anda dapat menggunakan Azure Backup untuk mencadangkan kluster AKS (sumber daya kluster dan volume persisten yang terpasang pada kluster) dengan menggunakan ekstensi Backup, yang harus diinstal di kluster. Vault Backup berkomunikasi dengan kluster melalui ekstensi Backup untuk melakukan operasi pencadangan dan pemulihan.
Catatan
Pencadangan vault dan Pemulihan Lintas Wilayah untuk AKS menggunakan Azure Backup saat ini dalam pratinjau.
Sebelum Anda mulai
- Saat ini, AKS Backup hanya mendukung volume persisten berbasis Azure Disk Storage yang diaktifkan oleh driver CSI. Cadangan disimpan di datastore operasional saja (data cadangan disimpan di penyewa Anda dan tidak dipindahkan ke vault). Vault Backup dan kluster AKS harus berada di wilayah yang sama.
- AKS Backup menggunakan kontainer blob dan grup sumber daya untuk menyimpan cadangan. Kontainer blob menyimpan sumber daya kluster AKS. Rekam jepret volume persisten disimpan dalam grup sumber daya. Kluster AKS dan lokasi penyimpanan harus berada di wilayah yang sama. Pelajari cara membuat kontainer blob.
- Saat ini, AKS Backup mendukung pencadangan sekali sehari. Ini juga mendukung cadangan yang lebih sering (dalam interval 4 jam, 8 jam, dan 12 jam) per hari. Solusi ini memungkinkan Anda menyimpan data untuk dapat dipulihkan hingga 360 hari. Pelajari cara membuat kebijakan pencadangan.
- Anda perlu menginstal ekstensi Backup untuk mengonfigurasi operasi pencadangan dan pemulihan untuk kluster AKS. Pelajari selengkapnya tentang ekstensi Backup.
- Pastikan Anda memiliki
Microsoft.KubernetesConfiguration
,Microsoft.DataProtection
, danMicrosoft.ContainerService
terdaftar untuk langganan Anda sebelum memulai konfigurasi pencadangan dan operasi pemulihan. - Pastikan Anda menyelesaikan semua prasyarat sebelum memulai operasi pencadangan atau pemulihan untuk Pencadangan AKS.
Untuk informasi selengkapnya tentang skenario, batasan, dan ketersediaan yang didukung, lihat matriks dukungan.
Membuat vault Pencadangan
Vault Backup adalah entitas manajemen yang menyimpan titik pemulihan yang dirawat dari waktu ke waktu. Vault Backup juga menyediakan antarmuka untuk melakukan operasi pencadangan. Operasi termasuk mengambil cadangan sesuai permintaan, melakukan pemulihan, dan membuat kebijakan pencadangan. Cadangan AKS mengharuskan vault Backup dan kluster AKS berada di wilayah yang sama. Pelajari cara membuat vault Backup.
Catatan
Vault Backup adalah sumber daya baru yang digunakan untuk mencadangkan sumber data yang baru didukung. Vault Backup berbeda dari vault Layanan Pemulihan.
Jika Anda ingin menggunakan Azure Backup untuk melindungi kluster AKS Anda dari pemadaman regional apa pun, Anda dapat mengaktifkan Pemulihan Lintas Wilayah. Untuk mengaktifkan Pemulihan Lintas Wilayah, Anda perlu:
Atur parameter Redundansi Penyimpanan Cadangan sebagai Geo-Redundan selama pembuatan vault. Setelah redundansi untuk vault diatur, Anda tidak dapat menonaktifkannya.
Atur parameter Pemulihan Lintas Wilayah di bawah Properti Vault sebagai Diaktifkan. Setelah parameter ini diaktifkan, Anda tidak dapat menonaktifkannya.
Buat Instans Cadangan menggunakan Kebijakan Cadangan dengan durasi retensi yang ditetapkan untuk datastore standar Vault. Setiap titik pemulihan yang disimpan di datastore ini akan berada di wilayah sekunder.
Buat kebijakan Cadangan
Sebelum mengonfigurasi cadangan, Anda perlu membuat kebijakan Pencadangan yang menentukan frekuensi pencadangan dan durasi retensi cadangan.
Untuk membuat kebijakan pencadangan:
Buka brankas Cadangan yang Anda buat, dan pilih Kelola>Kebijakan>pencadangan Tambahkan.
Masukkan nama untuk kebijakan pencadangan.
Untuk Jenis sumber data, pilih Layanan Kubernetes.
Pada tab Jadwal + retensi , tentukan jadwal pencadangan.
- Frekuensi Pencadangan: Pilih frekuensi pencadangan (per jam atau harian), lalu pilih durasi retensi untuk cadangan.
- Pengaturan Retensi: Kebijakan pencadangan baru memiliki aturan Default yang ditentukan secara default. Anda dapat mengedit aturan ini dan tidak dapat menghapusnya. Aturan default menentukan durasi retensi untuk semua cadangan tingkat operasional yang diambil. Anda juga dapat membuat aturan retensi tambahan untuk menyimpan cadangan untuk durasi yang lebih lama yang diambil setiap hari atau mingguan.
Anda juga dapat membuat aturan retensi ekstra untuk menyimpan cadangan untuk durasi yang lebih lama yang diambil setiap hari atau mingguan.
Catatan
- Selain pencadangan pertama yang berhasil pada hari itu, Anda dapat menentukan aturan retensi untuk pencadangan pertama yang berhasil dalam seminggu, bulan, dan tahun. Dalam hal prioritas, pesanannya adalah tahun, bulan, minggu, dan hari.
- Anda dapat menyalin cadangan di wilayah sekunder (wilayah Berpasangan Azure) yang disimpan di Tingkat Vault, yang dapat Anda gunakan untuk memulihkan kluster AKS ke wilayah sekunder saat wilayah utama tidak tersedia. Untuk memilih fitur ini, gunakan vault Geo-redundan dengan Pemulihan Lintas Wilayah diaktifkan.
Saat frekuensi pencadangan dan pengaturan retensi dikonfigurasi, pilih Berikutnya.
Pada tab Tinjau + buat , tinjau informasi, lalu pilih Buat.
Menginstal ekstensi Backup dan mengonfigurasi pencadangan
Anda dapat menggunakan Cadangan AKS untuk mencadangkan seluruh kluster atau sumber daya kluster tertentu yang disebarkan dalam kluster. Anda juga dapat melindungi kluster beberapa kali per persyaratan jadwal dan retensi aplikasi yang disebarkan atau persyaratan keamanan.
Catatan
Untuk menyiapkan beberapa instans cadangan untuk kluster AKS yang sama:
- Konfigurasikan cadangan dalam vault Backup yang sama tetapi menggunakan kebijakan pencadangan yang berbeda.
- Konfigurasikan cadangan dalam vault Backup yang berbeda.
Menginstal ekstensi Backup
Untuk mengonfigurasi cadangan untuk kluster AKS:
Di portal Azure, buka kluster AKS yang ingin Anda cadangkan.
Dari menu layanan, di bawah Pengaturan, pilih Cadangan.
Untuk menyiapkan kluster AKS untuk pencadangan atau pemulihan, pilih Instal Ekstensi untuk menginstal ekstensi Cadangan di kluster.
Berikan akun penyimpanan dan kontainer blob sebagai input.
Cadangan kluster AKS Anda disimpan dalam kontainer blob ini. Akun penyimpanan harus berada di wilayah dan langganan yang sama dengan kluster.
Pilih Selanjutnya. Tinjau detail penginstalan ekstensi, lalu pilih Buat.
Penginstalan ekstensi dimulai.
Konfigurasikan pencadangan
Saat ekstensi Cadangan berhasil diinstal, pilih Konfigurasikan cadangan.
Pilih vault Backup yang Anda buat sebelumnya. Brankas Cadangan harus mengaktifkan Akses Tepercaya agar kluster AKS dicadangkan. Untuk mengaktifkan Akses Tepercaya, pilih Berikan Izin. Jika sudah diaktifkan, pilih Berikutnya.
Pada tab Kebijakan pencadangan, pilih kebijakan pencadangan, yang menentukan jadwal pencadangan dan periode retensinya, lalu pilih Berikutnya.
Pada tab Sumber data, pilih Tambahkan/Edit untuk menentukan konfigurasi instans cadangan.
Pada panel Pilih Sumber Daya ke Cadangan , tentukan sumber daya kluster yang ingin Anda cadangkan.
Pelajari selengkapnya tentang konfigurasi cadangan.
Untuk Grup sumber daya rekam jepret, pilih grup sumber daya yang akan digunakan untuk menyimpan rekam jepret volume persisten (Azure Disk Storage), lalu pilih Validasi.
Setelah validasi selesai, jika peran yang diperlukan tidak ditetapkan ke vault di grup sumber daya rekam jepret, kesalahan muncul:
Untuk mengatasi kesalahan, di bawah Nama sumber data, pilih kotak centang untuk sumber data, lalu pilih Tetapkan peran yang hilang.
Saat penetapan peran selesai, pilih Berikutnya>Konfigurasikan pencadangan.
Konfigurasi pencadangan
Azure Backup for AKS memungkinkan Anda menentukan batas aplikasi dalam kluster AKS yang ingin Anda cadangkan. Anda dapat menggunakan filter yang tersedia dalam konfigurasi cadangan untuk memilih sumber daya yang akan dicadangkan dan juga untuk menjalankan kait kustom. Konfigurasi cadangan yang ditentukan dirujuk oleh nilai untuk Nama Instans Cadangan. Filter di bawah ini tersedia untuk menentukan batas aplikasi Anda:
Pilih Pilih Namespace layanan untuk dicadangkan. Anda dapat memilih Semua untuk mencadangkan semua namespace layanan yang ada dan yang akan datang di kluster, atau Anda dapat memilih namespace khusus untuk cadangan.
Namespace berikut dilewati dari konfigurasi Cadangan:
kube-system
, ,kube-node-lease
dankube-public
.Perluas Pengaturan Sumber Daya Tambahan untuk melihat filter yang dapat Anda gunakan untuk memilih sumber daya kluster untuk dicadangkan. Anda dapat memilih untuk mencadangkan sumber daya berdasarkan kategori berikut:
- Label: Anda dapat memfilter sumber daya AKS dengan menggunakan label yang Anda tetapkan ke jenis sumber daya. Masukkan label dalam bentuk pasangan kunci/nilai. Anda dapat menggabungkan beberapa label menggunakan
AND
logika. Misalnya, jika Anda memasukkan labelenv=prod;tier!=web
, proses memilih sumber daya yang memiliki label denganenv
kunci danprod
nilai, dan label dengantier
kunci yang nilainya bukanweb
. - Grup API: Anda juga dapat menyertakan sumber daya dengan menyediakan grup dan jenis API AKS. Misalnya, Anda dapat memilih untuk sumber daya AKS cadangan seperti Penyebaran. Anda dapat mengakses daftar Grup API yang ditentukan Kubernetes di sini.
- Opsi lain: Anda dapat mengaktifkan atau menonaktifkan pencadangan untuk sumber daya cakupan kluster, volume persisten, dan rahasia. Sumber daya cakupan kluster dan volume persisten diaktifkan secara default.
- Label: Anda dapat memfilter sumber daya AKS dengan menggunakan label yang Anda tetapkan ke jenis sumber daya. Masukkan label dalam bentuk pasangan kunci/nilai. Anda dapat menggabungkan beberapa label menggunakan
Catatan
Anda harus menambahkan label ke setiap file YAML tunggal yang disebarkan dan akan dicadangkan. Ini termasuk sumber daya cakupan namespace seperti klaim volume persisten, dan sumber daya cakupan kluster seperti volume persisten.
Menggunakan kait selama Pencadangan AKS
Bagian ini menjelaskan cara menggunakan kait cadangan untuk membuat rekam jepret yang konsisten dengan aplikasi dari kluster AKS dengan MySQL yang disebarkan (volume persisten yang berisi instans MySQL).
Anda dapat menggunakan kait kustom dalam cadangan AKS untuk mencapai rekam jepret volume yang konsisten dengan aplikasi. Volume digunakan untuk database yang disebarkan sebagai beban kerja dalam kontainer.
Dengan menggunakan hook cadangan, Anda dapat menentukan perintah untuk membekukan dan mencairkan pod MySQL sehingga rekam jepret aplikasi volume dapat diambil. Ekstensi Backup kemudian mengatur langkah-langkah menjalankan perintah di kait dan mengambil rekam jepret volume.
Rekam jepret volume yang konsisten dengan aplikasi dengan MySQL yang disebarkan diambil dengan melakukan tindakan berikut:
- Pod yang menjalankan MySQL dibekukan sehingga tidak ada transaksi baru yang dilakukan pada database.
- Rekam jepret diambil dari volume sebagai cadangan.
- Pod yang menjalankan MySQL tidak difrozen sehingga transaksi dapat dilakukan lagi pada database.
Untuk mengaktifkan hook cadangan sebagai bagian dari alur konfigurasi cadangan untuk mencadangkan MySQL:
Tulis sumber daya kustom untuk hook cadangan dengan perintah untuk membekukan dan mencairkan pod PostgreSQL.
Anda juga dapat menggunakan contoh skrip YAML berikut postgresbackuphook.yaml, yang memiliki perintah yang telah ditentukan sebelumnya:
apiVersion: clusterbackup.dataprotection.microsoft.com/v1alpha1 kind: BackupHook metadata: # BackupHook CR Name and Namespace name: bkphookname0 namespace: default spec: # BackupHook Name. This is the name of the hook that will be executed during backup. # compulsory name: hook1 # Namespaces where this hook will be executed. includedNamespaces: - hrweb excludedNamespaces: labelSelector: # PreHooks is a list of BackupResourceHooks to execute prior to backing up an item. preHooks: - exec: command: - /sbin/fsfreeze - --freeze - /var/lib/postgresql/data container: webcontainer onError: Continue # PostHooks is a list of BackupResourceHooks to execute after backing up an item. postHooks: - exec: container: webcontainer command: - /sbin/fsfreeze - --unfreeze onError: Fail timeout: 10s
Sebelum mengonfigurasi cadangan, Anda harus menyebarkan sumber daya kustom hook cadangan di kluster AKS.
Untuk menyebarkan skrip, jalankan perintah berikut:
kubectl apply -f mysqlbackuphook.yaml
Setelah penyebaran selesai, Anda dapat mengonfigurasi cadangan untuk kluster AKS.
Catatan
Sebagai bagian dari konfigurasi cadangan, Anda harus memberikan nama sumber daya kustom dan namespace layanan tempat sumber daya disebarkan sebagai input.