Skapa en global lastbalanserare med serverdelar mellan prenumerationer
I den här artikeln får du lära dig hur du skapar en global lastbalanserare med serverdelar mellan prenumerationer.
En lastbalanserare mellan prenumerationer kan referera till ett virtuellt nätverk som finns i en annan prenumeration än lastbalanserarna. Med den här funktionen kan du distribuera en lastbalanserare i en prenumeration och referera till ett virtuellt nätverk i en annan prenumeration.
Förutsättningar
- Två Azure-prenumerationer.
- Ett Azure-konto med aktiva prenumerationer. Skapa ett konto kostnadsfritt
- En global offentlig IP-adress som distribueras i Azure-prenumeration A i en global hemregion för lastbalanserare.
- En regional lastbalanserare som distribuerats i Azure-prenumeration A.
- Azure PowerShell installerat lokalt eller Azure Cloud Shell.
Om du väljer att installera och använda PowerShell lokalt kräver den här artikeln version 5.4.1 eller senare av Azure PowerShell-modulen. Kör Get-Module -ListAvailable Az
för att hitta den installerade versionen. Om du behöver uppgradera kan du läsa Install Azure PowerShell module (Installera Azure PowerShell-modul). Om du kör PowerShell lokalt måste du också köra Connect-AzAccount
för att skapa en anslutning till Azure.
Viktigt!
Alla kodexempel använder exempelnamn och platshållare. Se till att ersätta dessa med värdena från din miljö.
Värdena som behöver ersättas omges av vinkelparenteser, så här: <example value>
.
Logga in på Azure
Med Azure PowerShell loggar du in på Azure med Connect-AzAccount
och ändrar din prenumerationskontext med Set-AzContext
till Azure Subscription A. Hämta sedan information om den regionala lastbalanseraren med Get-AzLoadBalancer
och Get-AzLoadBalancerFrontendIpConfig
. Du behöver Azure-prenumerations-ID, resursgruppsnamn och virtuellt nätverksnamn från din miljö.
# Sign in to Azure
Connect-AzAccount
# Set the subscription context to Azure Subscription A
Set-AzContext -Subscription '<Subscription ID of Subscription A>'
# Get the Virtual Network information with Get-AzVirtualNetwork
$rlb= @{
Name = 'load-balancer-regional'
ResourceGroupName = 'resource-group-a'
}
$rlbinfo = Get-AzLoadBalancer @rlb
$rlbfe = Get-AzLoadBalancerFrontendIpConfig @rlbinfo
Skapa en resursgrupp
I det här avsnittet skapar du en resursgrupp i Azure-prenumeration B. Den här resursgruppen är avsedd för alla dina resurser som associeras med lastbalanseraren.
Med Azure PowerShell växlar du prenumerationskontexten med Set-AzContext
och skapar en resursgrupp med New-AzResourceGroup
.
# Set the subscription context to Azure Subscription B
Set-AzContext -Subscription '<Azure Subscription B>'
# Create a resource group
$rg = @{
Name = 'resource-group-b'
Location = 'eastus2'
}
New-AzResourceGroup @rg
Kommentar
När du skapar resursgruppen för lastbalanseraren använder du samma Azure-region som det virtuella nätverket i Azure Subscription A.
Skapa en global lastbalanserare
I det här avsnittet skapar du de resurser som behövs för den globala lastbalanseraren. En global offentlig IP-adress för standard-SKU används för klientdelen av den globala lastbalanseraren.
Med Azure PowerShell kan du:
- Använd
New-AzPublicIpAddress
för att skapa den offentliga IP-adressen. - Skapa en IP-konfiguration för klientdelen med
New-AzLoadBalancerFrontendIpConfig
. - Skapa en serverdelsadresspool med
New-AzLoadBalancerBackendAddressPoolConfig
. - Skapa en lastbalanseringsregel med
Add-AzLoadBalancerRuleConfig
. - Skapa en global lastbalanserare med
New-AzLoadBalancer
.
# Create global IP address for load balancer
$ip = @{
Name = 'public-IP-global'
ResourceGroupName = 'resource-group-b'
Location = 'eastus2'
Sku = 'Standard'
Tier = 'Global'
AllocationMethod = 'Static'
}
$publicIP = New-AzPublicIpAddress @ip
# Create frontend configuration
$fe = @{
Name = 'front-end-config-global'
PublicIpAddress = $publicIP
}
$feip = New-AzLoadBalancerFrontendIpConfig @fe
# Create backend address pool
$be = @{
Name = 'backend-pool-global'
}
$bepool = New-AzLoadBalancerBackendAddressPoolConfig @be
# Create the load balancer rule
$rul = @{
Name = 'HTTP-rule-global'
Protocol = 'tcp'
FrontendPort = '80'
BackendPort = '80'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
}
$rule = New-AzLoadBalancerRuleConfig @rul
# Create global load balancer resource
$lbp = @{
ResourceGroupName = 'resource-group-b'
Name = 'load-balancer-global'
Location = ‘eastus2’
Sku = 'Standard'
Tier = 'Global'
FrontendIpConfiguration = $feip
BackendAddressPool = $bepool
LoadBalancingRule = $rule
}
$lb = New-AzLoadBalancer @lbp
Lägga till klientdelar för lastbalanserare i global lastbalanserare
I det här avsnittet lägger du till en IP-konfiguration för klientdelen till den globala lastbalanseraren.
Med Azure PowerShell kan du:
- Använd
Set-AzLoadBalancerFrontendIpConfig
för att lägga till den regionala lastbalanserarens klientdel i den globala serverdelspoolen. - Använd
New-AzLoadBalancerBackendAddressConfig
för att skapa konfigurationen av serverdelsadresspoolen för lastbalanseraren.
## Create the global backend address pool configuration for region 2 ##
$rlbbaf = @{
Name = 'backend-pool-config-regional'
LoadBalancerFrontendIPConfigurationId = $rlbfe.Id
}
$beaddressconfigRLB = New-AzLoadBalancerBackendAddressConfig @region2ap
## Apply the backend address pool configuration for the global load balancer ##
$bepoolcr = @{
ResourceGroupName = 'resource-group-b'
LoadBalancerName = 'load-balancer-global'
Name = 'backend-pool-global'
LoadBalancerBackendAddress = $beaddressconfigRLB
}
Set-AzLoadBalancerBackendAddressPool @bepoolcr