مشاركة عبر


استعادة الكائنات الثنائية الكبيرة في Azure إلى نقطة زمنية باستخدام واجهة برمجة تطبيقات REST لحماية البيانات في Azure. API

توضح هذه المقالة كيفية استعادة الكائنات الثنائية كبيرة الحجم بواسطة Azure Backup باستخدام REST API. يمكنك أيضا استعادة Azure Blobs بواسطة Azure Backup باستخدام مدخل AzureوAzure PowerShellوAzure CLI.

هام

قبل متابعة استعادة Azure Blobs باستخدام Azure Backup، راجع النقاط المهمة.

المتطلبات الأساسية

تعتبر هذه المقالة أن لديك نسخة احتياطية مكونة لحساب تخزين واحد أو أكثر. تعرف على كيفية تكوين نسخة احتياطية لبيانات كائن ثنائي كبير الحجم للكتلة إذا لم يتم تكوينها.

لتوضيح خطوات الاستعادة في هذه المقالة، سنشير إلى الكائنات الثنائية كبيرة الحجم في حساب تخزين يسمى msblobbackup-f2df34eb-5628-4570-87b2-0331d797c67d محمي بمخزن TestBkpVaultالنسخ الاحتياطي الموجود ، ضمن مجموعة testBkpVaultRGالموارد .

الاستعداد لاستعادة Azure Blobs

يمكنك الآن إجراء عملية الاستعادة للنسخ الاحتياطي التشغيلي والنسخ الاحتياطي المخزن ل Azure Blobs.

اختر مستوى النسخ الاحتياطي:

إحضار النطاق الزمني الصالح للاستعادة

نظرًا لأن النسخ الاحتياطي التشغيلي للكائنات الثنائية كبيرة الحجم مستمر، فلا توجد نقاط مميزة للاستعادة منها. وبدلاً من ذلك، نحتاج إلى إحضار النطاق الزمني الصالح الذي يمكن من خلاله استعادة الكائنات الثنائية الكبيرة إلى أي نقطة زمنية. في هذا المثال، دعنا نتحقق من النطاقات الزمنية الصالحة لاستعادتها خلال آخر 30 يوماً.

يمكن سرد النطاقات الزمنية القابلة للاستعادة باستخدام واجهة برمجة تطبيقات البحث عن نطاق زمني قابل للاستعادة. إنها واجهة برمجة تطبيقات POST ، التي تقوم بتشغيل عملية لحساب نطاق النسخ الاحتياطية المستمرة للكائنات الثنائية كبيرة الحجم في حساب التخزين.

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/findRestorableTimeRanges?api-version=2021-01-01

على سبيل المثال، هذا يُترجم إلى

POST https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msblobbackup-f2df34eb-5628-4570-87b2-0331d797c67d/findRestorableTimeRanges?api-version=2021-01-01

إنشاء نص الطلب لجلب نطاقات زمنية صالحة للاستعادة

لتشغيل عملية لحساب النطاقات الزمنية الصالحة، فيما يلي مكونات نص الطلب.

الاسم النوع الوصف
sourceDatastoreType RestoreSourceDataStoreType مخزن البيانات الذي يحتوي على البيانات المراد استعادتها
وقت البدء السلسلة‬ وقت بدء طلب "نطاقات استعادة القائمة". تنسيق ISO 8601.
وقت الانتهاء السلسلة‬ وقت انتهاء طلب "نطاقات استعادة القائمة". تنسيق ISO 8601.

مثال طلب النص الأساسي لجلب نطاق زمني صالح

يحدد نص الطلب التالي الخصائص المطلوبة لجلب النطاقات الزمنية للبيانات المستمرة التي يمكن استعادتها. نظراً لوجود النسخ الاحتياطية للكائنات الثنائية في حساب التخزين، فإن مخزن البيانات هو "تشغيلي". يمكنك منح وقت البدء والانتهاء الذي يساعد على تضييق عملية البحث وإرجاع النطاق الزمني المتاح.

{
  "sourceDataStoreType": "OperationalStore",
  "startTime": "",
  "endTime": ""
}

الاستجابات لجلب نطاقات زمنية صالحة

بمجرد إرسال طلب POST، تكون الاستجابة 200(OK) مع وقت البدء والانتهاء من النطاق المتوفر للاستعادة ضمن وقت البدء والانتهاء المحدد للطلب.

الاسم النوع الوصف
200 (موافق) AzureBackupFindRestorableTimeRangesResponseResource موافق
رموز حالة أخرى CloudError استجابة خطأ تصف سبب فشل العملية.
مثال على الاستجابة لجلب نطاقات زمنية صالحة
HTTP/1.1 200 OK
Content-Length: 379
Content-Type: application/json
Expires: -1
Pragma: no-cache
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: a2b7c2d9-01f5-499a-b521-55da4862c79a
x-ms-routing-request-id: CENTRALUSEUAP:20210708T184646Z:4996a2bf-2df8-48a7-9b53-a552466a27f7
Cache-Control: no-cache
Date: Thu, 08 Jul 2021 18:46:45 GMT
Server: Microsoft-IIS/10.0
X-Powered-By: ASP.NET

{
  "id": "msblobbackup-f2df34eb-5628-4570-87b2-0331d797c67d",
  "type": "Microsoft.DataProtection/backupVaults/backupInstances/findRestorableTimeRanges",
  "properties": {
    "restorableTimeRanges": [
      {
        "startTime": "2021-07-06T18:46:45.947728Z",
        "endTime": "2021-07-08T18:46:45.9932408Z",
        "objectType": "RestorableTimeRange"
      }
    ],
    "objectType": "AzureBackupFindRestorableTimeRangesResponse"
  }
}

بمجرد إصلاح النقطة الزمنية للاستعادة لنفس حساب التخزين، هناك خيارات متعددة للاستعادة.

الخيار 1: استعادة جميع الكائنات الثنائية كبيرة الحجم إلى نقطة زمنية

يؤدي استخدام هذا الخيار إلى استعادة جميع الكائنات الثنائية الكبيرة في حساب التخزين عن طريق إرجاعها إلى النقطة الزمنية المحددة. يمكن أن تستغرق حسابات التخزين التي تحتوي على كميات كبيرة من البيانات أو تشهد خسارة كبيرة أوقاتا أطول لاستعادتها.

بناء نص الطلب لاستعادة نقطة زمنية لجميع الكائنات الثنائية

النقاط الرئيسية التي يجب تذكرها في هذا السيناريو هي:

  • تحدث الاستعادة إلى نفس حساب التخزين، ما يعني أن الكائن الهدف للاستعادة هو نفس مصدر البيانات المصدر. وينعكس ذلك في قسم معلومات هدف الاستعادة أدناه.
  • هذه هي النسخ الاحتياطية المستمرة ومن ثم يكون وقت الاستعادة نقطة زمنية وليس نقطة استعادة مميزة.
  • يتم استعادة جميع الكائنات الثنائية الكبيرة
  • مخزن البيانات المصدر الذي يوجد فيه النسخ الاحتياطية هو نفس حساب التخزين. ومن ثم فإن مصدر البيانات هو مخزن البيانات "التشغيلي".
{
  "restoreRequestObject": {
    "objectType": "AzureBackupRecoveryTimeBasedRestoreRequest",
    "restoreTargetInfo": {
      "objectType": "RestoreTargetInfo",
      "recoveryOption": "FailIfExists",
      "restoreLocation": "westus",
      "datasourceInfo": {
        "datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
        "objectType": "Datasource",
        "resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-BlobBackup/providers/Microsoft.Storage/storageAccounts/msblobbackup",
        "resourceLocation": "westus",
        "resourceName": "msblobbackup",
        "resourceType": "Microsoft.Storage/storageAccounts",
        "resourceUri": ""
      }
    },
    "sourceDataStoreType": "OperationalStore",
    "recoveryPointTime": "2021-07-08T00:00:00.0000000Z"
  }
}

الخيار 2: استعادة عدد قليل من الحاويات إلى نقطة زمنية

يتيح لك استخدام هذا الخيار تحديد ما يصل إلى 10 حاويات للاستعادة أو استعادة مجموعة فرعية من الكائنات الثنائية الكبيرة باستخدام تطابق البادئة. يمكنك تحديد ما يصل إلى 10 نطاقات معجمية للكائنات الثنائية كبيرة الحجم داخل حاوية واحدة أو عبر حاويات متعددة لإعادة تلك الكائنات الثنائية كبيرة الحجم إلى حالتها السابقة في نقطة زمنية معينة. في حالة استخدام البادئات، إليك بعض الأشياء التي يجب وضعها في الاعتبار:

  • يمكنك استخدام شرطة مائلة للأمام (/) لتحديد اسم الحاوية من بادئة الكائن الثنائي الكبير
  • تعد بداية النطاق المحدد شاملة، لكن النطاق المحدد حصري.

تعرف على المزيد عن استخدام البادئات لاستعادة نطاقات الكائنات الثنائية الكبيرة.

إنشاء نص الطلب لاستعادة نقطة زمنية للحاويات المحددة أو عدد قليل من الكائنات الثنائية كبيرة الحجم

النقاط الرئيسية التي يجب تذكرها في هذا السيناريو هي:

  • تحدث الاستعادة إلى نفس حساب التخزين، ما يعني أن الكائن الهدف للاستعادة هو نفس مصدر البيانات المصدر. وينعكس ذلك في قسم معلومات هدف الاستعادة أدناه.
  • هذه هي النسخ الاحتياطية المستمرة ومن ثم يكون وقت الاستعادة نقطة زمنية وليس نقطة استعادة مميزة.
  • يتم استعادة بعض العناصر الموجودة في حساب التخزين. قد تكون حاويات أو كائنات ثنائية كبيرة بنمط بادئة.
  • مخزن بيانات المصدر، أي، حيث توجد النسخ الاحتياطية، هو نفس حساب التخزين. ومن ثم فإن مصدر البيانات هو مخزن البيانات "التشغيلي".
{
  "restoreRequestObject": {
    "objectType": "AzureBackupRecoveryTimeBasedRestoreRequest",
    "restoreTargetInfo": {
      "objectType": "ItemLevelRestoreTargetInfo",
      "recoveryOption": "FailIfExists",
      "restoreLocation": "westus",
      "restoreCriteria": [
        {
          "objectType": "RangeBasedItemLevelRestoreCriteria",
          "minMatchingValue": "Container1",
          "maxMatchingValue": "Container10-0"
        }
      ],
      "datasourceInfo": {
        "datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
        "objectType": "Datasource",
        "resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-BlobBackup/providers/Microsoft.Storage/storageAccounts/msblobbackup",
        "resourceLocation": "westus",
        "resourceName": "msblobbackup",
        "resourceType": "Microsoft.Storage/storageAccounts",
        "resourceUri": ""
      }
    },
    "sourceDataStoreType": "OperationalStore",
    "recoveryPointTime": "2021-07-08T00:00:00.0000000Z"
  }
}

طلبات التحقق من صحة الاستعادة

يمكن التحقق من نص الطلب بعد أن يتم تحضيره باستخدام واجهة برمجة التطبيقات المخصصة للتحقق من صحة الاستعادة. مثل واجهة برمجة التطبيقات Validate-for-backup، هذه عملية POST .

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/validateRestore?api-version=2021-01-01

على سبيل المثال، هذا يترجم إلى:

POST "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msblobbackup-f2df34eb-5628-4570-87b2-0331d797c67d/validateRestore?api-version=2021-01-01"

يتم تفصيل نص الطلب لواجهة برمجة تطبيقات POST هذه هنا. لقد أنشأنا نفس الشيء في القسم أعلاه لسيناريوهات استرداد كل الكائنات الثنائية كبيرة الحجم واسترداد عناصر قليلة. سنستخدم نفس الشيء لتشغيل عملية التحقق من الصحة.

الرد على طلبات التحقق من صحة الاستعادة

طلب التحقق من صحة الاستعادة هو عملية غير متزامنة. وهذا يعني أن هذه العملية تنشئ عملية أخرى تحتاج إلى تعقبها بشكل منفصل.

تقوم بإرجاع استجابتين: 202 (مقبول) عند إنشاء عملية أخرى، و200 (موافق) عند اكتمال تلك العملية.

الاسم كتابة ‏‏الوصف
200 جيد حالة طلب التحقق من الصحة
202 مقبولة مقبول

مثال على الاستجابة لاستعادة طلب التحقق من الصحة

بمجرد إرسال عملية POST، ستكون الاستجابة الأولية 202 Accepted بالإضافة إلى عنوان Azure-asyncOperation.

HTTP/1.1 202 Accepted
Content-Length: 0
Expires: -1
Pragma: no-cache
Retry-After: 10
Azure-AsyncOperation: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==?api-version=2021-01-01
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-correlation-request-id: bae60c92-669d-45a4-aed9-8392cca7cc8d
x-ms-routing-request-id: CENTRALUSEUAP:20210708T205935Z:f51db7a4-9826-4084-aa3b-ae640dc78af6
Cache-Control: no-cache
Date: Thu, 08 Jul 2021 20:59:35 GMT
Location: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationResults/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==?api-version=2021-01-01
X-Powered-By: ASP.NET

تتبع رأس Azure-AsyncOperation من خلال طلب GET بسيط. عند نجاح الطلب، فإنه يرجع 200 OK مع استجابة حالة النجاح.

 GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==?api-version=2021-01-01

{
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==",
  "name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExOzVlNzMxZDBiLTQ3MDQtNDkzNS1hYmNjLWY4YWEzY2UzNTk1ZQ==",
  "status": "Succeeded",
  "startTime": "2021-07-08T20:59:35.0060264Z",
  "endTime": "2021-07-08T20:59:57Z"
}

تشغيل طلبات الاستعادة

عملية الاسترداد التي يتم تشغيلها هي واجهة برمجة تطبيقات POST. يتم توثيق جميع التفاصيل عن عملية تشغيل الاستعادة هنا.

POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}/restore?api-version=2021-01-01

على سبيل المثال، هذا يترجم إلى:

POST "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msblobbackup-f2df34eb-5628-4570-87b2-0331d797c67d/restore?api-version=2021-01-01"

إنشاء نص طلب لعمليات الاستعادة

بمجرد التحقق من صحة الطلبات، يمكن استخدام نفس نص الطلب لتشغيل طلب الاستعادة مع تغييرات طفيفة.

مثال على نص الطلب لاستعادة جميع الكائنات الثنائية الكبيرة

التغيير الوحيد من نص validate-restore-request هو إزالة الكائن "restoreRequest" في البداية.

{
  "objectType": "AzureBackupRecoveryTimeBasedRestoreRequest",
  "restoreTargetInfo": {
    "objectType": "RestoreTargetInfo",
    "recoveryOption": "FailIfExists",
    "restoreLocation": "westus",
    "datasourceInfo": {
      "datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
      "objectType": "Datasource",
      "resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-BlobBackup/providers/Microsoft.Storage/storageAccounts/msblobbackup",
      "resourceLocation": "westus",
      "resourceName": "msblobbackup",
      "resourceType": "Microsoft.Storage/storageAccounts",
      "resourceUri": ""
    }
  },
  "sourceDataStoreType": "OperationalStore",
  "recoveryPointTime": "2021-07-08T00:00:00Z"
}

مثال على نص الطلب لاستعادة العناصر أو بعض الكائنات الثنائية الكبيرة

التغيير الوحيد من نص validate-restore-request هو إزالة الكائن "restoreRequest" في البداية.

{
  "objectType": "AzureBackupRecoveryTimeBasedRestoreRequest",
  "restoreTargetInfo": {
    "objectType": "ItemLevelRestoreTargetInfo",
    "recoveryOption": "FailIfExists",
    "restoreLocation": "westus",
    "restoreCriteria": [
      {
        "objectType": "RangeBasedItemLevelRestoreCriteria",
        "minMatchingValue": "Container1",
        "maxMatchingValue": "Container2"
      }
    ],
    "datasourceInfo": {
      "datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
      "objectType": "Datasource",
      "resourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-BlobBackup/providers/Microsoft.Storage/storageAccounts/msblobbackup",
      "resourceLocation": "westus",
      "resourceName": "msblobbackup",
      "resourceType": "Microsoft.Storage/storageAccounts",
      "resourceUri": ""
    }
  },
  "sourceDataStoreType": "OperationalStore",
  "recoveryPointTime": "2021-07-08T00:00:00.0000000Z"
}

الرد على طلبات تشغيل الاستعادة

طلب تشغيل الاستعادة هو عملية غير متزامنة. وهذا يعني أن هذه العملية تنشئ عملية أخرى تحتاج إلى تعقبها بشكل منفصل.

تقوم بإرجاع استجابتين: 202 (مقبول) عند إنشاء عملية أخرى، و200 (موافق) عند اكتمال تلك العملية.

الاسم كتابة ‏‏الوصف
200 جيد طلب حالة الاستعادة
202 مقبولة مقبول

مثال للرد على طلب تشغيل الاستعادة

بمجرد إرسال عملية POST، ستكون الاستجابة الأولية 202 Accepted بالإضافة إلى عنوان Azure-asyncOperation.

HTTP/1.1 202 Accepted
Content-Length: 0
Expires: -1
Pragma: no-cache
Retry-After: 30
Azure-AsyncOperation: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==?api-version=2021-01-01
X-Content-Type-Options: nosniff
x-ms-request-id:
Strict-Transport-Security: max-age=31536000; includeSubDomains
x-ms-ratelimit-remaining-subscription-writes: 1197
x-ms-correlation-request-id: 8661209c-5b6a-44fe-b676-4e2b9c296593
x-ms-routing-request-id: CENTRALUSEUAP:20210708T204652Z:69e3fa4b-c5d9-4601-9410-598006ada187
Cache-Control: no-cache
Date: Thu, 08 Jul 2021 20:46:52 GMT
Location: https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationResults/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==?api-version=2021-01-01
X-Powered-By: ASP.NET

تتبع رأس Azure-AsyncOperation من خلال طلب GET بسيط. عند نجاح الطلب، يقوم بإرجاع 200 OK مع معرف الوظيفة، والذي يجب تعقبه بشكل أكبر لإكمال طلب الاستعادة.

GET https://management.azure.com/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==?api-version=2021-01-01

{
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/providers/Microsoft.DataProtection/locations/westus/operationStatus/ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==",
  "name": "ZmMzNDFmYWMtZWJlMS00NGJhLWE4YTgtMDNjYjI4Y2M5OTExO2Q1NDIzY2VjLTczYjYtNDY5ZC1hYmRjLTc1N2Q0ZTJmOGM5OQ==",
  "status": "Succeeded",
  "startTime": "2021-07-08T20:46:52.4110868Z",
  "endTime": "2021-07-08T20:46:56Z",
  "properties": {
    "jobId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupJobs/c4bd49a1-0645-4eec-b207-feb818962852",
    "objectType": "OperationJobExtendedInfo"
  }
}

تتبع الوظائف

تبدأ طلبات استعادة المشغل مهمة الاستعادة ويتم تعقب معرف الوظيفة الناتج باستخدام واجهة برمجة تطبيقات GET Jobs.

استخدم الأمر GET البسيط لتعقب معرّف الوظيفة الموجود في استجابة تشغيل الاستعادة أعلاه.

 GET /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupJobs/c4bd49a1-0645-4eec-b207-feb818962852?api-version=2021-01-01

{
  "properties": {
    "activityID": "4195ca6c-e02d-11eb-b0b1-70bc105e2242",
    "subscriptionId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx",
    "backupInstanceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupInstances/msblobbackup-f2df34eb-5628-4570-87b2-0331d797c67d",
    "policyId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupPolicies/BlobBackup-Policy",
    "dataSourceId": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-BlobBackup/providers/Microsoft.Storage/storageAccounts/msblobbackup",
    "vaultName": "BV-JPE-GRS",
    "backupInstanceFriendlyName": "msblobbackup",
    "policyName": "BlobBackup-Policy",
    "sourceResourceGroup": "RG-BlobBackup",
    "dataSourceName": "msblobbackup",
    "progressEnabled": false,
    "etag": "W/\"datetime'2021-07-08T20%3A48%3A36.6999667Z'\"",
    "sourceSubscriptionID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx",
    "dataSourceLocation": "westus",
    "startTime": "2021-07-08T20:44:19.5467125Z",
    "endTime": "2021-07-08T20:48:35.8297312Z",
    "dataSourceType": "Microsoft.Storage/storageAccounts/blobServices",
    "operationCategory": "Restore",
    "operation": "Restore",
    "status": "Completed",
    "isUserTriggered": true,
    "supportedActions": [
      ""
    ],
    "duration": "PT4M16.2830187S",
    "extendedInfo": {
      "sourceRecoverPoint": {
        "recoveryPointTime": "2021-07-08T00:00:00Z"
      },
      "recoveryDestination": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/RG-BlobBackup/providers/Microsoft.Storage/storageAccounts/msblobbackup",
      "subTasks": [
        {
          "taskId": 1,
          "taskName": "Trigger Restore",
          "taskStatus": "Completed"
        }
      ]
    }
  },
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx/resourceGroups/TestBkpVaultRG/providers/Microsoft.DataProtection/backupVaults/testBkpVault/backupJobs/c4bd49a1-0645-4eec-b207-feb818962852",
  "name": "c4bd49a1-0645-4eec-b207-feb818962852",
  "type": "Microsoft.DataProtection/BackupVaults/backupJobs"
}

تشير حالة المهمة أعلاه إلى اكتمال مهمة الاستعادة واسترداد جميع الكائنات الثنائية الكبيرة إلى نقطة زمنية محددة.

الخطوات التالية

نظرة عامة على النسخ الاحتياطي للكائنات الثنائية الكبيرة في Azure.

للمزيد من المعلومات حول واجهات برمجة التطبيقات REST للنسخ الاحتياطي لـ Azure، راجع المستندات التالية: