Bagikan melalui


Mencadangkan Azure Files menggunakan Azure Backup melalui REST API

Artikel ini menjelaskan cara mencadangkan data dari Azure Files menggunakan Azure Backup melalui REST API.

Artikel ini mengasumsikan Anda telah membuat brankas dan kebijakan Recovery Services untuk mengonfigurasi pencadangan untuk File Share Anda. Jika belum, lihat tutorial REST API buat vault dan buat kebijakan untuk membuat vault dan kebijakan baru.

Untuk artikel ini, kita akan menggunakan sumber daya berikut:

  • RecoveryServicesVault: azurefilesvault

  • Kebijakan:schedule1

  • Grup sumber daya: azurefiles

  • Akun Penyimpanan: testvault2

  • Berbagi File: testshare

Mengonfigurasi cadangan untuk Azure Files yang tidak terlindungi menggunakan REST API

Menemukan akun penyimpanan dengan Azure Files yang tidak terlindungi

Vault harus menemukan semua akun penyimpanan Azure dalam langganan dengan berbagi file yang bisa dicadangkan ke Vault Layanan Pemulihan. Hal ini diaktifkan menggunakan fungsi refresh. Ini adalah operasi POST asinkron yang memastikan vault mendapatkan daftar terbaru dari semua Azure File Share yang tidak terlindungi dalam langganan saat ini dan menyimpannya ke dalam cache. Setelah Berbagi File 'di-cache', layanan Pemulihan dapat mengakses Berbagi File dan melindunginya.

POST https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{vaultresourceGroupname}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/refreshContainers?api-version=2016-12-01&$filter={$filter}

POST URI memiliki parameter {subscriptionId}, {vaultName}, {vaultresourceGroupName}, {fabricName}. Dalam contoh kami, nilai untuk parameter yang berbeda adalah sebagai berikut:

  • {fabricName} adalah Azure

  • {vaultName} adalah azurefilesvault

  • {vaultresourceGroupName} adalah azurefiles

  • $filter=backupManagementType eq 'AzureStorage'

Karena semua parameter yang diperlukan ada dalam URI, tidak perlu ada badan permintaan terpisah.

POST https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/refreshContainers?api-version=2016-12-01&$filter=backupManagementType eq 'AzureStorage'

Tanggapan terhadap operasi penyegaran

Fungsi 'refresh' adalah fungsi asinkron. Hal ini berarti operasi tersebut menciptakan operasi lain yang perlu dilacak secara terpisah.

Fungsi ini menghasilkan dua respons: 202 (Diterima) ketika fungsi lain dibuat, dan 200 (OK) ketika fungsi selesai.

Contoh respons untuk operasi penyegaran

Setelah permintaan POST telah dikirimkan, respons 202 (Diterima) akan dihasilkan.

HTTP/1.1 202 Accepted
'Pragma': 'no-cache'
'Expires': '-1'
'Location': ‘https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/ResourceGroups
/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/operationResults/
cca47745-12d2-42f9-b3a4-75335f18fdf6?api-version=2016-12-01’
'Retry-After': '60'
'X-Content-Type-Options': 'nosniff'
'x-ms-request-id': '6cc12ceb-90a2-430d-a1ec-9b6b6fdea92b'
'x-ms-client-request-id': ‘3da383a5-d66d-4b7c-982a-bc8d94798d61,3da383a5-d66d-4b7c-982a-bc8d94798d61’
'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
'X-Powered-By': 'ASP.NET'
'x-ms-ratelimit-remaining-subscription-reads': '11996'
'x-ms-correlation-request-id': '6cc12ceb-90a2-430d-a1ec-9b6b6fdea92b'
'x-ms-routing-request-id': CENTRALUSEUAP:20200203T091326Z:6cc12ceb-90a2-430d-a1ec-9b6b6fdea92b'
'Date': 'Mon, 03 Feb 2020 09:13:25 GMT'

Lacak operasi yang dihasilkan menggunakan header "Lokasi" dengan perintah GET sederhana

GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/operationResults/cca47745-12d2-42f9-b3a4-75335f18fdf6?api-version=2016-12-01

Setelah semua akun Microsoft Azure Storage ditemukan, perintah GET menghasilkan respons 204 (Tidak Ada Konten). Vault sekarang dapat menemukan akun penyimpanan apa pun dengan File Share yang bisa dicadangkan dalam langganan.

HTTP/1.1 200 NoContent
Cache-Control  : no-cache
Pragma   : no-cache
X-Content-Type-Options  : nosniff
x-ms-request-id    : d9bdb266-8349-4dbd-9688-de52f07648b2
x-ms-client-request-id  : 3da383a5-d66d-4b7c-982a-bc8d94798d61,3da383a5-d66d-4b7c-982a-bc8d94798d61
Strict-Transport-Security  : max-age=31536000; includeSubDomains
X-Powered-By    : ASP.NET
x-ms-ratelimit-remaining-subscription-reads: 11933
x-ms-correlation-request-id   : d9bdb266-8349-4dbd-9688-de52f07648b2
x-ms-routing-request-id  : CENTRALUSEUAP:20200127T105304Z:d9bdb266-8349-4dbd-9688-de52f07648b2
Date   : Mon, 27 Jan 2020 10:53:04 GMT

Dapatkan daftar akun penyimpanan dengan berbagi file yang dapat dicadangkan dengan penyimpanan Layanan Pemulihan.

Untuk mengonfirmasi bahwa "caching" selesai, cantumkan semua akun penyimpanan dalam langganan dengan File Share yang dapat dicadangkan dengan Recovery Services vault. Kemudian temukan akun penyimpanan yang diinginkan dalam respons. Ini dilakukan menggunakan fungsi GET ProtectableContainers.

GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectableContainers?api-version=2016-12-01&$filter=backupManagementType eq 'AzureStorage'

URI GET memiliki semua parameter yang diperlukan. Tidak diperlukan isi permintaan tambahan.

Contoh isi respons:

{

  "value": [

​    {

​      "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers
 /Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/

protectableContainers/StorageContainer;Storage;AzureFiles;testvault2",

​      "name": "StorageContainer;Storage;AzureFiles;testvault2",

​      "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectableContainers",

​      "properties": {

​        "friendlyName": "testvault2",

​        "backupManagementType": "AzureStorage",

​        "protectableContainerType": "StorageContainer",

​        "healthStatus": "Healthy",

​        "containerId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/
 AzureFiles/providers/Microsoft.Storage/storageAccounts/testvault2"

​      }

​    }

  ]

}

Karena kita dapat menemukan akun penyimpanan testvault2 pada isi respons dengan nama yang mudah diingat, fungsi refresh yang dilakukan di atas berhasil. Vault Layanan Pemulihan sekarang dapat berhasil menemukan akun penyimpanan dengan berbagi file yang tidak terproteksi dalam langganan yang sama.

Mendaftarkan akun penyimpanan dalam Vault Layanan Pemulihan

Langkah ini hanya diperlukan jika Anda belum mendaftarkan akun penyimpanan dengan vault. Anda dapat mendaftarkan vault menggunakan fungsi ProtectionContainers-Register.

PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}?api-version=2016-12-01

Atur variabel untuk URI sebagai berikut:

  • {ResourceGroupName}: azurefiles
  • {fabricName}: Azure
  • {vaultName}: azurefilesvault
  • {containerName} - Ini adalah atribut nama dalam isi respons fungsi GET ProtectableContainers. Dalam contoh kami, ini adalah StorageContainer;Storage;AzureFiles;testvault2

Catatan

Selalu ambil atribut nama dari respons dan isi ke dalam permintaan ini. Jangan menggunakan hard-code atau membuat format nama kontainer. Jika Anda membuat atau menetapkan secara permanen, panggilan API pasti akan gagal jika format nama kontainer berubah di masa mendatang.


PUT https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;AzureFiles;testvault2?api-version=2016-12-01

Isi permintaan pembuatan adalah sebagai berikut:

{

 "properties": {


  "containerType": "StorageContainer",


  "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.Storage/storageAccounts/testvault2",


  "resourceGroup": "AzureFiles",


  "friendlyName": "testvault2",


  "backupManagementType": "AzureStorage"

 }
}

Untuk daftar lengkap definisi isi permintaan dan detail lainnya, lihat ProtectionContainers-Register.

Ini adalah fungsi asinkron dan menghasilkan dua respons: "202 Diterima" jika operasi diterima dan "200 OK" jika operasi selesai. Untuk melacak status fungsi, gunakan header lokasi untuk mendapatkan status fungsi terbaru.

GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;AzureFiles;testvault2/operationresults/1a3c8ee7-e0e5-43ed-b8b3-73cc992b6db9?api-version=2016-12-01

Contoh isi respons saat fungsi selesai:

{
    "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/
protectionContainers/StorageContainer;Storage;AzureFiles;testvault2",
    "name": "StorageContainer;Storage;AzureFiles;testvault2",
    "properties": {
        "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.Storage/storageAccounts/testvault2",
        "protectedItemCount": 0,
        "friendlyName": "testvault2",
        "backupManagementType": "AzureStorage",
        "registrationStatus": "Registered",
        "healthStatus": "Healthy",
        "containerType": "StorageContainer",
        "protectableObjectType": "StorageContainer"
    }
}

Anda dapat memverifikasi apakah pendaftaran berhasil dari nilai registrationstatus parameter dalam isi respons. Dalam kasus kami, ini menunjukkan status sebagai terdaftar untuk testvault2, sehingga operasi pendaftaran berhasil.

Memeriksa semua file yang tidak diproteksi yang dibagikan dalam akun penyimpanan

Anda dapat mengetahui item yang dapat diproteksi di akun penyimpanan menggunakan operasi Kontainer Perlindungan-Inquiry. Ini adalah fungsi asinkron dan hasilnya harus dilacak menggunakan header lokasi.

POST https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/inquire?api-version=2016-12-01

Atur variabel URI sebagai berikut:

  • {vaultName}: azurefilesvault
  • {fabricName}: Azure
  • {containerName} - Merujuk pada atribut nama dalam isi respons dari operasi GET ProtectableContainers. Dalam contoh kami, fungsi tersebut adalah StorageContainer;Storage;AzureFiles;testvault2
https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;AzureFiles;testvault2/inquire?api-version=2016-12-01

Setelah permintaan berhasil, fungsi menghasilkan kode status “OK”

Cache-Control : no-cache
Pragma   : no-cache
X-Content-Type-Options: nosniff
x-ms-request-id  : 68727f1e-b8cf-4bf1-bf92-8e03a9d96c46
x-ms-client-request-id  : 3da383a5-d66d-4b7c-982a-bc8d94798d61,3da383a5-d66d-4b7c-982a-bc8d94798d61
Strict-Transport-Security: max-age=31536000; includeSubDomains
Server  : Microsoft-IIS/10.0
X-Powered-B : ASP.NET
x-ms-ratelimit-remaining-subscription-reads: 11932
x-ms-correlation-request-id  : 68727f1e-b8cf-4bf1-bf92-8e03a9d96c46
x-ms-routing-request-id   : CENTRALUSEUAP:20200127T105305Z:68727f1e-b8cf-4bf1-bf92-8e03a9d96c46
Date  : Mon, 27 Jan 2020 10:53:05 GMT

Pilih Folder Berbagi yang ingin dicadangkan

Anda dapat mencantumkan semua item yang dapat dilindungi dalam langganan dan menemukan File Share yang diinginkan untuk dicadangkan menggunakan operasi GET backupprotectableItems.

GET https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectableItems?api-version=2016-12-01&$filter={$filter}

Susun URI sebagai berikut:

  • {vaultName}: azurefilesvault
  • {$filter} - backupManagementType eq 'AzureStorage'
GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupProtectableItems?$filter=backupManagementType eq 'AzureStorage'&api-version=2016-12-01

Contoh respons:

Status Code:200

{
    "value": [
        {
            "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/storagecontainer;storage;azurefiles;afaccount1/protectableItems/azurefileshare;azurefiles1",
            "name": "azurefileshare;azurefiles1",
            "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems",
            "properties": {
                "parentContainerFabricId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.Storage/storageAccounts/afaccount1",
                "parentContainerFriendlyName": "afaccount1",
                "azureFileShareType": "XSMB",
                "backupManagementType": "AzureStorage",
                "workloadType": "AzureFileShare",
                "protectableItemType": "AzureFileShare",
                "friendlyName": "azurefiles1",
                "protectionState": "NotProtected"
            }
        },
        {
            "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/storagecontainer;storage;azurefiles;afsaccount/protectableItems/azurefileshare;afsresource",
            "name": "azurefileshare;afsresource",
            "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems",
            "properties": {
                "parentContainerFabricId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.Storage/storageAccounts/afsaccount",
                "parentContainerFriendlyName": "afsaccount",
                "azureFileShareType": "XSMB",
                "backupManagementType": "AzureStorage",
                "workloadType": "AzureFileShare",
                "protectableItemType": "AzureFileShare",
                "friendlyName": "afsresource",
                "protectionState": "NotProtected"
            }
        },
        {
            "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/storagecontainer;storage;azurefiles;testvault2/protectableItems/azurefileshare;testshare",
            "name": "azurefileshare;testshare",
            "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectableItems",
            "properties": {
                "parentContainerFabricId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.Storage/storageAccounts/testvault2",
                "parentContainerFriendlyName": "testvault2",
                "azureFileShareType": "XSMB",
                "backupManagementType": "AzureStorage",
                "workloadType": "AzureFileShare",
                "protectableItemType": "AzureFileShare",
                "friendlyName": "testshare",
                "protectionState": "NotProtected"
            }
        }
    ]
}

Respons berisi daftar semua Berbagi File yang tidak terlindungi dan berisi semua informasi yang diperlukan oleh Azure Recovery Service untuk mengonfigurasi cadangan.

Aktifkan pencadangan untuk berbagi file

Setelah Berbagi File yang relevan "diidentifikasi" dengan nama yang mudah diingat, pilih kebijakan yang akan dilindungi. Untuk mengetahui selengkapnya tentang kebijakan yang ada di vault, lihat daftar Kebijakan API. Kemudian pilih kebijakan yang relevan dengan mengacu pada nama kebijakan. Untuk membuat kebijakan, lihat tutorial membuat kebijakan.

Mengaktifkan proteksi adalah fungsi PUT asinkron yang menghasilkan 'item terproteksi'.

PUT https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{vaultresourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}?api-version=2019-05-13

Atur variabel containername dan protecteditemname menggunakan atribut ID di isi respons operasi GET backupprotectableitems.

Dalam contoh kami, ID Berbagi File yang ingin kami lindungi adalah:

"/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/storagecontainer;storage;azurefiles;testvault2/protectableItems/azurefileshare;testshare
  • {containername} - storagecontainer; storage; azurefiles; testvault2
  • {protectedItemName} - azurefileshare; testshare

Atau Anda dapat merujuk ke atribut nama kontainer proteksi dan respons item yang dapat diproteksi.

Catatan

Selalu ambil atribut nama dari respons dan isi ke dalam permintaan ini. Jangan hard-code atau membuat format nama kontainer atau format nama item yang dilindungi. Jika Anda membuat atau menetapkan secara hard-code, panggilan API akan gagal jika format nama kontainer atau format nama item yang terproteksi berubah di masa mendatang.


PUT https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;AzureFiles;testvault2/protectedItems/azurefileshare;testshare?api-version=2016-12-01

Membuat isi permintaan:

Isi permintaan berikut menentukan properti yang diperlukan untuk membuat item terproteksi.

{
  "properties": {
    "protectedItemType": "AzureFileShareProtectedItem",
    "sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/AzureFiles/providers/Microsoft.Storage/storageAccounts/testvault2",
    "policyId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupPolicies/schedule1"
  }
}

SourceResourceId adalah parentcontainerFabricID sebagai tanggapan atas GET backupprotectableItems.

Contoh Jawaban

Pembuatan item yang diproteksi adalah fungsi asinkron, yang menciptakan fungsi lain yang perlu dilacak. Fungsi ini menghasilkan dua respons: 202 (Diterima) ketika fungsi lain dibuat dan 200 (OK) ketika fungsi tersebut selesai.

Setelah Anda mengirimkan permintaan PUT untuk pembuatan atau pembaruan item terproteksi, respons awalnya adalah 202 (Diterima) dengan header lokasi.

HTTP/1.1 202 Accepted
Cache-Control  : no-cache
Pragma  : no-cache
Location : https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;AzureFiles;testvault2/protectedItems/azurefileshare;testshare/operationResults/c3a52d1d-0853-4211-8141-477c65740264?api-version=2016-12-01
Retry-Afte  : 60
Azure-AsyncOperation  : https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;Storage;AzureFiles;testvault2/protectedItems/azurefileshare;testshare/operationResults/c3a52d1d-0853-4211-8141-477c65740264?api-version=2016-12-01
X-Content-Type-Options : nosniff
x-ms-request-id : b55527fa-f473-4f09-b169-9cc3a7a39065
x-ms-client-request-id: 3da383a5-d66d-4b7c-982a-bc8d94798d61,3da383a5-d66d-4b7c-982a-bc8d94798d61
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Powered-By  : ASP.NET
x-ms-ratelimit-remaining-subscription-writes: 1198
x-ms-correlation-request-id : b55527fa-f473-4f09-b169-9cc3a7a39065
x-ms-routing-request-id  : CENTRALUSEUAP:20200127T105412Z:b55527fa-f473-4f09-b169-9cc3a7a39065
Date : Mon, 27 Jan 2020 10:54:12 GMT

Kemudian lacak hasil operasi menggunakan header lokasi atau header Azure-AsyncOperation dengan perintah DAPATKAN.

GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupOperations/c3a52d1d-0853-4211-8141-477c65740264?api-version=2016-12-01

Setelah operasi selesai, itu mengembalikan 200 (OK) dengan konten item terproteksi dalam isi respons.

Isi Respons Sampel:

{
    "id": "c3a52d1d-0853-4211-8141-477c65740264",
    "name": "c3a52d1d-0853-4211-8141-477c65740264",
    "status": "Succeeded",
    "startTime": "2020-02-03T18:10:48.296012Z",
    "endTime": "2020-02-03T18:10:48.296012Z",
    "properties": {
        "objectType": "OperationStatusJobExtendedInfo",
        "jobId": "e2ca2cf4-2eb9-4d4b-b16a-8e592d2a658b"
    }
}

Ini mengonfirmasi bahwa perlindungan diaktifkan untuk Berbagi File dan cadangan pertama akan dipicu sesuai dengan jadwal kebijakan.

Memicu pencadangan on-demand untuk File Share

Setelah Azure Files dikonfigurasi untuk pencadangan, pencadangan berjalan sesuai dengan jadwal kebijakan. Anda dapat menunggu cadangan terjadwal pertama atau memulai pencadangan sesuai permintaan kapan saja.

Memulai pencadangan sesuai permintaan merupakan operasi POST.

POST https://management.azure.com/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/backup?api-version=2016-12-01

{containerName} dan {protectedItemName} seperti yang tersusun di atas sambil mengaktifkan pencadangan. Untuk contoh yang kami berikan, hal ini diterjemahkan menjadi:

POST https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;storage;azurefiles;testvault2/protectedItems/AzureFileShare;testshare/backup?api-version=2017-07-01

Buat isi permintaan

Untuk memicu pencadangan sesuai permintaan, berikut adalah komponen isi permintaan.

Nama Tipe Deskripsi
Karakteristik AzurefilesharebackupRequest Properti dari BackupRequestResource

Untuk mendapatkan daftar lengkap definisi dari isi permintaan dan detail lainnya, silakan merujuk ke dokumen REST API tentang pencadangan otomatis untuk item yang terlindungi.

Contoh isi permintaan

{

  "properties":{

   "objectType":"AzureFileShareBackupRequest",
    "recoveryPointExpiryTimeInUTC":"2020-03-07T18:29:59.000Z"
}

}

Tanggapan terhadap operasi pencadangan berdasarkan permintaan

Memicu cadangan sesuai permintaan adalah operasi asinkron. Hal ini berarti operasi tersebut menciptakan operasi lain yang perlu dilacak secara terpisah.

Fungsi ini menghasilkan dua respons: 202 (Diterima) ketika fungsi lain dibuat dan 200 (OK) ketika fungsi tersebut selesai.

Contoh respons untuk operasi pencadangan sesuai permintaan

Setelah Anda mengirimkan permintaan POST untuk cadangan sesuai permintaan, respons awalnya adalah 202 (Diterima) dengan header lokasi atau Azure-async-header.

'Cache-Control': 'no-cache'
'Pragma': 'no-cache'
'Expires': '-1'
'Location': https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;storage;azurefiles;testvault2/protectedItems/AzureFileShare;testshare/operationResults/dc62d524-427a-4093-968d-e951c0a0726e?api-version=2017-07-01
'Retry-After': '60'
'Azure-AsyncOperation': https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupFabrics/Azure/protectionContainers/StorageContainer;storage;azurefiles;testvault2/protectedItems/AzureFileShare;testshare/operationsStatus/dc62d524-427a-4093-968d-e951c0a0726e?api-version=2017-07-01
'X-Content-Type-Options': 'nosniff'
'x-ms-request-id': '2e03b8d4-66b1-48cf-8094-aa8bff57e8fb'
'x-ms-client-request-id': 'a644712a-4895-11ea-ba57-0a580af42708, a644712a-4895-11ea-ba57-0a580af42708'
'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
'X-Powered-By': 'ASP.NET'
'x-ms-ratelimit-remaining-subscription-writes': '1199'
'x-ms-correlation-request-id': '2e03b8d4-66b1-48cf-8094-aa8bff57e8fb'
'x-ms-routing-request-id': 'WESTEUROPE:20200206T040339Z:2e03b8d4-66b1-48cf-8094-aa8bff57e8fb'
'Date': 'Thu, 06 Feb 2020 04:03:38 GMT'
'Content-Length': '0'

Kemudian lacak hasil operasi menggunakan header lokasi atau header Azure-AsyncOperation dengan perintah DAPATKAN.

GET https://management.azure.com/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/azurefiles/providers/Microsoft.RecoveryServices/vaults/azurefilesvault/backupOperations/dc62d524-427a-4093-968d-e951c0a0726e?api-version=2016-12-01

Setelah operasi selesai, proses akan menghasilkan 200 (OK) dengan ID tugas pencadangan yang dihasilkan pada isi respons.

Contoh isi respons

{
    "id": "dc62d524-427a-4093-968d-e951c0a0726e",
    "name": "dc62d524-427a-4093-968d-e951c0a0726e",
    "status": "Succeeded",
    "startTime": "2020-02-06T11:06:02.1327954Z",
    "endTime": "2020-02-06T11:06:02.1327954Z",
    "properties": {
        "objectType": "OperationStatusJobExtendedInfo",
        "jobId": "39282261-cb52-43f5-9dd0-ffaf66beeaef"
    }
}

Karena tugas pencadangan adalah operasi yang berlangsung lama, maka perlu dilacak sebagaimana dijelaskan dalam dokumen memantau tugas dengan REST API.

Langkah berikutnya