التشغيل السريع: إنشاء Azure Front Door Standard/Premium - Azure CLI

في هذه البداية السريعة، يمكنك التعرف على كيفية إنشاء ملف تعريف Azure Front Door Standard/Premium باستخدام Azure CLI. ستقوم بإنشاء ملف التعريف هذا باستخدام تطبيقي ويب كأصل، وإضافة نهج أمان جدار حماية تطبيق الويب. يمكنك بعد ذلك التحقق من الاتصال بتطبيقات الويب الخاصة بك باستخدام اسم مضيف نقطة نهاية Azure Front Door.

إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.

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

يمكنك استخدام Azure Cloud Shell أو Azure CLI محلي.

قم بإنشاء مجموعة موارد

في Azure، تقوم بتخصيص الموارد ذات الصلة لمجموعة موارد. يمكنك إما استخدام مجموعة موارد موجودة أو إنشاء مجموعة جديدة.

شعل إنشاء مجموعة Azure لإنشاء مجموعة موارد.

az group create --name myRGFD --location centralus

إنشاء ملف تعريف Azure Front Door

قم بتشغيل إنشاء ملف تعريف az afd لإنشاء ملف تعريف Azure Front Door.

ملاحظة

إذا كنت ترغب في نشر Azure Front Door Standard بدلًا من Premium، فاستبدل قيمة معلمة sku بـ Standard_AzureFrontDoor. لن تتمكن من نشر القواعد المدارة باستخدام نهج جدار حماية تطبيق الويب، إن اخترت Standard SKU. للمقارنة التفصيلية، راجع مقارنة مستوى Azure Front Door.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor

قم بإنشاء مثيلين من تطبيق الويب

تحتاج إلى مثيلي تطبيق ويب يتم تشغيلهما في مناطق Azure مختلفة لهذا البرنامج التعليمي. يعمل كلا المثيلين للتطبيق في وضع نشط/نشط، لذلك أي منهم يمكنه الحفاظ على المرور.

إذا لم يكن لديك تطبيق ويب بالفعل، فاستخدم البرنامج النصي التالي لإعداد مثال على تطبيقات الويب.

إعداد خطط App Service

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

قم بتشغيل إنشاء خطة خدمة تطبيق az لإنشاء خطط خدمة التطبيق.

az appservice plan create \
    --name myAppServicePlanCentralUS \
    --resource-group myRGFD \
    --location centralus
az appservice plan create \
    --name myAppServicePlanEastUS \
    --resource-group myRGFD \
    --location eastus

إنشاء تطبيقات ويب

قم بتشغيل إنشاء تطبيق ويب azلإنشاء تطبيق ويب في كل خطة من خطط خدمات التطبيقات في الخطوة السابقة. يجب أن تكون أسماء تطبيقات الويب مميزة على نحو عمومي.

az webapp create \
    --name WebAppContoso-01 \
    --resource-group myRGFD \
    --plan myAppServicePlanCentralUS
az webapp create \
    --name WebAppContoso-02 \
    --resource-group myRGFD \
    --plan myAppServicePlanEastUS

اكتب اسم المضيف الافتراضي لكل تطبيق ويب حتى تتمكن من تحديد عناوين الواجهة الخلفية عند نشرFront Door في الخطوة التالية.

إنشاء Azure Front Door

إنشاء ملف تعريف Front Door

قم بتشغيل الأمر az afd profile create لإنشاء ملف تعريف Azure Front Door.

ملاحظة

إذا كنت تريد توزيع Azure Front Door Standard بدلاً من Premium، فاستبدل قيمة معلمة sku بـ Standard_AzureFrontDoor. لن تتمكن من توزيع القواعد المُدارة باستخدام نهج WAF، إذا اخترت SKU القياسي. للمقارنة التفصيلية، راجع مقارنة مستوى Azure Front Door.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor

إضافة نقطة نهاية

قم بتشغيل إنشاء نقطة نهاية az afd لإنشاء نقطة نهاية في ملف التعريف الخاص بك. يمكنك إنشاء عدة نقاط النهاية في ملف التعريف الخاص بك بعد الانتهاء من تجربة الإنشاء.

az afd endpoint create \
    --resource-group myRGFD \
    --endpoint-name contosofrontend \
    --profile-name contosoafd \
    --enabled-state Enabled

أنشئ مجموعة أصل

قم بتشغيل إنشاء مجموعة أصل az afd لإنشاء مجموعة أصل تحتوي على تطبيقي الويب.

az afd origin-group create \
    --resource-group myRGFD \
    --origin-group-name og \
    --profile-name contosoafd \
    --probe-request-type GET \
    --probe-protocol Http \
    --probe-interval-in-seconds 60 \
    --probe-path / \
    --sample-size 4 \
    --successful-samples-required 3 \
    --additional-latency-in-milliseconds 50

إضافة أصل إلى المجموعة

قم بتشغيل إنشاء أصل az afd لإضافة أصل إلى مجموعة الأصل الخاصة بك.

az afd origin create \
    --resource-group myRGFD \
    --host-name webappcontoso-01.azurewebsites.net \
    --profile-name contosoafd \
    --origin-group-name og \
    --origin-name contoso1 \
    --origin-host-header webappcontoso-01.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

كرر هذه الخطوة وقم بإضافة أصلك الثاني.

az afd origin create \
    --resource-group myRGFD \
    --host-name webappcontoso-02.azurewebsites.net \
    --profile-name contosoafd \
    --origin-group-name og \
    --origin-name contoso2 \
    --origin-host-header webappcontoso-02.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

إضافة مسار

قم بتشغيل إنشاء مسار az afd لتعيين نقطة النهاية الخاصة بك إلى مجموعة الأصل. يعيد هذا المسار توجيه الطلبات من نقطة النهاية إلى المجموعة الأصلية الخاصة بك.

az afd route create \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --endpoint-name contosofrontend \
    --forwarding-protocol MatchRequest \
    --route-name route \
    --https-redirect Enabled \
    --origin-group og \
    --supported-protocols Http Https \
    --link-to-default-domain Enabled 

سيصبح ملف تعريف Front Door الخاص بك يعمل بكامل طاقته مع الخطوة الأخيرة.

قم بإنشاء نهج أمان جديدة

إنشاء نهج جدار حماية تطبيق الويب

قم بتشغيل إنشاء نهج جدار حماية تطبيق الويب للباب الأمامي للشبكة من az لإنشاء نهج جدار حماية تطبيق الويب جديد لـ Front Door الخاص بك. ينشئ هذا المثال نهجًا ممكّنًا وفي وضع المنع.

ملاحظة

لن تعمل القواعد المُدارة إلا مع Front Door Premium SKU. يمكنك اختيار Standard SKU أدناه لاستخدام القواعد المخصصة.

az network front-door waf-policy create \
    --name contosoWAF \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor \
    --disabled false \
    --mode Prevention

ملاحظة

إذا قمت بتحديد وضع Detection، فلن يحظر جدار حماية تطبيق الويب أي طلبات.

تعيين القواعد المُدارة إلى نهج جدار حماية تطبيق الويب

قم بتشغيل إضافة قواعد مُدارة لنهج جدار حماية تطبيق الويب للباب الأمامي للشبكة من az لإضافة قواعد مُدارة إلى نهج جدار حماية تطبيق الويب الخاص بك. يضيف هذا المثال Microsoft_DefaultRuleSet_1.2 و Microsoft_BotManagerRuleSet_1.0 إلى النهج الخاص بك.

az network front-door waf-policy managed-rules add \
    --policy-name contosoWAF \
    --resource-group myRGFD \
    --type Microsoft_DefaultRuleSet \
    --version 1.2 
az network front-door waf-policy managed-rules add \
    --policy-name contosoWAF \
    --resource-group myRGFD \
    --type Microsoft_BotManagerRuleSet \
    --version 1.0

إنشاء نهج الأمان

قم بتشغيل إنشاء نهج الأمان az afd لتطبيق نهج جدار حماية تطبيق الويب الخاص بك على المجال الافتراضي لنقطة النهاية.

ملاحظة

استبدل "mysubscription" بمعرف اشتراك Azure في المجالات ومعلمات نهج جدار حماية تطبيق الويب أدناه. قم بتشغيل az account subscription list للحصول على تفاصيل معرف الاشتراك.

az afd security-policy create \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --security-policy-name contososecurity \
    --domains /subscriptions/mysubscription/resourcegroups/myRGFD/providers/Microsoft.Cdn/profiles/contosoafd/afdEndpoints/contosofrontend \
    --waf-policy /subscriptions/mysubscription/resourcegroups/myRGFD/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/contosoWAF

اختبر Front Door

عندما تنشئ ملف تعريف Azure Front Door Standard/Premium، فذلك يستغرق بعض الدقائق من أجل نشر الإعدادات عالميًا بمجرد الانتهاء، يمكنك الوصول إلى المضيف الأمامي الذي أنشأته.

قم بتشغيل عرض نقطة نهاية az afd للحصول على اسم المضيف لنقطة نهاية Front Door.

az afd endpoint show --resource-group myRGFD --profile-name contosoafd --endpoint-name contosofrontend

في المستعرض، انتقل إلى اسم مضيف نقطة النهاية: contosofrontend-<hash>.z01.azurefd.net. سيتم توجيه طلبك تلقائيًا إلى تطبيق الويب الأقل خمولًا في مجموعة الأصل.

لقطة شاشة للرسالة: تطبيق الويب الخاص بك قيد التشغيل وينتظر المحتوى الخاص بك

لاختبار مقاوم الفشل العمومي، سوف نستخدم الخطوات التالية:

  1. افتح متصفحًا، كما هو موضح أعلاه، ثم انتقل إلى اسم مضيف نقطة النهاية: contosofrontend-<hash>.z01.azurefd.net.

  2. إيقاف أحد تطبيقات الويب عن طريق تشغيل إيقاف تطبيق ويب az

    az webapp stop --name WebAppContoso-01 --resource-group myRGFD
    
  3. تحديث المستعرض الخاص بك. يجب أن تشاهد صفحة المعلومات نفسها.

تلميح

هناك القليل من التأخير لهذه الإجراءات. ربما تحتاج لإعادة التحديث مرة ثانية

  1. ابحث عن تطبيق الويب الآخر، وتوقف عنه أيضًا.

    az webapp stop --name WebAppContoso-02 --resource-group myRGFD
    
  2. تحديث المستعرض الخاص بك. هذه المرة، يجب أن تشاهد رسالة خطأ.

    لقطة شاشة للرسالة: توقف كلا مثيلي تطبيق الويب

  3. إعادة تشغيل أحد تطبيقات الويب عن طريق تشغيل بدء تطبيق ويب az. قم بتحديث المستعرض وستعود الصفحة إلى وضعها الطبيعي.

    az webapp start --name WebAppContoso-01 --resource-group myRGFD
    

تنظيف الموارد

عندما لا تحتاج إلى موارد Front Door، احذف كلتا مجموعتي الموارد. يؤدي حذف مجموعات الموارد أيضًا إلى حذف Front Door وجميع الموارد ذات الصلة.

شغل حذف مجموعة az:

az group delete --name myRGFD

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

تقدم إلى المقالة التالية لمعرفة كيفية إضافة مجال مخصص إلى الباب الأمامي.