Geo-replication in Azure Container Registry

تمكين النسخ الجغرافي لسجل حاويات Azure (ACR) ينشئ موارد نسخ جغرافية في مناطق Azure التي تختارها. عندما تدفع الصور إلى سجل مكرر جغرافيا، يتم تزامن المحتوى تلقائيا مع جميع النسخ الجغرافية.

مع التكرار الجغرافي:

  • إدارة سجل واحد: حافظ على مجموعة واحدة من بيانات الاعتماد، وتعيين الأدوار، وقواعد الشبكة، وتكوين السجل عبر جميع النسخ الجغرافية.
  • استخدم نقطة نهاية عامة واحدة: المرجع myregistry.azurecr.io/myimage:tag في جميع بناءاتك ونشراتك. يقوم Azure بتوجيه الطلبات إلى النسخة الجغرافية التي تمتلك أفضل ملف أداء للعميل، والذي عادة ما يكون أقرب نسخة جغرافية. ومع ذلك، إذا كان العميل متساويا المسافة بين عدة نسخ جغرافية أو لم يكن أقرب نسخة جغرافية غير متاحة، فقد يتم توجيه الطلبات إلى مكان آخر.
  • المزامنة التلقائية: دفع العلامات والهزيمات مرة واحدة؛ يقوم ACR بتكرار المحتوى والبيانات الوصفية لجميع النسخ الجيولوجية.

يتطلب التكرار الجغرافي وحدة تخزين المميزة.

‏‫ملاحظة

الاعتبارات الأساسية

نموذج النسخ المتماثل

يستخدم تكرار التكرار الجغرافي ل ACR نموذجا نشطا-نشطا .

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

نموذج الاتساق

يستخدم ACR الاتساق النهائي.

  • بعد دفع صورة، يقوم ACR في النهاية بتكرار المحتوى والبيانات الوصفية التي تم دفعها إلى جميع النسخ الجغرافية في الخلفية.
  • زمن التكرار يعتمد على حجم الصورة.
  • حتى يكتمل التكرار في الخلفية، قد لا يحتوي النسخة الجغرافية على أحدث محتوى أو بيانات وصفية مدفوعة. يمكنك استخدام webhooks لاستقبال الإشعارات عند اكتمال النسخ لصورة مدفوعة معينة في كل نسخة جغرافية.

اعتبارات قابلية الوصول العالية

يحسن التكرار الجغرافي التوافر من خلال الاحتفاظ بالصور في مناطق متعددة. إذا تعرضت منطقة واحدة لانقطاع، تبقى الصور متاحة من النسخ الجغرافية الأخرى—ويستمر الدفع والسحب في العمل عبر النسخ الجغرافية المتبقية.

للحصول على أقصى قدر من المرونة:

سلوك انقطاع المنطقة الأصلية

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

ما الذي يستمر في العمل خلال انقطاع الكهرباء في المنطقة الأصلية:

  • دفع وسحب الصورة — يمكن للعملاء دفع وسحب الصور من أي نسخة جغرافية متاحة باستخدام نفس رابط السجل (myregistry.azurecr.io). يقوم Azure Traffic Manager تلقائيا بتوجيه الطلبات إلى نسخة جغرافية سليمة.
  • المصادقة — تستمر جميع طرق المصادقة في العمل، بما في ذلك Microsoft Entra ID (المعروف سابقا باسم Azure Active Directory)، ومبادئ الخدمة، والهويات المدارة، والرموز الموجهة ضمن نطاق المستودع. يمكن للعملاء المصادقة على أي نسخة جغرافية متاحة دون الحاجة لتغيير بيانات الاعتماد أو الرموز أو عناوين السجل.
  • توصيل Webhook — تستمر Webhook المهيأة للنسخ الجغرافية المتاحة في الإطلاق.

ما هو غير متاح أثناء انقطاع في المنطقة الرئيسية:

  • تغييرات تكوين السجل — لا يمكنك تعديل خصائص السجل مثل قواعد الشبكة، إعدادات النسخ، أو تكوينات مناطق التوفر حتى تستعيد المنطقة الرئيسية.
  • مهام ACR— المهام مرتبطة بالمنطقة الأصلية ولا تعمل أثناء عدم توفرها.

اعتبارات مستوى الخدمة ومستوى الخدمة

تطبق اتفاقيات Azure Container Registry SLA على كل نسخة جغرافية بشكل مستقل.

بعض حدود مستويات الخدمة لها اعتبارات خاصة كما يلي:

  • التخزين: حدود التخزين مشتركة بين جميع النسخ الجغرافية المقلدة. عندما تدفع صورة بحجم 1 جيجابايت، تشغل 1 جيجابايت في جميع النسخ الجغرافية بعد اكتمال التكرار النهائي.
  • حدود معدل API: حدود التقليل من عمليات API، مثل عدد القراءة والكتابة في الدقيقة، تعتمد جغرافيا خاصا بالنسخ.

لمزيد من المعلومات حول مستويات الخدمة والحدود، راجع مستويات خدمة ACR.

اعتبارات التسعير

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

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

لمزيد من المعلومات، راجع تسعير ACR.

تكوين التكرار الجغرافي

أذونات مطلوبة

لإدارة النسخ الجغرافية، تحتاج هويتك إلى هذه الأذونات:

إذن وصف
Microsoft.ContainerRegistry/registries/read احصل على خصائص السجل
Microsoft.ContainerRegistry/registries/write إنشاء أو تحديث خصائص السجل
Microsoft.ContainerRegistry/registries/replications/read قائمة النسخ الجغرافية
Microsoft.ContainerRegistry/registries/replications/write إنشاء أو تحديث نسخة جغرافية
Microsoft.ContainerRegistry/registries/replications/delete حذف نسخة جغرافية
Microsoft.ContainerRegistry/registries/replications/operationStatuses/read احصل على حالة عملية النسخة الجغرافية

مدخل Azure

  1. اذهب إلى سجل التسجيل الخاص بك في بوابة Azure.
  2. تحت الخدمات، اختر النسخ الجغرافية.
  3. على الخريطة:
    • سداسي أزرق: المنطقة الرئيسية (حيث أنشأت السجل)
    • السداسيات الخضراء: المناطق المتاحة
    • السداسيات الرمادية: مناطق غير متاحة
  4. اختر سداسي أخضر، ثم اختر الإنشاء.

لقطة شاشة لخريطة النسخ الجغرافي في بوابة Azure.

Azure CLI

# Create a replica
az acr replication create --registry myregistry --location eastus

# List replicas
az acr replication list --registry myregistry --output table

# Delete a replica
az acr replication delete --registry myregistry --name eastus

لمزيد من الأوامر، راجع az acr replication.

ادفع أو اسحب الصور عبر نقطة النهاية العالمية

بعد إعداد التكرار الجغرافي، يمكنك دفع أو سحب المحتوى إلى السجل الخاص بك عبر نقطة النهاية العالمية للسجل (myregistry.azurecr.io).

  • عندما تدفع أو تسحب عبر نقطة النهاية العالمية، يقوم ACR بتوجيه الطلب إلى النسخة الجغرافية التي تحتوي على أفضل ملف أداء للشبكة للعميل.
  • عادة ما يكون هذا أقرب نسخة جغرافية.
  • ومع ذلك، إذا كان العميل متساويا المسافة بين عدة نسخ جغرافية أو لم يكن أقرب نسخة جغرافية غير متاحة، فقد يتم توجيه الطلبات إلى مكان آخر.
  • يتم إدارة هذا التوجيه بواسطة ACR—لا تتحكم في أي نسخة جغرافية تتعامل مع طلب معين.

استبعاد نسخة جغرافية مؤقتا من توجيه نقطة النهاية العالمية

يمكنك استبعاد نسخة جغرافية من التوجيه العالمي لنقطة النهاية عن طريق تعطيل إعداد --region-endpoint-enabled نسخة جغرافية معينة. هذا مفيد للصيانة أو استكشاف المشكلة.

  • عندما --region-endpoint-enabled يتم تعيين إعداد نسخة جغرافية معينة على false، يوقف ACR توجيه الطلبات إلى ذلك النسخة الجغرافية المحددة للطلبات التي تذهب إلى نقطة النهاية العالمية.
  • تستمر البيانات في المزامنة مع نسخة جغرافية حتى لو تم تعطيل توجيه نقطة النهاية العالمي لذلك النسخة الجغرافية المحددة.
  • وبالتالي، تستمر حصة التخزين والتكاليف في التراكم لهذا النسخة الجغرافية.
# Prevent the global endpoint from routing to a specific geo-replica.
# This excludes only the specific geo-replica from global endpoint routing.
az acr replication update --registry myregistry --name eastus \
  --region-endpoint-enabled false

# Re-enable the geo-replica in global endpoint routing.
# This allows the global endpoint to route certain requests to the geo-replica
# depending on the client's network performance profile with the geo-replica.
az acr replication update --registry myregistry --name eastus \
  --region-endpoint-enabled true

دفع أو سحب الصور عبر نقاط نهاية إقليمية مقلدة جغرافيا

تعطيك نقاط النهاية الإقليمية عناوين URL مخصصة لكل نسخة، مما يتيح لك تحديد بالضبط أي نسخة جغرافية إقليمية تتعامل مع طلب الدفع أو السحب الخاص بك:

  • سجل الهدايا الخاص بي. eastus.geo.azurecr.io
  • سجل الهدايا الخاص بي. westeurope.geo.azurecr.io

استخدم نقاط النهاية الإقليمية عندما تحتاج:

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

‏‫ملاحظة

النقاط النهائية الإقليمية حاليا في مرحلة المعاينة الخاصة. للتسجيل والتوثيق، انظر نقاط النهاية الإقليمية للسجلات التي تم تكرارها جغرافيا.

استكشاف الأخطاء وإصلاحها

فشل الدفع مع أخطاء في البيان

بعض حلول DNS في لينكس لا تخزن الاستجابات بشكل ثابت. إذا كان هناك عدة نسخ جغرافية في المناطق المجاورة، قد يحل DNS إلى نسخ مختلفة خلال دفعة واحدة (ارتداد DNS)، مما يؤدي إلى ظهور البيان المدفوع إلى طبقات مرجعية تم دفعها إلى نسخة جغرافية مختلفة.

الحلول‏‎:

إنشاء النسخ الجغرافية عالق في السجلات الخاصة التي تدعم نقاط النهاية

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

الحل:

  • لحل المشكلة، قم بحذف نسخة جغرافية يدويا التي علقت في حالة التزويد.
  • بعد ذلك، تأكد من أن الهوية تحمل الإذن Microsoft.Network/privateEndpoints/privateLinkServiceProxies/write قبل إنشاء نسخة جغرافية.

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