Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Panduan cepat ini menjelaskan cara mengonfigurasi cadangan yang disimpan di vault untuk kluster Azure Kubernetes Service (AKS) dengan Azure CLI.
Azure Backup for AKS adalah layanan backup berbasis cloud, siap untuk perusahaan, dan berorientasi aplikasi yang memungkinkan Anda mengonfigurasi backup dengan cepat untuk kluster AKS.
Sebelum memulai
Sebelum Anda mengonfigurasi cadangan vault untuk kluster AKS, pastikan prasyarat berikut terpenuhi:
- Lakukan semua prasyarat sebelum memulai operasi pencadangan AKS.
Buat Penyimpanan Cadangan
Untuk membuat vault Backup, jalankan perintah berikut:
az dataprotection backup-vault create --resource-group $backupvaultresourcegroup --vault-name $backupvault --location $region --type SystemAssigned --storage-settings datastore-type="VaultStore" type="GeoRedundant"
Vault yang baru dibuat memiliki pengaturan penyimpanan yang ditetapkan sebagai Redundansi Global, sehingga cadangan yang disimpan di level vault akan tersedia di wilayah berpasangan Azure. Setelah pembuatan vault selesai, buat kebijakan pencadangan untuk melindungi kluster AKS.
Buat kebijakan pencadangan
Ambil templat kebijakan menggunakan perintah az dataprotection backup-policy get-default-policy-template.
az dataprotection backup-policy get-default-policy-template --datasource-type AzureKubernetesService > akspolicy.json
Kami memperbarui templat default untuk kebijakan pencadangan dan menambahkan aturan retensi untuk mempertahankan pencadangan pertama yang berhasil per hari di tingkat Vault selama 30 hari.
az dataprotection backup-policy retention-rule create-lifecycle --count 30 --retention-duration-type Days --copy-option ImmediateCopyOption --target-datastore VaultStore --source-datastore OperationalStore > ./retentionrule.json
az dataprotection backup-policy retention-rule set --lifecycles ./retentionrule.json --name Daily --policy ./akspolicy.json > ./akspolicy.json
Setelah kebijakan JSON memiliki semua nilai yang diperlukan, lanjutkan untuk membuat kebijakan baru dari objek kebijakan.
az dataprotection backup-policy create -g testBkpVaultRG --vault-name TestBkpVault -n mypolicy --policy akspolicy.json
Menyiapkan kluster AKS untuk pencadangan
Setelah vault dan pembuatan kebijakan selesai, Anda perlu melakukan persyaratan awal berikut untuk menyiapkan kluster AKS untuk pencadangan:
Buat akun penyimpanan dan kontainer blob.
Backup untuk AKS menyimpan sumber daya Kubernetes dalam kontainer blob sebagai berkas cadangan. Untuk menyiapkan kluster AKS untuk pencadangan data, Anda perlu menginstal ekstensi di kluster. Ekstensi ini memerlukan akun penyimpanan dan kontainer blob sebagai input.
Untuk membuat akun penyimpanan baru, jalankan perintah berikut:
az storage account create --name $storageaccount --resource-group $storageaccountresourcegroup --location $region --sku Standard_LRSSetelah pembuatan akun penyimpanan selesai, buat kontainer blob di dalamnya dengan menjalankan perintah berikut:
az storage container create --name $blobcontainer --account-name $storageaccount --auth-mode loginInstal Ekstensi Pencadangan.
Ekstensi Cadangan wajib diinstal di kluster AKS untuk melakukan operasi pencadangan dan pemulihan apa pun. Ekstensi Cadangan membuat namespace
dataprotection-microsoftdi kluster dan menggunakan hal yang sama untuk menyebarkan sumber dayanya. Ekstensi memerlukan akun penyimpanan dan kontainer blob sebagai input untuk penginstalan.az k8s-extension create --name azure-aks-backup --extension-type microsoft.dataprotection.kubernetes --scope cluster --cluster-type managedClusters --cluster-name $akscluster --resource-group $aksclusterresourcegroup --release-train stable --configuration-settings blobContainer=$blobcontainer storageAccount=$storageaccount storageAccountResourceGroup=$storageaccountresourcegroup storageAccountSubscriptionId=$subscriptionIdSebagai bagian dari penginstalan ekstensi, identitas pengguna dibuat di Grup Sumber Daya Kumpulan Simpul kluster AKS. Agar ekstensi mengakses akun penyimpanan, Anda perlu memberikan identitas ini peran Kontributor Penyimpanan Data Blob. Untuk menetapkan peran yang diperlukan, jalankan perintah berikut:
az role assignment create --assignee-object-id $(az k8s-extension show --name azure-aks-backup --cluster-name $akscluster --resource-group $aksclusterresourcegroup --cluster-type managedClusters --query aksAssignedIdentity.principalId --output tsv) --role 'Storage Blob Data Contributor' --scope /subscriptions/$subscriptionId/resourceGroups/$storageaccountresourcegroup/providers/Microsoft.Storage/storageAccounts/$storageaccountAktifkan Akses Tepercaya
Agar brankas Backup tersambung dengan kluster AKS, Anda harus mengaktifkan Akses Tepercaya karena memungkinkan vault Backup memiliki garis pandang langsung ke kluster AKS.
Untuk mengaktifkan Akses Tepercaya, jalankan perintah berikut:
az aks trustedaccess rolebinding create --cluster-name $akscluster --name backuprolebinding --resource-group $aksclusterresourcegroup --roles Microsoft.DataProtection/backupVaults/backup-operator --source-resource-id /subscriptions/$subscriptionId/resourceGroups/$backupvaultresourcegroup/providers/Microsoft.DataProtection/BackupVaults/$backupvault
Mengonfigurasi cadangan terproteksi untuk kluster AKS
Dengan vault Backup dan kebijakan pencadangan yang dibuat, dan kluster AKS dalam status siap dicadangkan, Anda sekarang dapat mulai mencadangkan kluster AKS Anda.
Siapkan permintaan
Konfigurasi pencadangan dilakukan dalam dua langkah:
Siapkan konfigurasi cadangan untuk menentukan sumber daya kluster mana yang akan dicadangkan menggunakan perintah
az dataprotection backup-instance initialize-backupconfig. Perintah ini menghasilkan JSON, yang dapat Anda perbarui untuk menentukan konfigurasi cadangan untuk kluster AKS Anda sesuai kebutuhan.az dataprotection backup-instance initialize-backupconfig --datasource-type AzureKubernetesService > aksbackupconfig.jsonSiapkan permintaan yang relevan dengan menggunakan vault, kebijakan, kluster AKS, konfigurasi cadangan, dan grup sumber daya rekaman jepret yang sesuai, lalu eksekusi dengan perintah
az dataprotection backup-instance initialize.az dataprotection backup-instance initialize --datasource-id /subscriptions/$subscriptionId/resourceGroups/$aksclusterresourcegroup/providers/Microsoft.ContainerService/managedClusters/$akscluster --datasource-location $region --datasource-type AzureKubernetesService --policy-id /subscriptions/$subscriptionId/resourceGroups/$backupvaultresourcegroup/providers/Microsoft.DataProtection/backupVaults/$backupvault/backupPolicies/$backuppolicy --backup-configuration ./aksbackupconfig.json --friendly-name ecommercebackup --snapshot-resource-group-name $snapshotresourcegroup > backupinstance.json
Sekarang, gunakan output JSON dari perintah ini untuk mengonfigurasi cadangan untuk kluster AKS.
Menetapkan izin yang diperlukan dan memvalidasi
Dengan permintaan yang disiapkan, pertama-tama Anda perlu memvalidasi apakah peran yang diperlukan ditetapkan ke sumber daya yang terlibat dengan menjalankan perintah berikut:
az dataprotection backup-instance validate-for-backup --backup-instance ./backupinstance.json --ids /subscriptions/$subscriptionId/resourceGroups/$backupvaultresourcegroup/providers/Microsoft.DataProtection/backupVaults/$backupvault
Jika validasi gagal dan ada izin tertentu yang hilang, maka Anda dapat menetapkannya dengan menjalankan perintah berikut:
az dataprotection backup-instance update-msi-permissions command.
az dataprotection backup-instance update-msi-permissions --datasource-type AzureKubernetesService --operation Backup --permissions-scope ResourceGroup --vault-name $backupvault --resource-group $backupvaultresourcegroup --backup-instance backupinstance.json
Setelah izin ditetapkan, validasi ulang menggunakan perintah validasi sebelumnya untuk cadangan lalu lanjutkan untuk mengonfigurasi cadangan:
az dataprotection backup-instance create --backup-instance backupinstance.json --resource-group $backupvaultresourcegroup --vault-name $backupvault