تدريب - تمكين تجاوز الفشل التلقائي باستخدام توجيه الأفضلية

مكتمل

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

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

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

إنشاء ملف تعريف جديد لـ Traffic Manager

  1. قم بتشغيل الأمر التالي في Cloud Shell لإنشاء ملف تعريف جديد في Manager.

    az network traffic-manager profile create \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --name TM-MusicStream-Priority \
        --routing-method Priority \
        --unique-dns-name TM-MusicStream-Priority-$RANDOM
    

    يمكنك استخدام هذه المعلمات في الأمر:

    • --أولوية أسلوب التوجيه: تقوم بإنشاء ملف تعريف Traffic Manager باستخدام أسلوب توجيه الأولوية.
    • --اسم DNS فريد: يقوم بإنشاء اسم المجال الفريد عالمياً <unique-dns-name>.trafficmanager.net. نستخدم دالة $RANDOM Bash لإرجاع عدد صحيح عشوائي لضمان أن الاسم فريد.

توزيع تطبيقات الويب

  1. قم بتشغيل الأمر التالي لنشر قالب Resource Manager. يقوم القالب بإنشاء زوج من الخوادم، أحدهما في منطقة شرق آسيا، والآخر في منطقة غرب الولايات المتحدة 2. قد يستغرق التوزيع بضع دقائق حتى تمام الاكتمال.

    az deployment group create \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --template-uri  https://raw.githubusercontent.com/MicrosoftDocs/mslearn-distribute-load-with-traffic-manager/master/azuredeploy.json \
        --parameters password="$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 32)"
    

إضافة نقاط النهاية إلى Traffic Manager

  1. تعمل تطبيقات الويب الآن على الأجهزة الظاهرية. قم بتشغيل الأوامر التالية لإضافة موارد عنوان IP العام للأجهزة الظاهرية كنقاط نهاية إلى ملف تعريف Traffic Manager.

    WestId=$(az network public-ip show \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --name westus2-vm-nic-pip \
        --query id \
        --output tsv)
    
    az network traffic-manager endpoint create \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --profile-name TM-MusicStream-Priority \
        --name "Primary-WestUS" \
        --type azureEndpoints \
        --priority 1 \
        --target-resource-id $WestId
    
    EastId=$(az network public-ip show \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --name eastasia-vm-nic-pip \
        --query id \
        --output tsv)
    
    az network traffic-manager endpoint create \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --profile-name TM-MusicStream-Priority \
        --name "Failover-EastAsia" \
        --type azureEndpoints \
        --priority 2 \
        --target-resource-id $EastId
    

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

  2. دعونا نلقي نظرة سريعة على نقاط النهاية التي قمنا بتكوينها. تشغيل الأمر التالي.

    az network traffic-manager endpoint list \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --profile-name TM-MusicStream-Priority \
        --output table
    

اختبار التطبيق

  1. دعونا نلقي نظرة على ما يعرضه DNS لتطبيقات الويب وملف تعريف Traffic Manager لدينا. قم بتشغيل الأوامر التالية لعرض عناوين IP لكل من الموارد التي أنشأناها.

  2. استرد عنوان تطبيق الويب لمنطقة غرب الولايات المتحدة الأمريكية 2.

    nslookup $(az network public-ip show \
                --resource-group <rgn>Sandbox resource group </rgn> \
                --name westus2-vm-nic-pip \
                --query dnsSettings.fqdn \
                --output tsv)
    
  3. استرد عنوان تطبيق الويب لمنطقة شرق آسيا.

    nslookup $(az network public-ip show \
            --resource-group <rgn>Sandbox resource group </rgn> \
            --name eastasia-vm-nic-pip \
            --query dnsSettings.fqdn \
            --output tsv)
    
  4. استرد العنوان لملف تعريف Traffic Manager.

    # Retrieve the address for the Traffic Manager profile
    nslookup $(az network traffic-manager profile show \
                --resource-group <rgn>Sandbox resource group </rgn> \
                --name TM-MusicStream-Priority \
                --query dnsConfig.fqdn \
                --output tsv)
    

    يجب أن يتطابق عنوان ملف تعريف Traffic Manager مع عنوان IP الخاص بعنوان IP العام لـ westus2-vm-nic-pip الذي تم تعيينه للجهاز الظاهري westus2-vm.

  5. قم بتشغيل الأمر التالي للانتقال إلى اسم المجال المؤهل بالكامل لملف تعريف Traffic Manager (FQDN). يتم توجيه طلبك إلى نقطة النهاية التي تستجيب مع أقصى أولوية.

    echo http://$(az network traffic-manager profile show \
        --resource-group <rgn>Sandbox resource group </rgn> \
        --name TM-MusicStream-Priority \
        --query dnsConfig.fqdn \
        --output tsv)
    

    تطبع التعليمة البرمجية FQDN في Cloud Shell. يمكنك تحديد FQDN لفتح نافذة مستعرض ويب جديد أو علامة تبويب جديدة.

  6. تحقق من أن التطبيق يعمل، ومن أن الموقع المعروض في أسفل الصفحة هو منطقة غرب الولايات المتحدة الأمريكية 2.

    Screenshot of the running West US web app..

  7. قم بتشغيل الأمر التالي لتعطيل نقطة النهاية الأساسية.

    az network traffic-manager endpoint update \
        --resource-group <rgn>Sandbox resource group </rgn>  \
        --name "Primary-WestUS" \
        --profile-name TM-MusicStream-Priority \
        --type azureEndpoints \
        --endpoint-status Disabled
    
  8. دعونا نلقي نظرة مجدداً على ما يعرضه DNS لتطبيقات الويب وملف تعريف Traffic Manager لدينا. شغّل الأوامر التالية.

  9. استرد عنوان تطبيق الويب لمنطقة غرب الولايات المتحدة الأمريكية 2.

    nslookup $(az network public-ip show \
                --resource-group <rgn>Sandbox resource group </rgn> \
                --name westus2-vm-nic-pip \
                --query dnsSettings.fqdn \
                --output tsv)
    
  10. استرد عنوان تطبيق الويب لمنطقة شرق آسيا.

    nslookup $(az network public-ip show \
                --resource-group <rgn>Sandbox resource group </rgn> \
                --name eastasia-vm-nic-pip \
                --query dnsSettings.fqdn \
                --output tsv)
    
  11. استرد العنوان لملف تعريف Traffic Manager.

    nslookup $(az network traffic-manager profile show \
                --resource-group <rgn>Sandbox resource group </rgn> \
                --name TM-MusicStream-Priority \
                --query dnsConfig.fqdn \
                --output tsv)
    

    يجب أن يتطابق عنوان ملف تعريف Traffic Manager الآن مع تطبيق ويب منطقة شرق آسيا.

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

    Screenshot of the running East Asia web app..