البرنامج التعليمي: إنشاء موازن التحميل في Azure عبر المنطقة باستخدام Azure PowerShell

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

في هذا البرنامج التعليمي، تتعلم كيفية:

  • إنشاء موازن تحميل عبر المناطق.
  • إنشاء قاعدة موازن تحميل.
  • إنشاء تجمع واجهة خلفية يحتوي على موازني تحميل إقليميين.
  • اختبار موازن التحميل.

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

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

  • اشتراك Azure.
  • تم نشر اثنين من موازن تحميل Azure standard لـ sku مع مجموعات backend في منطقتين مختلفتين من Azure.
  • Azure PowerShell مثبت محليًا أو Azure Cloud Shell.

إذا اخترت تثبيت PowerShell واستخدمته محليًا، فستتطلب هذه المقالة إصدار الوحدة Azure PowerShell 5.4.1 أو إصدارًا أحدث. بادر بتشغيل Get-Module -ListAvailable Az للعثور على الإصدار المثبت. إذا كنت بحاجة إلى الترقية، فراجع تثبيت الوحدة النمطية Azure PowerShell. في حالة تشغيل PowerShell محليًا، فأنت بحاجة أيضًا إلى تشغيل Connect-AzAccount لإنشاء اتصال مع Azure.

إنشاء موازن تحميل عبر المناطق

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

مجموعة موارد Azure هي حاوية منطقية يتم بها نشر موارد Azure وإدارتها.

قم بإنشاء مجموعة موارد باستخدام New-AzResourceGroup.

$rg = @{
    Name = 'MyResourceGroupLB-CR'
    Location = 'westus'
}
New-AzResourceGroup @rg

إنشاء موارد موازن التحميل عبر المناطق

في هذا القسم، ستقوم بإنشاء الموارد اللازمة لموازنة التحميل عبر المناطق.

يتم استخدام عنوان IP عام قياسي عالمي لـ sku للواجهة الأمامية لموازنة التحميل عبر المناطق.

`## Create global IP address for load balancer ##
$ip = @{
    Name = 'myPublicIP-CR'
    ResourceGroupName = 'MyResourceGroupLB-CR'
    Location = 'westus'
    Sku = 'Standard'
    Tier = 'Global'
    AllocationMethod = 'Static'
}
$publicIP = New-AzPublicIpAddress @ip

## Create frontend configuration ##
$fe = @{
    Name = 'myFrontEnd-CR'
    PublicIpAddress = $publicIP
}
$feip = New-AzLoadBalancerFrontendIpConfig @fe

## Create backend address pool ##
$be = @{
    Name = 'myBackEndPool-CR'
}
$bepool = New-AzLoadBalancerBackendAddressPoolConfig @be

## Create the load balancer rule ##
$rul = @{
    Name = 'myHTTPRule-CR'
    Protocol = 'tcp'
    FrontendPort = '80'
    BackendPort = '80'
    FrontendIpConfiguration = $feip
    BackendAddressPool = $bepool
}
$rule = New-AzLoadBalancerRuleConfig @rul

## Create cross-region load balancer resource ##
$lbp = @{
    ResourceGroupName = 'myResourceGroupLB-CR'
    Name = 'myLoadBalancer-CR'
    Location = 'westus'
    Sku = 'Standard'
    Tier = 'Global'
    FrontendIpConfiguration = $feip
    BackendAddressPool = $bepool
    LoadBalancingRule = $rule
}
$lb = New-AzLoadBalancer @lbp`

تكوين تجمع backend

في هذا القسم، ستضيف اثنين من موازنات التحميل القياسية الإقليمية إلى تجمع backend لموازنة التحميل عبر المناطق.

هام

لإكمال هذه الخطوات، تأكد من نشر اثنين من موازنات التحميل الإقليمية باستخدام تجمعات backend في اشتراكك. للمزيد من المعلومات، راجع، Quickstart: إنشاء موازن تحميل عام لتوازن التحميل VMs باستخدام Azure PowerShell..

 ## Place the region one load balancer configuration in a variable ##
$region1 = @{
    Name = 'myLoadBalancer-R1'
    ResourceGroupName = 'CreatePubLBQS-rg-r1'
}
$R1 = Get-AzLoadBalancer @region1

## Place the region two load balancer configuration in a variable ##
$region2 = @{
    Name = 'myLoadBalancer-R2'
    ResourceGroupName = 'CreatePubLBQS-rg-r2'
}
$R2 = Get-AzLoadBalancer @region2

## Place the region one load balancer frontend configuration in a variable ##
$region1fe = @{
    Name = 'MyFrontEnd-R1'
    LoadBalancer = $R1
}
$R1FE = Get-AzLoadBalancerFrontendIpConfig @region1fe

## Place the region two load balancer frontend configuration in a variable ##
$region2fe = @{
    Name = 'MyFrontEnd-R2'
    LoadBalancer = $R2
}
$R2FE = Get-AzLoadBalancerFrontendIpConfig @region2fe

## Create the cross-region backend address pool configuration for region 1 ##
$region1ap = @{
    Name = 'MyBackendPoolConfig-R1'
    LoadBalancerFrontendIPConfigurationId = $R1FE.Id
}
$beaddressconfigR1 = New-AzLoadBalancerBackendAddressConfig @region1ap

## Create the cross-region backend address pool configuration for region 2 ##
$region2ap = @{
    Name = 'MyBackendPoolConfig-R2'
    LoadBalancerFrontendIPConfigurationId = $R2FE.Id
}
$beaddressconfigR2 = New-AzLoadBalancerBackendAddressConfig @region2ap

## Apply the backend address pool configuration for the cross-region load balancer ##
$bepoolcr = @{
    ResourceGroupName = 'myResourceGroupLB-CR'
    LoadBalancerName = 'myLoadBalancer-CR'
    Name = 'myBackEndPool-CR'
    LoadBalancerBackendAddress = $beaddressconfigR1,$beaddressconfigR2
}
Set-AzLoadBalancerBackendAddressPool @bepoolcr

اختبار موازن التحميل

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

  1. استخدم Get-AzPublicIpAddress للحصول على عنوان IP العام لموازن التحميل:
$ip = @{
    Name = 'myPublicIP-CR'
    ResourceGroupName = 'myResourceGroupLB-CR'
}  
Get-AzPublicIPAddress @ip | select IpAddress

  1. نسخ عنوان IP العام، ثم ألصقه في شريط العنوان في متصفحك. يتم عرض الصفحة الافتراضية لخادم ويب IIS على المستعرض.

  2. إيقاف الأجهزة الظاهرية في تجمع الخلفية أحد موازنات التحميل الإقليمية.

  3. تحديث مستعرض ويب ومراقبة تجاوز الفشل للاتصال بموازن التحميل الإقليمية الأخرى.

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

عند انتهاء الحاجة إليها، يمكنك استخدام الأمر Remove-AzResourceGroupلإزالة مجموعة الموارد، وموازن التحميل، وجميع الموارد ذات الصلة:

Remove-AzResourceGroup -Name 'myResourceGroupLB-CR'

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

في هذا البرنامج التعليمي، سوف تتعلّم:

  • إنشاء عنوان IP عام.
  • إنشاء موازن تحميل عبر المنطقة.
  • إنشاء قاعدة موازنة التحميل.
  • إضافة موازنات التحميل الإقليمية إلى تجمع الخلفية لموازن تحميل عبر المناطق.
  • اختبار موازن التحميل.

تقدم إلى المقالة التالية لمعرفة كيفية...