مشاركة عبر


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

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

إشعار

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

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

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

Azure Cloud Shell

Azure يستضيف Azure Cloud Shell، بيئة تفاعلية يمكن استخدامها من خلال المستعرض. يمكنك استخدام Bash أو PowerShell مع Cloud Shell للعمل مع خدمات Azure. يمكنك استخدام أوامر Cloud Shell المثبتة مسبقًا لتشغيل التعليمات البرمجية في هذه المقالة دون الحاجة إلى تثبيت أي شيء على البيئة المحلية.

لبدء Azure Cloud Shell:

خيار مثال/ رابط
انقر فوق ⁧⁩جربه⁧⁩ في الزاوية العلوية اليسرى من التعليمة البرمجية أو كتلة الأمر. تحديد ⁧⁩جربه⁧⁩ لا يقوم بنسخ التعليمة البرمجية أو الأمر تلقائيًا إلى Cloud Shell. لقطة شاشة تعرض مثالاً على Try It for Azure Cloud Shell.
انتقل إلى ⁧⁩⁧ https://shell.azure.com⁩⁧⁩، أو حدد زر ⁩تشغيل Cloud Shell لفتح Cloud Shell في المتصفح لديك. زر لتشغيل Azure Cloud Shell.
حدد زر Cloud Shell على شريط القوائم في أعلى اليمين في مدخل Microsoft Azure. لقطة شاشة تعرض زر Cloud Shell في مدخل Microsoft Azure

لاستخدام Azure Cloud Shell:

  1. ابدأ تشغيل Cloud Shell.

  2. حدد الزر نسخ على كتلة التعليمات البرمجية (أو كتلة الأوامر) لنسخ التعليمات البرمجية أو الأمر.

  3. ألصق التعليمة البرمجية أو الأمر في جلسة Cloud Shell بتحديد Ctrl+Shift+Vعلى Windows وLunix، أو بتحديد Cmd+Shift+Vعلى macOS.

  4. حدد Enter لتشغيل التعليمات البرمجية أو الأمر.

إنشاء مجموعة تحجيم

قبل أن تتمكن من إنشاء مجموعة تحجيم، قم بإنشاء مجموعة موارد باستخدام New-AzResourceGroup. في المثال التالي، سيتم إنشاء مجموعة موارد باسم myResourceGroup في موقع eastus:

New-AzResourceGroup -ResourceGroupName "myResourceGroup" -Location "EastUS"

الآن قم بإنشاء مجموعة مقياس الجهاز الظاهري باستخدام New-AzVmss. ينشئ المثال التالي مجموعة مقياس تسمى myScaleSet والتي تستخدمWindows Server 2016 Datacenter صورة النظام الأساسي. يتم إنشاء موارد شبكة Azure للشبكة الظاهرية وعنوان IP العام وموازن التحميل تلقائيًّا. عند المطالبة، يمكنك تعيين بيانات الاعتماد الإدارية الخاصة بك لمثيلات VM في تعيين المقياس:

هام

بدءا من نوفمبر 2023، سيتم تعيين مجموعات مقياس الجهاز الظاهري التي تم إنشاؤها باستخدام PowerShell وAzure CLI افتراضيا إلى وضع التنسيق المرن إذا لم يتم تحديد وضع التزامن. لمزيد من المعلومات حول هذا التغيير والإجراءات التي يجب اتخاذها، انتقل إلى كسر التغيير لعملاء VMSS PowerShell/CLI - مركز مجتمع Microsoft

New-AzVmss `
  -ResourceGroupName "myResourceGroup" `
  -Location "EastUS" `
  -VMScaleSetName "myScaleSet" `
  -VirtualNetworkName "myVnet" `
  -SubnetName "mySubnet" `
  -PublicIpAddressName "myPublicIPAddress" `
  -LoadBalancerName "myLoadBalancer" `
  -OrchestrationMode 'Uniform' `
  -UpgradePolicyMode "Automatic"

يستغرق الأمر بضع دقائق لإنشاء وتكوين جميع موارد مجموعة المقياس والأجهزة الافتراضية.

نشر تطبيق العينة

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

استخدم ملحق البرنامج النصي المخصص لتثبيت خادم ويب IIS أساسي. قم بتطبيق ملحق البرنامج النصي المخصص الذي يقوم بتثبيت IIS كما يلي:

# Define the script for your Custom Script Extension to run
$publicSettings = @{
    "fileUris" = (,"https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate-iis.ps1");
    "commandToExecute" = "powershell -ExecutionPolicy Unrestricted -File automate-iis.ps1"
}

# Get information about the scale set
$vmss = Get-AzVmss `
            -ResourceGroupName "myResourceGroup" `
            -VMScaleSetName "myScaleSet"

# Use Custom Script Extension to install IIS and configure basic website
Add-AzVmssExtension -VirtualMachineScaleSet $vmss `
    -Name "customScript" `
    -Publisher "Microsoft.Compute" `
    -Type "CustomScriptExtension" `
    -TypeHandlerVersion 1.8 `
    -Setting $publicSettings

# Update the scale set and apply the Custom Script Extension to the VM instances
Update-AzVmss `
    -ResourceGroupName "myResourceGroup" `
    -Name "myScaleSet" `
    -VirtualMachineScaleSet $vmss

السماح لحركة المرور بالتطبيق

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

# Get information about the scale set
$vmss = Get-AzVmss `
            -ResourceGroupName "myResourceGroup" `
            -VMScaleSetName "myScaleSet"

#Create a rule to allow traffic over port 80
$nsgFrontendRule = New-AzNetworkSecurityRuleConfig `
  -Name myFrontendNSGRule `
  -Protocol Tcp `
  -Direction Inbound `
  -Priority 200 `
  -SourceAddressPrefix * `
  -SourcePortRange * `
  -DestinationAddressPrefix * `
  -DestinationPortRange 80 `
  -Access Allow

#Create a network security group and associate it with the rule
$nsgFrontend = New-AzNetworkSecurityGroup `
  -ResourceGroupName  "myResourceGroup" `
  -Location EastUS `
  -Name myFrontendNSG `
  -SecurityRules $nsgFrontendRule

$vnet = Get-AzVirtualNetwork `
  -ResourceGroupName  "myResourceGroup" `
  -Name myVnet

$frontendSubnet = $vnet.Subnets[0]

$frontendSubnetConfig = Set-AzVirtualNetworkSubnetConfig `
  -VirtualNetwork $vnet `
  -Name mySubnet `
  -AddressPrefix $frontendSubnet.AddressPrefix `
  -NetworkSecurityGroup $nsgFrontend

Set-AzVirtualNetwork -VirtualNetwork $vnet

# Update the scale set and apply the Custom Script Extension to the VM instances
Update-AzVmss `
    -ResourceGroupName "myResourceGroup" `
    -Name "myScaleSet" `
    -VirtualMachineScaleSet $vmss

اختبار مجموعة المقياس لديك

لرؤية مجموعة الميزان الخاص بك قيد التنفيذ، قم بالوصول إلى نموذج تطبيق الويب في مستعرض ويب. احصل على عنوان IP العام لموازن التحميل الخاص بك باستخدام Get-AzPublicIpAddress. يعرض المثال التالي عنوان IP الذي تم إنشاؤه في مجموعة موارد myResourceGroup:

Get-AzPublicIpAddress -ResourceGroupName "myResourceGroup" | Select IpAddress

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

تشغيل موقع IIS

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

عندما لم تعد هناك حاجة، يمكنك استخدام Remove-AzResourceGroup لإزالة مجموعة الموارد وتعيين المقياس وجميع الموارد ذات الصلة على النحو التالي. المعلمة -Force تؤكد رغبتك في حذف الموارد دون مطالبة إضافية للقيام بذلك. تُعيد المعلمة -AsJob التحكم إلى الموجه دون انتظار إكمال العملية.

Remove-AzResourceGroup -Name "myResourceGroup" -Force -AsJob

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

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