نقل مراكز أحداث Azure إلى منطقة أخرى

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

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

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

  • تأكد من أن الخدمات والميزات التي يستخدمها حسابك مدعومة في المنطقة المستهدفة.

  • إذا تم تمكين ميزة الالتقاط لمراكز الأحداث في مساحة الاسم، فانقل حسابات Azure Storage أو Azure Data Lake Store Gen 2 قبل نقل مساحة اسم مراكز الأحداث. يمكنك أيضًا نقل مجموعة الموارد التي تحتوي على مساحات أسماء التخزين ومراكز الأحداث إلى المنطقة الأخرى باتباع خطوات مشابهة لتلك الموضحة في هذه المقالة.

  • إذا كانت مساحة اسم Event Hubs موجودة في مجموعة مراكز الأحداث ، انقل المجموعة المخصصة إلى المنطقة المستهدفة قبل متابعة الخطوات الواردة في هذه المقالة. يمكنك أيضًا استخدام نموذج البدء السريع على GitHub لإنشاء مجموعة مراكز الأحداث. في القالب، قم بإزالة جزء مساحة الاسم من JSON لإنشاء نظام المجموعة فقط.

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

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

وقت التعطل

لفهم أوقات التعطل المحتملة المتضمنة، راجع Cloud Adoption Framework ل Azure: حدد أسلوب نقل.

اعتبارات نقاط نهاية الخدمة

تقيد نقاط نهاية خدمة الشبكة الظاهرية لمراكز أحداث Azure الوصول إلى شبكة ظاهرية محددة. يمكن لنقاط النهاية أيضا تقييد الوصول إلى قائمة نطاقات عناوين IPv4 (إصدار بروتوكول الإنترنت 4). يتم رفض وصول أي مستخدم يتصل بمراكز الأحداث من خارج هذه المصادر. إذا تم تكوين نقاط نهاية الخدمة في المنطقة المصدر لمورد Event Hubs، يجب القيام بنفس الشيء في الهدف.

لإعادة إنشاء مراكز الأحداث بنجاح إلى المنطقة المستهدفة، يجب إنشاء الشبكة الظاهرية والشبكة الفرعية مسبقا. في حالة تنفيذ نقل هذين الموردين باستخدام أداة Azure Resource Mover، لن يتم تكوين نقاط نهاية الخدمة تلقائيا. ومن ثم، يجب تكوينها يدويا، والتي يمكن إجراؤها من خلال مدخل Azure أو Azure CLI أو Azure PowerShell.

اعتبارات نقطة النهاية الخاصة

يوفر Azure Private Link اتصالا خاصا من شبكة ظاهرية إلى نظام Azure الأساسي كخدمة (PaaS) أو خدمات مملوكة للعملاء أو شركاء Microsoft. يعمل Private Link على تبسيط بنية الشبكة وتأمين الاتصال بين نقاط النهاية في Azure عن طريق القضاء على تعرض البيانات للإنترنت العام.

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

تجهيز

للبدء، قم بتصدير قالب Resource Manager. يحتوي هذا النموذج على الإعدادات التي تصف مساحة اسم "مراكز الأحداث".

  1. قم بتسجيل الدخول إلى بوابة Azure.

  2. حدد كل الموارد ثم حدد مساحة اسم "مراكز الأحداث".

  3. في صفحة مساحة أسماء مراكز الأحداث، حدد تصدير نموذج ضمن التشغيل الآلي في القائمة اليمنى.

  4. اختر Download في صفحة Export template .

    لقطة شاشة توضح مكان تنزيل قالب Resource Manager

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

    يحتوي هذا الملف المضغوط على ملفات .json التي تتضمن القالب والبرامج النصية لتوزيع القالب.

تعديل القالب

قم بتعديل القالب عن طريق تغيير اسم مساحة اسم Event Hubs والمنطقة.

  1. حدد Template deployment.

  2. في مدخل Microsoft Azure، حدد Create.

  3. حدد Build your own template in the editor.

  4. حدد تحميل ملف، ثم اتّبع الإرشادات لتحميل template.json الذي نزّلته في القسم السابق.

  5. في ملف template.json ، قم بتسمية مساحة اسم مراكز الأحداث عن طريق تعيين القيمة الافتراضية لاسم مساحة الاسم. يعين هذا المثال القيمة الافتراضية لاسم مساحة اسم مراكز الأحداث إلى namespace-name.

     "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
     "contentVersion": "1.0.0.0",
     "parameters": {
         "namespaces_name": {
             "defaultValue": "namespace-name",
             "type": "String"
         },
     },
    
  6. قم بتحرير خاصية الموقع في الملف template.json إلى المنطقة الهدف. يعيّن هذا المثال المنطقة المستهدفة إلى centralus.

    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults",
            "apiVersion": "2023-07-01",
            "name": "[parameters('vaults_name')]",
            "location": "centralus",
    
        },
    
    ]
    
    
     "resources": [
     {
         "type": "Microsoft.EventHub/namespaces",
         "apiVersion": "2023-01-01-preview",
         "name": "[parameters('namespaces_name')]",
         "location": "centralus",
    
      },
     {
         "type": "Microsoft.EventHub/namespaces/authorizationrules",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_name'), '/RootManageSharedAccessKey')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
         ],
         "properties": {
             "rights": [
                 "Listen",
                 "Manage",
                 "Send"
             ]
         }
     },
     {
         "type": "Microsoft.EventHub/namespaces/networkrulesets",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_name'), '/default')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
         ],
         "properties": {
             "publicNetworkAccess": "Enabled",
             "defaultAction": "Deny",
             "virtualNetworkRules": [
                 {
                     "subnet": {
                         "id": "[concat(parameters('virtualNetworks_vnet_akv_externalid'), '/subnets/default')]"
                     },
                     "ignoreMissingVnetServiceEndpoint": false
                 }
             ],
             "ipRules": [],
             "trustedServiceAccessEnabled": false
         }
     },
     {
         "type": "Microsoft.EventHub/namespaces/privateEndpointConnections",
         "apiVersion": "2023-01-01-preview",
         "name": "[concat(parameters('namespaces_peterheesbus_name'), '/81263915-15d5-4f14-8d65-25866d745a66')]",
         "location": "centralus",
         "dependsOn": [
             "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_peterheesbus_name'))]"
         ],
         "properties": {
             "provisioningState": "Succeeded",
             "privateEndpoint": {
                 "id": "[parameters('privateEndpoints_pvs_eventhub_externalid')]"
             },
             "privateLinkServiceConnectionState": {
                 "status": "Approved",
                 "description": "Auto-Approved"
             }
         }
     }
    

    للحصول على رموز مواقع المنطقة، راجع مواقع Azure. التعليمة البرمجية لمنطقة ما هي اسم المنطقة مع عدم وجود مسافات، وسط الولايات المتحدة = centralus.

  7. إزالة الموارد من نوع نقطة النهاية الخاصة في القالب.

     {
         "type": "Microsoft.EventHub/namespaces/privateEndpointConnections",
    
     }
    
  8. إذا قمت بتكوين نقطة نهاية خدمة في مراكز الأحداث الخاصة بك، في networkrulesets القسم ، ضمن virtualNetworkRules، أضف قاعدة الشبكة الفرعية الهدف. تأكد من تعيين العلامة ignoreMissingVnetServiceEndpoint_ إلى False، بحيث يفشل IaC في نشر مراكز الأحداث في حالة عدم تكوين نقطة نهاية الخدمة في المنطقة المستهدفة.

    _parameter.json_

    {
      "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
    
        "target_vnet_externalid": {
          "value": "virtualnetwork-externalid"
        },
        "target_subnet_name": {
          "value": "subnet-name"
        }
      }
    }
    

    _template.json

    {
        "type": "Microsoft.EventHub/namespaces/networkrulesets",
        "apiVersion": "2023-01-01-preview",
        "name": "[concat(parameters('namespaces_name'), '/default')]",
        "location": "centralus",
        "dependsOn": [
            "[resourceId('Microsoft.EventHub/namespaces', parameters('namespaces_name'))]"
        ],
        "properties": {
            "publicNetworkAccess": "Enabled",
            "defaultAction": "Deny",
            "virtualNetworkRules": [
                {
                    "subnet": {
                        "id": "[concat(parameters('target_vnet_externalid), concat('/subnets/', parameters('target_subnet_name')]"
                    },
                    "ignoreMissingVnetServiceEndpoint": false
                }
            ],
            "ipRules": [],
            "trustedServiceAccessEnabled": false
        }
    },
    
    
  9. حدد Saveلحفظ النموذج.

إعادة التوزيع

  1. في مدخل Azure، حدد Create a resource.

  2. في البحث في السوق، اكتبتوزيع النموذج، ثم حدد توزيع النموذج (التوزيع باستخدام القوالب المخصصة).

  3. حدد Build your own template in the editor.

  4. حدد تحميل الملف، ثم اتبع الإرشادات لتحميل ملف template.json الذي قمت بتعديله في القسم الأخير.

  5. في صفحة التوزيع المخصص اتبع الخطوات التالية:

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

        توزيع قالب إدارة الموارد

      2. إذا كانت مساحة اسم المصدر موجودة في مجموعة مراكز الأحداث، فأدخل أسماء مجموعة الموارد و مجموعة مراكز الأحداث كجزء من المعرف الخارجي.

        /subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<CLUSTER'S RESOURCE GROUP>/providers/Microsoft.EventHub/clusters/<CLUSTER NAME>
        
      3. إذا كانت مراكز الأحداث في مساحة الاسم تستخدم حساب تخزين لالتقاط الأحداث، فحدد اسم مجموعة الموارد وحساب التخزين للحقل StorageAccounts_<original storage account name>_external .

        /subscriptions/0000000000-0000-0000-0000-0000000000000/resourceGroups/<STORAGE'S RESOURCE GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE ACCOUNT NAME>
        
    5. حدد مراجعة + إنشاء عند أسفل الصفحة.
    6. في صفحة مراجعة + إنشاء، راجع الإعدادات، ثم حدد إنشاء.
  6. يجب إعادة تكوين إعدادات تكوين الشبكة (نقاط النهاية الخاصة) في مراكز الأحداث الجديدة.

تجاهل أو نظف

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

لتنفيذ التغييرات وإكمال نقل مساحة اسم Event Hubs، احذف مساحة اسم مراكز الأحداث في المنطقة الأصلية. تأكد من معالجة جميع الأحداث في مساحة الاسم قبل حذف مساحة الاسم.

لحذف مساحة اسم "مراكز الأحداث" (المصدر أو الهدف) باستخدام مدخل Microsoft Azure:

  1. في نافذة البحث أعلى مدخل Microsoft Azure، اكتب مراكز الأحداث، وحدد مراكز الأحداث من نتائج البحث. ترى مساحات أسماء "مراكز الأحداث" في قائمة.

  2. حدد مساحة الاسم الهدف المراد حذفها، وحدد حذف من شريط الأدوات.

    لقطة شاشة تعرض حذف مساحة الاسم - الزر

  3. في صفحة حذف مساحة الاسم ، أكد الحذف بكتابة اسم مساحة الاسم، ثم حدد حذف.

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

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

للحصول على إرشادات حول نقل مجموعة مراكز الأحداث من منطقة إلى منطقة أخرى، راجع مقالة نقل مراكز الأحداث إلى منطقة أخرى.

لمعرفة المزيد حول نقل الموارد بين المناطق والتعافي من الكوارث في Azure، راجع: