Tworzenie globalnego modułu równoważenia obciążenia przy użyciu zapleczy między subskrypcjami
Z tego artykułu dowiesz się, jak utworzyć globalny moduł równoważenia obciążenia przy użyciu zapleczy między subskrypcjami.
Moduł równoważenia obciążenia między subskrypcjami może odwoływać się do sieci wirtualnej, która znajduje się w innej subskrypcji niż moduły równoważenia obciążenia. Ta funkcja umożliwia wdrożenie modułu równoważenia obciążenia w jednej subskrypcji i odwołanie do sieci wirtualnej w innej subskrypcji.
Wymagania wstępne
- Dwie subskrypcje platformy Azure.
- Konto platformy Azure z aktywnymi subskrypcjami. Bezpłatne tworzenie konta
- Globalny publiczny adres IP wdrożony w subskrypcji platformy Azure A.
- Regionalny moduł równoważenia obciążenia wdrożony w subskrypcji platformy Azure B.
- Program Azure PowerShell został zainstalowany lokalnie lub w usłudze Azure Cloud Shell.
Jeśli postanowisz zainstalować program PowerShell i używać go lokalnie, ten artykuł wymaga modułu Azure PowerShell w wersji 5.4.1 lub nowszej. Uruchom polecenie Get-Module -ListAvailable Az
, aby dowiedzieć się, jaka wersja jest zainstalowana. Jeśli konieczne będzie uaktualnienie, zobacz Instalowanie modułu Azure PowerShell. Jeśli używasz programu PowerShell lokalnie, musisz też uruchomić polecenie Connect-AzAccount
, aby utworzyć połączenie z platformą Azure.
Ważne
Wszystkie przykłady kodu będą używać przykładowych nazw i symboli zastępczych. Pamiętaj, aby zastąpić je wartościami ze środowiska.
Wartości, które wymagają zastąpienia, zostaną ujęte w nawiasy kątowe, w następujący sposób: <example value>
.
Logowanie się do platformy Azure
Za pomocą programu Azure PowerShell zalogujesz się do platformy Azure przy Connect-AzAccount
użyciu polecenia , a następnie zmienisz kontekst subskrypcji na Set-AzContext
subskrypcję platformy Azure A. Następnie uzyskaj informacje dotyczące regionalnego modułu równoważenia obciążenia za pomocą polecenia Get-AzLoadBalancer
" Get-AzLoadBalancerFrontendIpConfig". Potrzebujesz identyfikatora subskrypcji platformy Azure, nazwy grupy zasobów i nazwy sieci wirtualnej ze środowiska.
# Sign in to Azure
Connect-AzAccount
# Set the subscription context to Azure Subscription A
Set-AzContext -Subscription '<Azure Subscription A>'
# Get the Virtual Network information with Get-AzVirtualNetwork
$rlb= @{
Name = '<regional load balancer name>'
ResourceGroupName = '<Resource Group Subscription A>'
}
$RLB-info = Get-AzLoadBalancer @rlb
$RLBFE = Get-AzLoadBalancerFrontendIpConfig @ RLB-info
Tworzenie grupy zasobów
W tej sekcji utworzysz grupę zasobów w subskrypcji platformy Azure B. Ta grupa zasobów jest dla wszystkich zasobów skojarzonych z modułem równoważenia obciążenia.
Za pomocą programu Azure PowerShell można przełączyć kontekst subskrypcji na element Set-AzContext
i utworzyć grupę zasobów za pomocą polecenia New-AzResourceGroup
.
# Set the subscription context to Azure Subscription B
Set-AzContext -Subscription '<Azure Subscription B>'
# Create a resource group
$rg = @{
Name = 'myResourceGroupLB'
Location = 'westus'
}
New-AzResourceGroup @rg
Uwaga
Podczas tworzenia grupy zasobów dla modułu równoważenia obciążenia użyj tego samego regionu platformy Azure co sieć wirtualna w subskrypcji A platformy Azure.
Tworzenie globalnego modułu równoważenia obciążenia
W tej sekcji utworzysz zasoby potrzebne dla modułu równoważenia obciążenia między regionami. Globalny publiczny adres IP jednostki SKU w warstwie Standardowa jest używany na potrzeby frontonu modułu równoważenia obciążenia między regionami.
Za pomocą programu Azure PowerShell:
- Użyj
New-AzPublicIpAddress
polecenia , aby utworzyć publiczny adres IP. - Utwórz konfigurację adresu IP frontonu za pomocą polecenia
New-AzLoadBalancerFrontendIpConfig
. - Utwórz pulę adresów zaplecza za pomocą polecenia
New-AzLoadBalancerBackendAddressPoolConfig
. - Utwórz regułę modułu równoważenia obciążenia za pomocą polecenia
Add-AzLoadBalancerRuleConfig
. - Utwórz globalny moduł równoważenia obciążenia za pomocą polecenia
New-AzLoadBalancer
.
# Create global IP address for load balancer
$ip = @{
Name = 'myPublicIP-CR'
ResourceGroupName = ‘ Resource Group B’
Location = 'eastus2'
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 = ‘ Resource Group B’
Name = 'myLoadBalancer-CR'
Location = ‘eastus2’
Sku = 'Standard'
Tier = 'Global'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
LoadBalancingRule = $rule
}
$lb = New-AzLoadBalancer @lbp
Dodawanie frontonów modułu równoważenia obciążenia do modułu równoważenia obciążenia między regionami
W tej sekcji do modułu równoważenia obciążenia między regionami dodasz konfigurację adresu IP frontonu.
Za pomocą programu Azure PowerShell:
- Służy
Set-AzLoadBalancerFrontendIpConfig
do dodawania regionalnego frontonu modułu równoważenia obciążenia do puli zaplecza między regionami. - Użyj
New-AzLoadBalancerBackendAddressConfig
polecenia , aby utworzyć konfigurację puli adresów zaplecza dla modułu równoważenia obciążenia.
## Create the cross-region backend address pool configuration for region 2 ##
$RLB-BAF = @{
Name = 'MyBackendPoolConfig-RLB'
LoadBalancerFrontendIPConfigurationId = $RLBFE.Id
}
$beaddressconfigRLB = New-AzLoadBalancerBackendAddressConfig @region2ap
## Apply the backend address pool configuration for the cross-region load balancer ##
$bepoolcr = @{
ResourceGroupName = ‘ Resource Group B’
LoadBalancerName = 'myLoadBalancer-CR'
Name = 'myBackEndPool-CR'
LoadBalancerBackendAddress = $beaddressconfigRLB
}
Set-AzLoadBalancerBackendAddressPool @bepoolcr