التشغيل السريع: إنشاء مجموعة مقياس جهاز ظاهري Linux باستخدام قالب ARM

ينطبق على: ✔️ أجهزة Linux الظاهرية ✔️ مجموعات مقياس موحدة

إشعار

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

تسمح لك مجموعة مقياس الجهاز الظاهري بنشر وإدارة مجموعة من الأجهزة الظاهرية ذات التحجيم التلقائي. يمكنك تحجيم عدد الأجهزة الظاهرية في مجموعة التحجيم يدويًّا، أو تحديد قواعد التحجيم التلقائي استنادًا إلى استخدام الموارد مثل CPU، أو طلب الذاكرة، أو عملية نقل بيانات الشبكة. ثم يوزع موازن تحميل Azure عملية نقل البيانات إلى مثيلات الأجهزة الظاهرية في مجموعة التوسعة. في هذا التشغيل السريع، يمكنك إنشاء مجموعة مقياس الجهاز الظاهري ونشر نموذج تطبيق باستخدام قالب Azure Resource Manager (قالب ARM).

قالب Azure Resource Manager هو ملف JavaScript Object Notation (JSON) الذي يحدد البنية الأساسية والتكوين لمشروعك. يستخدم القالب عبارات توضيحية. يمكنك وصف النشر المقصود دون كتابة تسلسل أوامر البرمجة لإنشاء النشر.

تتيح لك قوالب ARM نشر مجموعات من الموارد ذات الصلة. في قالب واحد، يمكنك إنشاء مجموعة مقياس الجهاز الظاهري وتثبيت التطبيقات وتكوين قواعد التحجيم التلقائي. باستخدام المتغيرات والمعلمات، يمكن إعادة استخدام هذا القالب لتحديث مجموعات المقياس الموجودة، أو إنشاء مجموعات إضافية. يمكنك نشر قوالب من خلال مدخل Azure، أو Azure CLI، أو Azure PowerShell، أو من خطوط أنابيب continuous integration / continuous delivery (CI/CD).

إذا كانت بيئتك تلبي المتطلبات الأساسية وكنت معتاداً على استخدام قوالب "ARM"، فحدد زر "Deploy to Azure". سيتم فتح القالب في مدخل Azure.

زر لنشر قالب Resource Manager إلى Azure.

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

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

مراجعة القالب

يُعدّ النموذج المستخدم في هذا التشغيل السريع مأخوذاً من قوالب التشغيل السريع من Azure.

يتم تحديد هذه الموارد في النموذج:

إنشاء مجموعة مقياس

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

الخاصية وصف الممتلكات مثال على قيمة القالب
النوع نوع مورد Azure المراد إنشاؤه Microsoft.Compute/virtualMachineScaleSets
الاسم اسم مجموعة المقياس myScaleSet
مكان الموقع لإنشاء مجموعة المقياس شرق الولايات المتحدة
sku.name حجم الجهاز الافتراضي لكل مثيل مجموعة مقياس Standard_A1
sku.capacity عدد مثيلات VM لإنشاء في البداية 2
upgradePolicy.mode وضع ترقية مثيل VM عند حدوث تغييرات تلقائي
imageReference المنصة أو الصورة المخصصة لاستخدامها في مثيلات VM Canonical Ubuntu Server 16.04-LTS
osProfile.computerNamePrefix بادئة الاسم لكل مثيل VM Myvmss
osProfile.adminUsername اسم المستخدم لكل مثيل VM azureuser
osProfile.adminPassword كلمة المرور لكل مثيل VM P@ssw0rd!

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

عينات التطبيقات

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

  • نوع الملحق
  • ناشر الملحق
  • إصدار الملحق
  • موقع التكوين، أو تثبيت البرامج النصية
  • أوامر لتنفيذ على مثيلات VM

يستخدم القالب ملحق البرنامج النصي المخصص لتثبيت Bottle وإطار عمل ويب Python وخادم HTTP بسيط.

يتم تعريف برنامجين نصيين في fileUris - installserver.sh، workserver.py. يتم تنزيل هذه الملفات من GitHub، ثم يتم تشغيل bash installserver.sh commandToExecute لتثبيت التطبيق وتكوينه.

نشر القالب

يمكنك نشر القالب عن طريق تحديد الزر Deploy to Azure التالي. يفتح هذا الزر مدخل Azure، ويحمل القالب الكامل، ويطالب ببعض المعلمات مثل: اسم مجموعة المقياس، وعدد المثيلات، وبيانات اعتماد المسؤول.

زر لنشر قالب Resource Manager إلى Azure.

يمكنك أيضًا نشر قالب Resource Manager باستخدام Azure CLI:

# Create a resource group
az group create --name myResourceGroup --location EastUS

# Deploy template into resource group
az deployment group create \
    --resource-group myResourceGroup \
    --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/application-workloads/python/vmss-bottle-autoscale/azuredeploy.json

أجب على المطالبات لتوفير اسم مجموعة مقياس، وعدد المثيلات، وبيانات اعتماد المسؤول لمثيلات VM. يستغرق الأمر بضع دقائق لإنشاء مجموعة المقياس والموارد الداعمة.

التحقُّق من صحة عملية النشر

لرؤية مجموعة الميزان الخاص بك قيد التنفيذ، قم بالوصول إلى نموذج تطبيق الويب في مستعرض ويب. احصل على عنوان IP العام لموازن التحميل باستخدام az network public-ip list كما يلي:

az network public-ip list \
    --resource-group myResourceGroup \
    --query [*].ipAddress -o tsv

أدخل عنوان IP العام لموازن التحميل في متصفح الويب بتنسيق http://publicIpAddress:9000/do_work. يوزع موازن التحميل حركة المرور إلى إحدى مثيلات VM الخاصة بك، كما هو موضح في المثال التالي:

صفحة ويب افتراضية في NGINX

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

عندما لم تعد هناك حاجة، يمكنك استخدام az group delete لإزالة مجموعة الموارد ومجموعة التوسعة وجميع الموارد ذات الصلة على النحو التالي. تُعيد المعلمة --no-wait التحكم إلى الموجه دون انتظار إكمال العملية. المعلمة --yes تؤكد رغبتك في حذف الموارد دون مطالبة إضافية للقيام بذلك.

az group delete --name myResourceGroup --yes --no-wait

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

في هذا الـبدء السريع، قمت بإنشاء مجموعة مقياس Linux مع قالب ARM، واستخدام ملحق Custom Script لتثبيت خادم ويب Python الأساسي على مثيلات VM. لمعرفة المزيد، تابع البرنامج التعليمي حول كيفية إنشاء مجموعات مقياس الجهاز الظاهري Azure وإدارتها.