Memigrasikan akun Azure Cosmos DB dari mode cadangan berkala ke berkelanjutan

BERLAKU UNTUK: Nosql MongoDB Gremlin Meja

Akun Azure Cosmos DB dengan kebijakan pencadangan mode berkala dapat dimigrasikan ke mode berkelanjutan menggunakan templat portal Azure, CLI, PowerShell, atau Resource Manager. Migrasi dari mode berkala ke berkelanjutan adalah migrasi satu arah dan tidak dapat dibalik. Setelah bermigrasi dari mode berkala ke berkelanjutan, Anda dapat memanfaatkan keuntungan dari mode berkelanjutan.

Berikut ini adalah alasan utama untuk bermigrasi ke mode berkelanjutan:

  • Kemampuan untuk melakukan pemulihan mandiri menggunakan portal Azure, CLI, atau PowerShell.
  • Kemampuan untuk memulihkan pada waktu secara detail dalam hitungan detik selama 30 hari atau 7 hari terakhir.
  • Kemampuan untuk memastikan bahwa cadangan di seluruh pecahan atau rentang kunci partisi konsisten dalam suatu periode.
  • Kemampuan untuk memulihkan kontainer, database, atau akun sepenuhnya ketika dihapus atau diubah.
  • Kemampuan untuk memilih peristiwa di kontainer, database, atau akun dan memutuskan kapan pemulihan dimulai.

Catatan

Kemampuan migrasi hanya satu arah dan merupakan tindakan yang tidak dapat diubah. Yang berarti setelah bermigrasi dari mode berkala ke mode berkelanjutan, Anda tidak dapat beralih kembali ke mode berkala.

Anda dapat memigrasikan akun ke mode pencadangan berkelanjutan hanya jika syarat berikut benar. Periksa juga batasan pemulihan titik waktu sebelum memigrasikan akun Anda:

  • Jika akun berjenis API untuk NoSQL,API untuk Table, Gremlin atau API untuk MongoDB.
  • Jika akun memiliki satu wilayah penulisan.
  • Jika akun tidak diaktifkan dengan penyimpanan analitis.

Jika akun menggunakan kunci yang dikelola pelanggan, identitas terkelola (Ditetapkan sistem atau Ditetapkan pengguna) harus dideklarasikan dalam kebijakan akses Key Vault dan harus ditetapkan sebagai identitas default pada akun.

Izin

Untuk melakukan migrasi, Anda memerlukan izin Microsoft.DocumentDB/databaseAccounts/write untuk akun yang sedang dimigrasikan.

Harga setelah migrasi

Setelah Anda memigrasikan akun ke mode pencadangan berkelanjutan, biaya dalam mode ini akan berbeda jika dibandingkan dengan mode pencadangan berkala. Pilihan tingkat 30 hari versus tujuh hari juga berpengaruh pada biaya cadangan. Untuk mempelajari selengkapnya, lihat harga mode pencadangan berkelanjutan.

Bermigrasi menggunakan portal

Gunakan langkah-langkah berikut untuk memigrasikan akun Anda dari pencadangan berkala ke mode pencadangan berkelanjutan:

  1. Masuk ke portal Azure.

  2. Navigasi ke akun Azure Cosmos DB Anda dan buka panel Pencadangan & Pemulihan . Pilih tab Kebijakan Pencadangan dan pilih ubah. Setelah Anda memilih mode berkelanjutan target, pilih Simpan.

    Migrate to continuous mode using Azure portal

  3. Saat migrasi sedang berlangsung, popup menampilkan Memperbarui pengaturan kebijakan Pencadangan. Jika Anda memilih pemberitahuan tersebut, Anda mungkin melihat Memperbarui pada tingkat akun dan Migrasi untuk kebijakan Pencadangan pada gambaran umum akun. Setelah selesai, kebijakan pencadangan akan beralih ke tingkat mode Berkelanjutan yang telah dipilih. Waktu migrasi tergantung pada ukuran data di akun Anda.

    Check the status of migration from Azure portal

Bermigrasi menggunakan PowerShell

  1. Instal versi terbaru Azure PowerShell atau versi yang lebih baru dari 6.2.0.

  2. Untuk menggunakan mode Continous7Days untuk provisi atau migrasi, Anda harus menggunakan pratinjau ekstensi cosmosdb. Menggunakan Install-Module -Name Az.CosmosDB -AllowPrerelease

  3. Selanjutnya, jalankan langkah-langkah berikut:

    1. Sambungkan ke akun Azure Anda:

      Connect-AzAccount
      
    2. Memigrasikan akun Anda dari mode pencadangan berkala ke berkelanjutan dengan tingkat continuous30days atau continuous7days hari. Jika nilai tingkat tidak disediakan akan diasumsikan sebagai continuous30days:

      Update-AzCosmosDBAccount ` 
         -ResourceGroupName "myrg" ` 
         -Name "myAccount" `
         -BackupPolicyType "Continuous"
      
         Update-AzCosmosDBAccount ` 
         -ResourceGroupName "myrg" ` 
         -Name "myAccount" `
         -BackupPolicyType "Continuous" `
         -ContinuousTier "Continuous7Days"
      

Bermigrasi menggunakan CLI

  1. Instal versi terbaru Azure CLI:
  • Jika Anda belum menginstal Azure CLI, harap lihat Menginstal Azure CLI. Selain itu, Anda dapat menggunakan Azure Cloud Shell di portal Microsoft Azure.
  1. Masuk ke akun Azure Anda dan jalankan perintah berikut untuk memigrasikan akun ke mode berkelanjutan:

    az login
    
  2. Migrasikan akun ke tingkat continuous30days atau continuous7days. Jika nilai tingkat tidak disediakan, ia akan diasumsikan sebagai continuous30days:

    az cosmosdb update -n <myaccount> -g <myresourcegroup> --backup-policy-type continuous
    
    az cosmosdb update -g "my-rg" -n "my-continuous-backup-account" --backup-policy-type "Continuous" --continuous-tier "Continuous7Days"
    
  3. Setelah migrasi berhasil diselesaikan, output menunjukkan objek backupPolicy, yang mencakup properti type dengan nilai Continuous.

     {
       "apiProperties": null,
       "backupPolicy": {
            "continuousModeProperties": {
                    "tier": "Continuous7Days"
            },
            "migrationState": null,
            "type": "Continuous"
       },
          …
     }
    

Memeriksa status migrasi

Jalankan perintah berikut ini dan periksa status dan properti targetType dari objek backupPolicy. Status menunjukkan kemajuan setelah migrasi dimulai:

az cosmosdb show -n "myAccount" -g "myrg"

Check the migration status using PowerShell command

Ketika migrasi selesai, jenis cadangan akan berubah menjadi Berkelanjutan dan menunjukkan tingkat yang dipilih. Jika tingkat tidak disediakan, tingkat tersebut akan diatur ke Continuous30Days. Jalankan perintah yang sama lagi untuk memeriksa status:

az cosmosdb show -n "myAccount" -g "myrg"

Backup type changes to continuous after the migration is complete

Memigrasikan dari mode berkala ke mode Berkelanjutan menggunakan template Azure Resource Manager

Untuk bermigrasi ke mode pencadangan berkelanjutan menggunakan templat ARM, temukan bagian backupPolicy dari templat Anda dan perbarui properti type. Misalnya, jika templat Anda yang ada memiliki kebijakan pencadangan seperti objek JSON berikut:

"backupPolicy": {
   "type": "Periodic",
   "periodicModeProperties": {
   "backupIntervalInMinutes": 240,
   "backupRetentionIntervalInHours": 8
   }
}

Ganti templat dengan objek JSON berikut:

"backupPolicy": { 
   "type": "Continuous", 
   "continuousModeProperties": { 
      "tier": "Continuous7Days" 
    } 
} 

Berikutnya terapkan templat dengan menggunakan Microsoft Azure PowerShell atau CLI. Contoh berikut ini memperlihatkan cara menggunakan templat dengan perintah CLI:

az deployment group create -g <ResourceGroup> --template-file <ProvisionTemplateFilePath>

Mengubah tingkat dari Mode Berkelanjutan

Anda dapat beralih antara Continuous30Days dan Continous7Days pada Azure PowerShell, Azure CLI, atau portal Microsoft Azure.

Di portal untuk akun Azure Cosmos DB tertentu, pilih panel Pemulihan Titik Waktu, pilih tautan perubahan di samping Mode kebijakan Cadangan untuk menunjukkan opsi Berkelanjutan (30 hari) atau Berkelanjutan (7 hari). Pilih target yang diperlukan dan pilih Simpan.

Screenshot of dialog to select tier of continuous mode.

Perintah Azure CLI berikut ini akan menampilkan contoh pengalihan akun yang sudah ada ke Continous7Days:

az cosmosdb update \ 
    --resource-group "my-rg" \ 
    --name "my-continuous-backup-account" \ 
    --backup-policy-type "Continuous" \ 
    --continuous-tier "Continuous7Days" 

Perintah Azure PowerShell berikut ini akan menampilkan contoh pengalihan akun yang sudah ada ke Continous7Days:

Update-AzCosmosDBAccount ` 
    -ResourceGroupName "myrg" ` 
    -Name "myAccount" `
    -BackupPolicyType Continuous `
    -ContinuousTier Continuous7Days

Anda juga dapat menggunakan template ARM dengan metode yang mirip dengan menggunakan Azure CLI serta Azure PowerShell.

Catatan

Ketika mengubah dari tingkat 30 menjadi 7 hari, kemampuan untuk memulihkan lebih dari 7 hari secara historis tidak akan tersedia. Saat mengubah tingkat dari 7 menjadi 30 hari, Anda tidak akan dapat segera memulihkannya lebih dari 7 hari. Waktu paling awal untuk memulihkannya dapat diekstraksi dari metadata akun yang tersedia melalui Azure Powershell atau Azure CLI. Dampak harga peralihan antara tingkat 7 serta 30 hari juga akan segera terlihat.

Apa yang akan terjadi selama dan setelah migrasi?

Ketika bermigrasi dari mode berkala ke mode berkelanjutan, Anda tidak dapat menjalankan operasi sarana kontrol apa pun yang melakukan pembaruan atau penghapusan tingkat akun. Misalnya, operasi seperti menambahkan atau menghapus wilayah, failover akun, memperbarui kebijakan cadangan dll tidak dapat dijalankan saat migrasi sedang berlangsung. Waktu migrasi tergantung pada ukuran data dan jumlah wilayah di akun Anda. Tindakan pemulihan pada akun yang dimigrasikan hanya dapat berhasil jika migrasi berhasil diselesaikan.

Anda dapat memulihkan akun setelah migrasi selesai. Jika migrasi selesai pada pukul 13.00 PST, Anda dapat melakukan pemulihan titik waktu tertentu mulai dari pukul 13.00 PST.

Pertanyaan yang Sering Ditanyakan

Apakah migrasi hanya dilakukan pada tingkat akun?

Ya.

Akun mana yang dapat ditargetkan untuk migrasi cadangan?

Saat ini, API untuk NoSQL, API untuk Table, Gremlin API, dan API untuk akun MongoDB dengan wilayah tulis tunggal yang telah berbagi, disediakan, atau migrasi dukungan throughput yang disediakan skala otomatis.

Akun yang diaktifkan dengan penyimpanan analitik dan beberapa wilayah tulis tidak didukung untuk migrasi.

Apakah migrasi membutuhkan waktu? Berapa lama biasanya?

Migrasi membutuhkan waktu, dan itu tergantung ukuran data serta jumlah wilayah di akun Anda. Anda bisa mendapatkan status migrasi menggunakan perintah Azure CLI atau PowerShell. Untuk akun besar dengan data sebesar 10 terabyte, operasi migrasi dapat memakan waktu hingga beberapa hari.

Apakah migrasi menyebabkan dampak ketersediaan/waktu henti?

Tidak, operasi migrasi berlangsung di latar belakang. Dengan demikian, permintaan klien tidak terpengaruh. Namun, kita perlu melakukan beberapa operasi backend selama migrasi dan mungkin akan memerlukan waktu tambahan jika akun berbeban berat.

Apa yang terjadi jika migrasi gagal? Apakah saya akan tetap mendapatkan pencadangan berkala atau mendapatkan pencadangan berkelanjutan?

Setelah proses migrasi dimulai, akun akan diaktifkan dalam mode berkelanjutan. Jika migrasi gagal, Anda harus memulai migrasi lagi hingga berhasil.

Bagaimana cara melakukan pemulihan ke tanda waktu sebelum/selama/setelah migrasi?

Asumsikan bahwa Anda memulai migrasi pada t1 dan selesai pada t5, Anda tidak dapat menggunakan tanda waktu pemulihan antara t1 dan t5.

Asumsikan juga bahwa akun Anda sekarang berada dalam mode berkelanjutan. Untuk memulihkan ke waktu setelah t5, lakukan pemulihan menggunakan portal Microsoft Azure, CLI, atau PowerShell seperti biasa dengan akun berkelanjutan. Permintaan pemulihan mandiri ini hanya dapat dilakukan setelah migrasi selesai.

Untuk memulihkan ke waktu sebelum t1, Anda dapat membuat tiket dukungan seperti biasa dengan akun pencadangan berkala. Setelah migrasi, Anda memiliki waktu hingga 30 hari untuk melakukan pemulihan berkala. Selama 30 hari ini, Anda dapat memulihkan berdasarkan retensi cadangan/interval akun sebelum migrasi. Misalnya, jika konfigurasi cadangan adalah untuk menyimpan 24 salinan dalam interval 1 jam, maka Anda dapat memulihkan kapan saja antara (t1 – 24 hours) dan t1.

Operasi sarana kontrol tingkat akun mana yang diblokir selama migrasi?

Operasi seperti menambah/menghapus wilayah, failover, mengubah kebijakan pencadangan, perubahan throughput yang menyebabkan perpindahan data akan diblokir selama migrasi.

Jika migrasi gagal karena beberapa masalah mendasar, apakah operasi sarana kontrol akan tetap diblokir hingga migrasi dapat diulang dan berhasil diselesaikan?

Migrasi yang gagal tidak akan memblokir operasi sarana kontrol apa pun. Jika migrasi gagal, sebaiknya coba kembali sampai berhasil sebelum melakukan operasi sarana kontrol lainnya.

Apakah mungkin untuk membatalkan migrasi?

Migrasi tidak mungkin dibatalkan, karena ini bukan operasi yang dapat dibatalkan.

Apakah ada alat yang dapat membantu memperkirakan waktu migrasi berdasarkan penggunaan data dan jumlah wilayah?

Tidak ada alat untuk memperkirakan waktu. Pengujian serta eksekusi skala kami menunjukkan bahwa satu akun wilayah dengan 1 TB data membutuhkan waktu sekitar 90 menit.

Untuk akun multi-wilayah, hitung ukuran data total sebagai Number_of_regions * Data_in_single_region.

Karena mode pencadangan berkelanjutan kini menjadi ketersediaan umum, apakah Anda masih menyarankan pemulihan salinan akun Anda? Apakah Anda merekomendasikan percobaan migrasi pada salinan sebelum memutuskan untuk memigrasikan akun produksi?

Sebaiknya uji fitur mode pencadangan berkelanjutan untuk mengetahui apakah berfungsi seperti yang diharapkan sebelum memigrasikan akun produksi. Karena migrasi merupakan operasi satu arah yang tidak dapat dibatalkan.

Langkah berikutnya

Untuk mempelajari selengkapnya tentang mode pencadangan berkelanjutan, lihat artikel berikut: