اختبار نقاط النهاية الخاصة عن طريق نشر اختبار تحميل Azure في شبكة Azure الظاهرية

في هذه المقالة، تعرف على كيفية اختبار نقاط نهاية التطبيق الخاصة باستخدام Azure Load Testing. يمكنك إنشاء مورد Azure Load Testing وتمكينه من إنشاء تحميل من داخل شبكتك الظاهرية (حقن الشبكة الظاهرية).

تمكن هذه الوظيفة سيناريوهات الاستخدام التالية:

  • إنشاء تحميل إلى نقطة نهاية يتم نشرها في شبكة Azure الظاهرية.
  • إنشاء تحميل إلى نقطة نهاية عامة مع قيود الوصول، مثل تقييد عناوين IP للعميل.
  • إنشاء تحميل إلى خدمة محلية، لا يمكن الوصول إليها بشكل عام، متصلة ب Azure عبر ExpressRoute.

تعرف على المزيد حول سيناريوهات نشر اختبار تحميل Azure في شبكتك الظاهرية.

يوفر الرسم التخطيطي التالي نظرة عامة تقنية:

رسم تخطيطي يوضح نظرة عامة تقنية لإدخال الشبكة الظاهرية في Azure Load Testing.

عند بدء اختبار التحميل، تقوم خدمة Azure Load Testing بإدخال موارد Azure التالية في الشبكة الظاهرية التي تحتوي على نقطة نهاية التطبيق:

  • الأجهزة الظاهرية لمحرك الاختبار. تستدعي هذه الأجهزة الظاهرية نقطة نهاية التطبيق الخاص بك أثناء اختبار التحميل.
  • عنوان IP عام.
  • مجموعة أمان الشبكة (NSG).
  • موازن تحميل Azure.

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

إذا قمت بتقييد الوصول إلى شبكتك الظاهرية، فأنت بحاجة إلى تكوين شبكتك الظاهرية لتمكين الاتصال بين اختبار تحميل Azure هذه والأجهزة الظاهرية المحقونة.

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

  • يحتوي حساب Azure الخاص بك على دور مساهم الشبكة، أو أحد أصل هذا الدور، على الشبكة الظاهرية. راجع التحقق من وصول مستخدم إلى موارد Azure للتحقق من أذوناتك.
  • يجب أن تحتوي الشبكة الفرعية التي تستخدمها لاختبار تحميل Azure على عناوين IP غير معينة كافية لاستيعاب عدد محركات اختبار التحميل لاختبارك. تعرف على المزيد حول تكوين اختبارك للتحميل على نطاق واسع.
  • لا يجب تفويض الشبكة الفرعية إلى أي خدمة Azure أخرى. على سبيل المثال، لا ينبغي تفويضه إلى مثيلات حاوية Azure (ACI). تعرف على المزيد حول تفويض الشبكة الفرعية.
  • يجب ألا يتم تمكين IPv6 للشبكة الفرعية. لا يدعم اختبار تحميل Azure الشبكات الفرعية الممكنة بواسطة IPv6. تعرف على المزيد حول [IPv6 for Azure Virtual Network]. (/azure/virtual-network/ip-services/ipv6-overview)
  • الإصدار 2.2.0 من Azure CLI أو أحدث (إذا كنت تستخدم CI/CD). قم بتشغيل az --version للعثور على الإصدار المثبت على الكمبيوتر. إذا كنت بحاجة إلى تثبيت أو ترقية Azure CLI، راجع كيفية تثبيت Azure CLI.

تكوين شبكة اتصال ظاهرية

لاختبار نقاط النهاية الخاصة، يمكنك توصيل اختبار تحميل Azure بشبكة Azure الظاهرية. يجب أن تحتوي الشبكة الظاهرية على شبكة فرعية واحدة على الأقل، وأن تسمح بنسبة استخدام الشبكة الصادرة إلى خدمة Azure Load Testing.

إذا لم يكن لديك شبكة ظاهرية بعد، فاتبع هذه الخطوات لإنشاء شبكة Azure ظاهرية في مدخل Microsoft Azure.

هام

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

إنشاء شبكة فرعية

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

(اختياري) تكوين قواعد حركة المرور

يتطلب اختبار تحميل Azure السماح للأجهزة الظاهرية التي تم إدخالها في شبكتك الظاهرية بالوصول الصادر إلى خدمة Azure Load Testing. بشكل افتراضي، عند إنشاء شبكة ظاهرية، يسمح بالفعل بالوصول الصادر.

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

لتكوين الوصول الصادر لاختبار تحميل Azure:

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

  2. انتقل إلى مجموعة أمان الشبكة.

    إذا لم يكن لديك NSG بعد، فاتبع هذه الخطوات لإنشاء مجموعة أمان شبكة اتصال.

    قم بإنشاء NSG في نفس المنطقة مثل شبكتك الظاهرية، ثم قم بإقرانها بالشبكة الفرعية الخاصة بك.

  3. حدد قواعد الأمان الصادرة في التنقل الأيمن.

    لقطة شاشة تعرض صفحة نظرة عامة على مجموعة أمان الشبكة في مدخل Microsoft Azure، مع تمييز قواعد الأمان الصادرة.

  4. حدد + إضافة، لإضافة قاعدة أمان صادرة جديدة. أدخل المعلومات التالية لإنشاء قاعدة جديدة.

    الحقل القيمة
    Source Any
    نطاقات منافذ المصادر *
    مقصد Any
    نطاقات منفذ الوجهة *
    الاسم azure-load-testing-outbound
    الوصف يستخدم للعمليات المختلفة المتضمنة في تنسيق اختبارات التحميل.
  5. حدد إضافة لإضافة قاعدة الأمان الصادرة إلى مجموعة أمان الشبكة.

تكوين البرنامج النصي لاختبار التحميل

يتم إدخال الأجهزة الظاهرية لمحرك الاختبار، والتي تقوم بتشغيل البرنامج النصي JMeter، في الشبكة الظاهرية التي تحتوي على نقطة نهاية التطبيق. يمكنك الآن الرجوع مباشرة إلى نقطة النهاية في ملف JMX باستخدام عنوان IP الخاص أو استخدام تحليل الاسم في شبكتك.

على سبيل المثال، بالنسبة لنقطة نهاية بعنوان IP 10.179.0.7، في شبكة ظاهرية ذات نطاق شبكة فرعية 10.179.0.0/18، يمكن أن يحتوي ملف JMX على هذه المعلومات:

<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="Internal service homepage" enabled="true">
  <elementProp name="HTTPsampler.Arguments" elementType="Arguments" guiclass="HTTPArgumentsPanel" testclass="Arguments" testname="Service homepage" enabled="true">
    <collectionProp name="Arguments.arguments"/>
  </elementProp>
  <stringProp name="HTTPSampler.domain">10.179.0.7</stringProp>
  <stringProp name="HTTPSampler.port">8081</stringProp>
  <stringProp name="HTTPSampler.protocol"></stringProp>
  <stringProp name="HTTPSampler.contentEncoding"></stringProp>
  <stringProp name="HTTPSampler.path"></stringProp>
  <stringProp name="HTTPSampler.method">GET</stringProp>
</HTTPSamplerProxy>

تكوين اختبار التحميل الخاص بك

لتضمين نقاط النهاية المستضافة بشكل خاص في اختبار التحميل، تحتاج إلى تكوين إعدادات الشبكة الظاهرية لاختبار التحميل. يمكنك تكوين إعدادات الشبكة الظاهرية في مدخل Microsoft Azure، أو تحديدها في ملف تكوين اختبار YAML لتدفقات CI/CD.

هام

عند نشر Azure Load Testing في شبكة ظاهرية، ستتحمل رسوما إضافية. يقوم Azure Load Testing بنشر موازن تحميل Azure وعنوان IP عام في اشتراكك وقد تكون هناك تكلفة لنسبة استخدام الشبكة التي تم إنشاؤها. لمزيد من المعلومات، راجع معلومات تسعير الشبكة الظاهرية.

تكوين الشبكة الظاهرية في مدخل Microsoft Azure

يمكنك تحديد إعدادات تكوين الشبكة الظاهرية في معالج إنشاء/تحديث اختبار التحميل.

  1. تسجيل الدخول إلى مدخل Azure باستخدام بيانات الاعتماد للاشتراك في Azure.

  2. انتقل إلى مورد Azure Load Testing، وحدد Tests من الجزء الأيمن.

  3. افتح معالج إنشاء/تحديث اختبار التحميل بأي من طريقتين:

    • حدد + Create > Upload a JMeter script، إذا كنت تريد إنشاء اختبار جديد.

      لقطة شاشة تعرض صفحة الاختبارات، مع تمييز الزر لإنشاء اختبار جديد.

    • حدد اختبارا موجودا من القائمة، ثم حدد تحرير.

      لقطة شاشة تعرض صفحة الاختبارات، مع تمييز الزر لتحرير اختبار.

  4. في علامة التبويب تحميل ، حدد وضع نسبة استخدام الشبكة الخاصة ، ثم حدد الشبكة الظاهرية والشبكة الفرعية.

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

    لقطة شاشة تعرض علامة التبويب

    هام

    تأكد من أن لديك أذونات كافية لإدارة الشبكات الظاهرية. تحتاج إلى دور مساهم الشبكة.

  5. (اختياري) تحقق من تعطيل نشر IP العام إذا كنت لا تريد نشر عنوان IP عام وموازن تحميل ومجموعة أمان الشبكة في شبكتك الفرعية.

    عند تحديد هذا الخيار، تأكد من وجود آلية بديلة مثل Azure NAT Gateway أو Azure Firewall أو جهاز ظاهري للشبكة (NVA) لتمكين توجيه حركة المرور الصادرة من الشبكة الفرعية.

  6. مراجعة معلومات اختبار التحميل أو تعبئتها. اتبع هذه الخطوات لإنشاء اختبار أو إدارته.

  7. حدد Review + create ثم Create (أو Apply، عند تحديث اختبار موجود).

    عند بدء اختبار التحميل، يقوم Azure Load Testing بإدخال الأجهزة الظاهرية لمحرك الاختبار في شبكتك الظاهرية والشبكة الفرعية. يمكن للبرنامج النصي للاختبار الآن الوصول إلى نقطة نهاية التطبيق المستضافة بشكل خاص في شبكتك الظاهرية.

تكوين الشبكة الظاهرية لتدفقات CI/CD

لتكوين اختبار التحميل باستخدام إعدادات الشبكة الظاهرية، قم بتحديث ملف تكوين اختبار YAML.

  1. افتح محطة طرفية، واستخدم Azure CLI لتسجيل الدخول إلى اشتراك Azure الخاص بك:

    az login
    az account set --subscription <your-Azure-Subscription-ID>
    
  2. استرداد معرف الشبكة الفرعية ونسخ القيمة الناتجة:

    az network vnet subnet show -g <your-resource-group> --vnet-name <your-vnet-name> --name <your-subnet-name> --query id
    
  3. افتح ملف تكوين اختبار YAML في المحرر المفضل لديك.

  4. أضف الخاصية subnetId إلى ملف التكوين وقم بتوفير معرف الشبكة الفرعية الذي نسخته سابقا:

    version: v0.1
    testName: SampleTest
    testPlan: SampleTest.jmx
    description: 'Load test the website home page'
    engineInstances: 1
    subnetId: <your-subnet-id>
    publicIPDisabled: False
    

    اختياريا، يمكنك تعيين الخاصية publicIPDisabled إلى True. لمزيد من المعلومات حول تكوين YAML، راجع مرجع YAML لتكوين الاختبار.

    هام

    تأكد من أن لديك أذونات كافية لإدارة الشبكات الظاهرية. تحتاج إلى دور مساهم الشبكة.

  5. احفظ ملف تكوين YAML، وقم بتثبيت التغييرات في مستودع التعليمات البرمجية المصدر.

  6. بعد تشغيل سير عمل CI/CD، يبدأ اختبار التحميل الخاص بك، ويمكنه الآن الوصول إلى نقطة نهاية التطبيق المستضافة بشكل خاص في شبكتك الظاهرية.

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

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

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