تكوين النسخ المتماثل للكائنات من أجل كائنات ثنائية كبيرة الحجم للكتل
مقالة
النسخ المتماثل للكائن بشكل غير متزامن ينسخ الكائنات الثنائية كبيرة الحجم للكتلة بين حساب تخزين المصدر وحساب الوجهة. عند تكوين النسخ المتماثل للكائنات، يمكنك إنشاء نهج النسخ المتماثل الذي يحدد حساب التخزين المصدر والحساب الوجهة. يتضمن نهج النسخ المتماثل قاعدة واحدة أو أكثر من شأنها أن تحدد الحاوية المصدر والحاوية الوجهة، وتشير إلى كائنات blob التي سيتم نسخها نسخاً متماثلاً في الحاوية المصدر. لمزيدٍ من المعلومات عن النسخ المتماثل للكائنات، راجع النسخ المتماثل للكائنات الثنائية كبيرة الحجم للكتل.
توضح هذه المقالة كيفية تكوين نهج النسخ المتماثل للكائنات باستخدام مدخل Azure أو PowerShell أو Azure CLI. يمكنك أيضاً استخدام إحدى مكتبات عميل موفر موارد تخزين Azure لتكوين النسخ المتماثل للكائنات.
المتطلبات الأساسية
قبل تكوين النسخ المتماثل للعناصر، بادر بإنشاء حسابات التخزين المصدر والوجهة إذا لم تكن موجودة بالفعل. يمكن أن تكون حسابات المصدر والوجهة إما حسابات تخزين v2 للأغراض العامة أو حسابات للكائنات الثنائية كبيرة الحجم للكتل المتميزة. لمزيدٍ من المعلومات، راجع إنشاء حساب تخزين Azure.
يتطلب النسخ المتماثل للكائنات تمكين تعيين إصدار كائن ثنائي كبير الحجم لكل من حساب المصدر والوجهة، وتمكين موجز تغيير كائن ثنائي كبير الحجم للحساب المصدر. لمعرفة المزيد عن تعيين إصدار كائن ثنائي كبير الحجم، راجع تعيين إصدار كائن ثنائي كبير الحجم. لمعرفة المزيد عن موجز التغيير، راجع تغيير دعم الموجز في Azure Blob Storage. ضع في اعتبارك أن تمكين هذه الميزات يمكن أن يؤدي إلى تكاليف إضافية.
لتكوين نهج النسخ المتماثل للكائنات لحساب تخزين، يجب تعيين دور مساهم Azure Resource Manager، بحيث يتم تحديد النطاق على مستوى حساب التخزين أو أعلى. لمزيد من المعلومات، راجع أدوار Azure المضمنة في وثائق التحكم في الوصول المستند إلى دور Azure (Azure RBAC).
النسخ المتماثل للكائنات غير مدعوم حتى الآن في الحسابات التي تم تمكين مساحة اسم هرمية لها.
تكوين النسخ المتماثل للكائنات مع الوصول إلى كلٍ من حسابات التخزين
إذا كان لديك حق الوصول إلى كلٍ من حسابات التخزين المصدر والوجهة، فيمكنك تكوين نهج النسخ المتماثل للكائنات على كلا الحسابين. توضح الأمثلة التالية كيفية تكوين النسخ المتماثل للكائن باستخدام مدخل Azure أو PowerShell أو Azure CLI.
عند تكوين النسخ المتماثل للكائنات في مدخل Azure، ما عليك سوى تكوين النهج على الحساب المصدر. ينشئ مدخل Azure النهج تلقائياً على الحساب الوجهة بعد تكوينه لحساب المصدر.
لإنشاء نهج نسخ متماثل في مدخل Azure، اتبع الخطوات التالية:
انتقل إلى حساب التخزين المصدر في مدخل Azure.
ضمن إدارة البيانات، وحدد النسخ المتماثل للعناصر.
حدد إنشاء قواعد النسخ المتماثل.
حدد الاشتراك الوجهة وحساب التخزين.
في قسم تفاصيل زوج الحاوية ، حدد حاوية مصدر من حساب المصدر، وحاوية وجهة من حساب الوجهة. يمكنك إنشاء ما يصل إلى 10 أزواج من الحاويات لكل نهج نسخ متماثل من مدخل Azure. لتكوين أكثر من 10 أزواج من الحاويات (حتى 1000)، راجع تكوين النسخ المتماثل للعناصر باستخدام ملف JSON.
تعرض الصورة التالية مجموعة من قواعد النسخ المتماثل.
إذا رغبت في ذلك، حدد مرشحاً واحداً أو أكثر لنسخ الكائنات الثنائية كبيرة الحجم التي تطابق نمط بادئة فقط. على سبيل المثال، إذا حددت بادئة b، يتم نسخ الكائنات الثنائية كبيرة الحجم التي يبدأ اسمها بهذا الحرف فقط. يمكنك تحديد دليل ظاهري كجزء من البادئة. يمكنك إضافة ما يصل إلى خمس تطابقات بادئة كحد أقصى. لا تدعم سلسلة البادئة أحرف البدل.
تعرض الصورة التالية عوامل التصفية التي تقيد الكائنات الثنائية كبيرة الحجم التي يتم نسخها كجزء من قاعدة النسخ المتماثل.
بشكل افتراضي، يتم تعيين نطاق النسخ لنسخ الكائنات الجديدة فقط. لنسخ كل الكائنات الموجودة في الحاوية أو لنسخ كائنات تبدأ من تاريخ ووقت مخصصين، حدد ارتباط التغيير وبادر بتكوين نطاق النسخ لزوج الحاويات.
تعرض الصورة التالية نطاق نسخ مخصص ينسخ الكائنات من تاريخ ووقت محددين فصاعداً.
بعد تكوين النسخ المتماثل للكائن، يعرض مدخل Azure نهج النسخ المتماثل وقواعده، كما هو موضح في الصورة التالية.
لإنشاء نهج النسخ المتماثل باستخدام PowerShell، بادر أولاً بتثبيت الإصدار 2.5.0 أو إصدار أحدث من الوحدة Az.Storage PowerShell. لمزيد من المعلومات عن تثبيت Azure PowerShell، راجع تثبيت Azure PowerShell باستخدام PowerShellGet.
يوضح المثال التالي كيفية إنشاء نهج نسخ متماثل أولاً على الحساب الوجهة، ثم على الحساب المصدر. تذكر استبدال القيم الموجودة بين قوسين بقيمك الخاصة:
# Sign in to your Azure account.
Connect-AzAccount
# Set variables.
$rgName = "<resource-group>"
$srcAccountName = "<source-storage-account>"
$destAccountName = "<destination-storage-account>"
$srcContainerName1 = "source-container1"
$destContainerName1 = "dest-container1"
$srcContainerName2 = "source-container2"
$destContainerName2 = "dest-container2"
# Enable blob versioning and change feed on the source account.
Update-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-EnableChangeFeed $true `
-IsVersioningEnabled $true
# Enable blob versioning on the destination account.
Update-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-IsVersioningEnabled $true
# List the service properties for both accounts.
Get-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName
Get-AzStorageBlobServiceProperty -ResourceGroupName $rgName `
-StorageAccountName $destAccountName
# Create containers in the source and destination accounts.
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $srcAccountName |
New-AzStorageContainer $srcContainerName1
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $destAccountName |
New-AzStorageContainer $destContainerName1
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $srcAccountName |
New-AzStorageContainer $srcContainerName2
Get-AzStorageAccount -ResourceGroupName $rgName -StorageAccountName $destAccountName |
New-AzStorageContainer $destContainerName2
# Define replication rules for each container.
$rule1 = New-AzStorageObjectReplicationPolicyRule -SourceContainer $srcContainerName1 `
-DestinationContainer $destContainerName1 `
-PrefixMatch b
$rule2 = New-AzStorageObjectReplicationPolicyRule -SourceContainer $srcContainerName2 `
-DestinationContainer $destContainerName2 `
-MinCreationTime 2021-09-01T00:00:00Z
# Create the replication policy on the destination account.
$destPolicy = Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $destAccountName `
-PolicyId default `
-SourceAccount $srcAccountName `
-Rule $rule1,$rule2
# Create the same policy on the source account.
Set-AzStorageObjectReplicationPolicy -ResourceGroupName $rgName `
-StorageAccountName $srcAccountName `
-InputObject $destPolicy
لإنشاء نهج نسخ متماثل باستخدام Azure CLI، بادر أولاً بتثبيت الإصدار 2.11.1 من Azure CLI أو إصدار أحدث. لمزيدٍ من المعلومات، راجع بدء استخدام Azure CLI .
بعد ذلك، بادر بتمكين تعيين إصدار الكائن الثنائي كبير الحجم على حسابات التخزين المصدر والوجهة، وتمكين تغيير الخلاصة على الحساب المصدر، عن طريق استدعاء الأمر az storage account blob-service-properties update. تذكر استبدال القيم الموجودة بين قوسين بقيمك الخاصة:
az login
az storage account blob-service-properties update \
--resource-group <resource-group> \
--account-name <source-storage-account> \
--enable-versioning \
--enable-change-feed
az storage account blob-service-properties update \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--enable-versioning
إنشاء حاويات المصدر والوجهة في حسابات التخزين الخاصة بكلٍ منها.
يعين Azure Storage معرف النهج للنهج الجديد عند إنشائه. لإضافة قواعد إضافية إلى النهج، بادر باستدعاء az storage account or-policy rule add وزوِّد معرف النهج.
بعد ذلك، أنشئ النهج على الحساب المصدر باستخدام معرف النهج.
az storage account or-policy show \
--resource-group <resource-group> \
--account-name <dest-storage-account> \
--policy-id <policy-id> |
az storage account or-policy create --resource-group <resource-group> \
--account-name <source-storage-account> \
--policy "@-"
تكوين النسخ المتماثل للعنصر باستخدام ملف JSON
إذا لم يكن لديك أذونات لحساب التخزين المصدر أو تريد استخدام أكثر من 10 أزواج من الحاويات، فيمكنك تكوين النسخ المتماثل للعنصر على الحساب الوجهة وتوفير ملف JSON يحتوي على تعريف النهج لمستخدم آخر لإنشاء نفس النهج على الحساب المصدر. على سبيل المثال، إذا كان الحساب المصدر في مستأجر Microsoft Entra مختلف من حساب الوجهة، فيمكنك استخدام هذا الأسلوب لتكوين النسخ المتماثل للكائن.
للحصول على معلومات حول كيفية تأليف ملف JSON يحتوي على تعريف النهج، راجع ملف تعريف النهج.
إشعار
يسمح بالنسخ المتماثل للكائنات عبر المستأجرين بشكل افتراضي لحساب تخزين. لمنع النسخ المتماثل عبر المستأجرين، يمكنك تعيين الخاصية AllowCrossTenantReplication لمنع النسخ المتماثل للكائنات عبر المستأجرين لحسابات التخزين الخاصة بك. لمزيد من المعلومات، راجع منع النسخ المتماثل للكائنات عبر مستأجري Microsoft Entra.
توضح الأمثلة الموجودة في هذا القسم كيفية تكوين نهج النسخ المتماثل للكائن على الحساب الوجهة، ثم الحصول على ملف JSON لهذا النهج الذي يمكن لمستخدم آخر استخدامه لتكوين النهج على الحساب المصدر.
لتكوين النسخ المتماثل للكائن على الحساب الوجهة باستخدام ملف JSON في مدخل Azure، اتبع الخطوات التالية:
بادر بإنشاء ملف JSON محلي يحدد نهج النسخ المتماثل على الحساب الوجهة. بادر بتعيين الحقل policyId إلى الوضع الافتراضي بحيث يحدد Azure Storage معرف النهج.
تتمثل إحدى الطرق السهلة لإنشاء ملف JSON الذي يحدد نهج النسخ المتماثل في إنشاء نهج نسخ متماثل تجريبي أولاً بين حسابي تخزين في مدخل Azure. يمكنك بعد ذلك تنزيل قواعد النسخ المتماثل وتعديل ملف JSON حسب الحاجة.
انتقل إلى إعدادات النسخ المتماثل للكائن للحساب الوجهة في مدخل Azure.
حدد تحميل قواعد النسخ المتماثل.
تحميل ملف JSON. يعرض مدخل Azure النهج والقواعد التي سيتم إنشاؤها، كما هو موضح في الصورة التالية.
حدد تحميل لإنشاء نهج النسخ المتماثل على الحساب الوجهة.
يمكنك بعد ذلك تنزيل ملف JSON يحتوي على تعريف النهج الذي يمكنك توفيره لمستخدم آخر لتكوين الحساب المصدر. لتنزيل ملف JSON هذا، اتبع الخطوات التالية:
انتقل إلى إعدادات النسخ المتماثل للكائن للحساب الوجهة في مدخل Azure.
حدد الزر المزيد بجوار النهج التي ترغب في تنزيلها، ثم حدد تنزيل القواعد، كما هو موضح في الصورة التالية.
احفظ ملف JSON على الكمبيوتر المحلي خاصتك لمشاركته مع مستخدم آخر لتكوين النهج على الحساب المصدر.
يتضمن ملف JSON الذي تم تنزيله معرف النهج الذي أنشأه Azure Storage للنهج على الحساب الوجهة. يجب عليك استخدام نفس معرف النهج لتكوين النسخ المتماثل للكائن على الحساب المصدر.
ضع في اعتبارك أن تحميل ملف JSON لإنشاء نهج نسخ متماثل للحساب الوجهة عبر مدخل Azure لا يؤدي تلقائيًا إلى إنشاء نفس النهج في الحساب المصدر. يجب على مستخدم آخر إنشاء النهج على الحساب المصدر قبل أن يبدأ Azure Storage في نسخ الكائنات المتماثلة.
لتنزيل ملف JSON يحتوي على تعريف نهج النسخ المتماثل للحساب الوجهة من PowerShell، اتصل بالأمر Get-AzStorageObjectReplicationPolicy لإرجاع النهج. ثم بادر بتحويل النهج إلى JSON واحفظه كملف محلي، كما هو موضح في المثال التالي. تذكر استبدال القيم الموجودة بين قوسين بزاوية ومسار الملف بقيمك الخاصة:
لاستخدام ملف JSON لتحديد نهج النسخ المتماثل على الحساب المصدر باستخدام PowerShell، بادر باسترداد الملف المحلي والتحويل من JSON إلى كائن. ثم اتصل بالأمر Set-AzStorageObjectReplicationPolicy لتكوين النهج على الحساب المصدر، كما هو موضح في المثال التالي.
عند تشغيل المثال، تأكد من تعيين المعلمة -ResourceGroupName إلى مجموعة الموارد للحساب المصدر، والمعلمة -StorageAccountName إلى اسم الحساب المصدر. كذلك، تذكر استبدال القيم الموجودة بين قوسين بزاوية ومسار الملف بقيمك الخاصة:
يكتب المثال التالي تعريف النهج إلى ملف JSON باسم policy.json. تذكر استبدال القيم الموجودة بين قوسين بزاوية ومسار الملف بقيمك الخاصة:
az storage account or-policy show \
--account-name <dest-account-name> \
--policy-id <policy-id> > policy.json
لاستخدام ملف JSON لتكوين نهج النسخ المتماثل على الحساب المصدر باستخدام Azure CLI، اتصل بالأمر az storage account or-policy create والرجوع إلى ملف policy.json. تذكر استبدال القيم الموجودة بين قوسين بزاوية ومسار الملف بقيمك الخاصة:
التحقق من حالة النسخ المتماثل لكائن ثنائي كبير الحجم
يمكنك التحقق من حالة النسخ المتماثل لكائن ثنائي كبير الحجم في الحساب المصدر باستخدام مدخل Azure أو PowerShell أو Azure CLI. لا يتم تعبئة خصائص النسخ المتماثل للعناصر حتى يكتمل النسخ المتماثل أو يفشل.
للتحقق من حالة النسخ المتماثل لكائن ثنائي كبير الحجم في الحساب المصدر في مدخل Azure، اتبع الخطوات التالية:
انتقل إلى الحساب المصدر في مدخل Azure.
حدد موقع الحاوية التي تتضمن الكائن الثنائي كبير الحجم المصدر.
حدد الكائن الثنائي كبير الحجم لعرض خصائصه. إذا تم نسخ الكائن الثنائي كبير الحجم بنجاحٍ، فسترى في قسم النسخ المتماثل للكائن أنه تم تعيين الحالة إلى مكتمل. يتم أيضاً سرد معرف نهج النسخ المتماثل ومعرف القاعدة التي تحكم النسخ المتماثل للكائن لهذه الحاوية.
للتحقق من حالة النسخ المتماثل لنقطة في الحساب المصدر مع PowerShell، احصل على قيمة خاصية حالة النسخالنسخ المتماثل للكائن، كما هو موضح في المثال التالي. تذكر استبدال القيم الموجودة بين قوسين بقيمك الخاصة:
للتحقق من حالة النسخ المتماثل لكائن ثنائي كبير الحجم في الحساب المصدر باستخدام Azure CLI، احصل على قيمة خاصية حالة النسخ المتماثل للكائن، كما هو موضح في المثال التالي:
إذا كانت حالة النسخ المتماثل للكائنات الثنائية كبيرة الحجم في الحساب المصدر تشير إلى فشل، فقم بالتحقيق في الأسباب المحتملة التالية:
تأكد من تكوين نهج النسخ المتماثل للكائن على حساب الوجهة.
تحقق من أن حاوية الوجهة لا تزال موجودة.
إذا تم تشفير كائن تخزين البيانات الثنائية الكبيرة المصدر بمفتاح مقدم من العميل كجزء من عملية الكتابة، فسيفشل النسخ المتماثل للكائن. للحصول على مزيدٍ من المعلومات عن المفاتيح التي يوفرها العملاء، راجع توفير مفتاح تشفير على طلب لتخزين كائن ثنائي كبير الحجم.
إزالة نهج نسخ متماثل
لإزالة نهج النسخ المتماثل والقواعد المقترنة به، استخدم مدخل Azure أو PowerShell أو CLI.