Citrix ADC

Konfigurieren eines Hochverfügbarkeitssetups mit mehrenip - adressen und Netzwerkkarten über PowerShell-Befehle

Sie können in Paar von Citrix ADC VPX -Instanzen mit mehrennetzwerkkarten in einem aktiv-passiven Hochverfügbarkeitssetup in Azure bereitstellen。Jede NIC kann mehrere IP-Adressen enthalten。

Für eine aktive -passive Bereitstellung sind folgende Voraussetzungen erforderlich:

  • Eine HA独立网络配置(INC)配置
  • Der Azure负载均衡器(ALB) im DSR-Modus(直接服务器返回)

Der gesamte Datenverkehr geht durch den primären Knoten。Der sekundäre Knoten bleibt im Standbymodus, bis Der primäre Knoten ausfällt。

Hinweis:

Damit eine Citrix ADC VPX Hochverfügbarkeitsbereitstellung在einer Azure-Cloud funktioniert, benötigen Sie eine浮动公共IP (PIP), die zwischen den beiden Hochverfügbarkeitsknoten verschoben werden kann。Der Azure负载平衡器(ALB) stellt dieses schwebende PIP berit, das im fall eines故障切换自动实现auf den zweiten Knoten verschoben。

图形: Beispiel einer aktiv-passiven Bereitstellungsarchitektur

Azure-Hochverfugbarkeit

在einer aktiven和passiven beritstellung werden die ALB浮动公共IP (PIP)地址在jedem VPX-Knoten的vip地址hinzugefügt。在ha - incr - konfiguration中,VIP-Adressen unverankert和snipp - adressen snind Instanzenpezifisch。

ALB überwacht jede vpx - instdet, indem es alle 5 Sekunden den Integritäts-Sonde sendet, und leitet den Datenverkehr nur diese instt um, die die Reaktion der Integritätssonden在regelmäßigen Intervallen sendet。在einem HA-Setup reagiert der primäre Knoten auf gesundheitsonden und sekundäre nicht。Wenn die primären instzen zwei aufeinanderfolgende gesundheititononderpassen, leitet ALB den Datenverkehr nht zu dieser insten。Beim Failover reagert die neue primäre Instanz auf Integritätstests under ALB leitet den Datenverkehr an ihn weiter。Die standardmäßige VPX-Hochverfügbarkeits-Failover-Zeit beträgt drei Sekunden。Die gesamte Failoverzeit, Die für Die Umschaltung des Datenverkehrs benötigt weird, kann maximal 13 Sekunden betragen。

Sie können in VPX-Paar im aktive -passiven HA-Setup auf zwei Arten bereitstellen, indem Sie Folgendes verwenden:

  • Citrix ADC VPX标准Hochverfügbarkeitsvorlage: Verwenden Sie diese Option,嗯in HA-Paar mit der Standardoption von drei Subnetzen and secs Netzwerkkarten zu konfigurieren。
  • Windows PowerShell Befehle: Verwenden Sie diese Option, um in HA-Paar entsprechend Ihren Subnetz and NIC-Anforderungen zu konfigurieren。

在diesem Thema怪beschrieben, wie In VPX-Paar In aktivv -passiven HA-Setup mithilfe von PowerShell Befehlen bereitgestellt怪。信息zur Verwendung der Citrix ADC VPX标准HA-Vorlage查找Sie underKonfigurieren eines ha - setup mit mehrenip - address and nic

Konfigurieren Sie ha - inco - knoten mit PowerShell-Befehlen

Szenario: HA-INC PowerShell Bereitstellung

In diesem Szenario stellen Sie ein Citrix ADC VPX parar mithilfe der In der Tabelle angelgebenen Topologie berit。Jede VPX-Instanz enthält drei Netzwerkkarten, wobei Jede Netzwerkkarte in einem anderen Subnetz bereitgestellt wildd。Jeder NIC wild eine IP-Konfiguration zugewiesen。

铝青铜 VPX1 VPX2
ALB ist mit öffentlicher IP 3 (pi3) verbunden 管理IP地址IPConfig1 konfiguriert, die eine öffentliche IP (pip1) und eine私有IP (12.5.2.24) enthält;nic1;Mgmtsubnet = 12.5.2.0/24 管理IP地址IPConfig5 konfiguriert, die eine öffentliche IP (pip3) und eine私有IP (12.5.2.26) enthält;nic4;Mgmtsubnet = 12.5.2.0/24
LB-Regeln und端口konfiguriert sind HTTP (80), SSL(443),运行状况探测(9000) Clientseitige IP ist mit IPConfig3 konfiguriert, die eine private IP (12.5.1.27);nic2;frontendSubet = 12.5.1.0/24 enthalt Clientseitige IP ist mit IPConfig7 konfiguriert, die eine private IP (12.5.1.28) enthält;nic5;frontendSubet = 12.5.1.0/24
- serversetige IP ist mit IPConfig4 konfiguriert, die eine private IP (12.5.3.24);nic3;BackendSubnet = 12.5.3.0/24 enthalt Serverseitige IP ist mit IPConfig8 konfiguriert, die eine private IP (12.5.3.28) enthält;nic6;BackendSubnet = 12.5.3.0/24
- Regeln und Ports für NSG sind SSH (22), HTTP (80), HTTPS (443) -

Parametereinstellungen

Die folgenden Parametereinstellungen werden在diesem Szenario verwendet。

$locName= "东南亚"

$rgName = " multi - multi - rg "

美元nicName1 = " VM1-NIC1 "

$nicName2 = " VM1-NIC2 "

美元nicName3 = " VM1-NIC3 "

$nicName4 = " VM2-NIC1 "

美元nicName5 = " VM2-NIC2 "

$nicName6 = " VM2-NIC3 "

$vNetName = " Azure-MultiIP-ALB-vnet "

美元vNetAddressRange = " 12.5.0.0/16 "

美元frontEndSubnetName = " frontEndSubnet "

美元frontEndSubnetRange = " 12.5.1.0/24 "

美元mgmtSubnetName = " mgmtSubnet "

美元mgmtSubnetRange = " 12.5.2.0/24 "

$backEndSubnetName = " backEndSubnet "

$backEndSubnetRange = " 12.5.3.0/24 "

$prmStorageAccountName = " multiip多项icbstorage "

$avSetName = " multi - avset "

美元vmSize = " Standard_DS4_V2 "

$Publisher = " Citrix "

$offer = " netscalervpx-120 "

$sku = " netscalerbyol "

最新美元version = " "

美元pubIPName1 = " VPX1MGMT "

美元pubIPName2 = " VPX2MGMT "

美元pubIPName3 = " ALBPIP "

美元domName1 = " vpx1dns "

美元domName2 = " vpx2dns "

美元domName3 = " vpxalbdns "

美元vmNamePrefix = " VPXMultiIPALB "

美元osDiskSuffix1 = " osmultiipalbdiskdb1 "

美元osDiskSuffix2 = " osmultiipalbdiskdb2 "

美元lbName = " MultiIPALB "

美元frontEndConfigName1 = " FrontEndIP "

美元backendPoolName1 = " BackendPoolHttp "

美元lbRuleName1 = " LBRuleHttp "

美元healthProbeName = " HealthProbe "

美元nsgName = " NSG-MultiIP-ALB "

$ rule1Name =“入站http”

美元rule2Name = " Inbound-HTTPS "

美元rule3Name = " Inbound-SSH "

Führen Sie die folgenden Schritte mithilfe von PowerShell Befehlen aus, um die Bereitstellung abzuschließen:

  1. Erstellen einer resources gruppe, eines Speicherkontos und eines Verfügbarkeitssatzes
  2. Erstellen einer Netzwerksicherheitsgruppe und Hinzufügen von Regeln
  3. Erstellen eines virtuellen Netzwerks und drei Subnetze
  4. Öffentliche IP-Adressen erstellen
  5. 厄斯特伦·冯ip - konfigationen für VPX1
  6. 厄斯特伦·冯ip - konfigationen für VPX2
  7. Erstellen von Netzwerkkarten für VPX1
  8. Erstellen von Netzwerkkarten für VPX2
  9. VPX1 erstellen
  10. VPX2 erstellen
  11. 铝青铜erstellen

Erstellen Sie eine resources gruppe, ein Speicherkonto und ein Verfügbarkeitsset

New-AzureRmResourceGroup -Name $rgName -Location $locName $prmStorageAccount=New-AzureRMStorageAccount -Name $prmStorageAccountName -ResourceGroupName $rgName -Type Standard_LRS -Location $locName $avSet=New-AzureRMAvailabilitySet -Name $avSetName -ResourceGroupName $rgName -Location $locName

Erstellen Sie eine Netzwerksicherheitsgruppe und fügen Sie Regeln hinzu

$rule1 = New-AzureRmNetworkSecurityRuleConfig -Name $rule1Name -Description "允许HTTP" -Access允许-Protocol Tcp -Direction Inbound -Priority 101 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 80 $rule2 = New-AzureRmNetworkSecurityRuleConfig -Name $rule2Name -Description "允许HTTPS" -Access允许-Protocol Tcp -Direction Inbound -Priority 110 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * . $rule1Name = New-AzureRmNetworkSecurityRuleConfig -Name $rule1Name -Description "允许HTTPS" -Access允许-Protocol Tcp -Direction Inbound -Priority 110 -SourceAddressPrefix-DestinationPortRange 443 $rule3 = New-AzureRmNetworkSecurityRuleConfig -Name $rule3Name -Description "允许SSH" -Access允许-Protocol Tcp -Direction Inbound -Priority 120 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 22 $nsg = New-AzureRmNetworkSecurityGroup -ResourceGroupName $rgName -Location $locName - $nsgName -SecurityRules $rule1,$rule2,$rule3

Erstellen Sie in virtuelles Netzwerk und drei Subnetze

$frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name $frontEndSubnetName -AddressPrefix $frontEndSubnetRange(该参数值应根据您的需要而定)$mgmtSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name $mgmtSubnetName -AddressPrefix $mgmtSubnetRange $backendSubnet= new - azurermvirtualnetworkconfig -Name $backEndSubnetName -AddressPrefix $backEndSubnetRange $vnet = new - azurermvirtualnetworkname $vNetName -ResourceGroupName $rgName -Location $locName -AddressPrefix$vNetAddressRange -Subnet $frontendSubnet,$backendSubnet, $mgmtSubnet $subnetName =" frontendSubnet " $subnet1=$vnet.Subnets|?Name -eq $subnetName} $subnetName="backEndSubnet" $subnet2=$vnet.Subnets|?{$_. subnet0 ?Name -eq $subnetName} $subnetName="mgmtSubnet" $subnet3=$vnet.Subnets|?{$_. subnet3=$vnet.Subnets|?Name -eq $subnetName}

Erstellen Sie öffentliche ip - addressen

$pip1=New-AzureRmPublicIpAddress -Name $pubIPName1 -ResourceGroupName $rgName -DomainNameLabel $domName1 -Location $locName -AllocationMethod Dynamic $pip2=New-AzureRmPublicIpAddress -Name $pubIPName2 -ResourceGroupName $rgName -DomainNameLabel $domName2 -Location $locName -AllocationMethod Dynamic $pip3=New-AzureRmPublicIpAddress -Name $pubIPName3 -ResourceGroupName $rgName -DomainNameLabel $domName3 -Location $locName -AllocationMethod Dynamic

Erstellen Sie ip - konfigationen für VPX1

$IpConfigName1 =" IPConfig1" $IPAddress=" 12.5.2.24" $IPConfig1=New-AzureRmNetworkInterfaceIpConfig -Name $IpConfigName1 -Subnet $subnet3 -PrivateIpAddress $IPAddress - publicicipaddress $pip1 -Primary $IPConfigName3="IPConfig-3" $IPAddress="12.5.1.27" $IPConfig3=New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName3 -Subnet $subnet1 -PrivateIpAddress $IPAddress -Primary $IPConfigName4 =" IPConfig-4" $IPAddress=" 12.5.3.24" $IPConfig4 =New-AzureRmNetworkInterfaceIpConfig -Name $IpConfigName1 -Subnet $subnet1 -PrivateIpAddress $IPAddress -Primary $IPConfigName4 =" IPConfig-4" $IPAddress=" $IPAddress -Name $IPConfigName4 .-Subnet $subnet2 -PrivateIpAddress $IPAddress -Primary

Erstellen Sie ip - konfigationen für VPX2

IpConfigName5 =“IPConfig5 IPAddress美元= " 12.5.2.26”IPConfig5 = New-AzureRmNetworkInterfaceIpConfig - name IpConfigName5美元美元子网subnet3 -PrivateIpAddress IPAddress -PublicIpAddress pip2美元主要IPConfigName7 =“IPConfig-7 IPAddress美元=“12.5.1.28 IPConfig7 = New-AzureRmNetworkInterfaceIpConfig - name IPConfigName7美元美元子网subnet1 -PrivateIpAddress IPAddress主要IPConfigName8美元=“IPConfig-8 IPAddress美元=“12.5.3.28”IPConfig8 = New-AzureRmNetworkInterfaceIpConfig - name IPConfigName8美元子网$subnet2 -PrivateIpAddress $IPAddress -Primary

Erstellen Sie Netzwerkkarten für VPX1

$nic1=New-AzureRmNetworkInterface -Name $nicName1 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig1 -NetworkSecurityGroupId $nsg。Id$nic2=New-AzureRmNetworkInterface -Name $nicName2 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig3 -NetworkSecurityGroupId $nsg.Id $nic3=New-AzureRmNetworkInterface -Name $nicName3 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig4 -NetworkSecurityGroupId $nsg.Id

Erstellen Sie Netzwerkkarten für VPX2

$nic4=New-AzureRmNetworkInterface -Name $nicName4 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig5 -NetworkSecurityGroupId $nsg。Id$nic5=New-AzureRmNetworkInterface -Name $nicName5 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig7 -NetworkSecurityGroupId $nsg.Id $nic6=New-AzureRmNetworkInterface -Name $nicName6 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig8 -NetworkSecurityGroupId $nsg.Id

Erstellen Sie VPX1

柴油Schritt umfast die folgenden

  • VM-Konfigurationsobjekt erstellen
  • Festlegen der Anmeldeinformationen, des Betriebssystems and des Images
  • Netzwerkkarten hinzufugen
  • Festlegen des Betriebssystemdatenträgers und Erstellen eines virtuellen Rechners

    $suffixNumber = 1 $vmName=$vmNamePrefix + $suffixNumber $vmConfig=New-AzureRMVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avSet。Id $cred=Get-Credential -Message "输入VPX登录的名称和密码。"$vmConfig=Set-AzureRMVMOperatingSystem -VM $vmConfig -Linux -ComputerName $vmName -Credential $cred $vmConfig=Set-AzureRMVMSourceImage -VM $vmConfig -PublisherName $publisher -Offer $offer -Skus $sku -Version $version $vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic1。Id -Primary $vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic2。Id $vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic3。Id$osDiskName=$vmName + "-" + $osDiskSuffix1 $osVhdUri=$prmStorageAccount.PrimaryEndpoints.Blob.ToString() + "vhds/" + $osDiskName + ".vhd" $vmConfig=Set-AzureRMVMOSDisk -VM $vmConfig -Name $osDiskName -VhdUri $osVhdUri -CreateOption fromImage Set-AzureRmVMPlan -VM $vmConfig -Publisher $publisher -Product $offer -Name $sku New-AzureRMVM -VM $vmConfig -ResourceGroupName $rgName -Location $locName

Erstellen Sie VPX2

' ' ' $suffixNumber=2 $vmName=$vmNamePrefix + $suffixNumber $vmConfig=New-AzureRMVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avSet。Id $cred=Get-Credential -Message "输入VPX登录的名称和密码。"$vmConfig=Set-AzureRMVMOperatingSystem -VM $vmConfig -Linux -ComputerName $vmName -Credential $cred $vmConfig=Set-AzureRMVMSourceImage -VM $vmConfig -PublisherName $publisher -Offer $offer -Skus $sku -Version $version $vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic4。Id -Primary $vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic5。Id $vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic6。Id$osDiskName=$vmName + "-" + $osDiskSuffix2 $osVhdUri=$prmStorageAccount.PrimaryEndpoints.Blob.ToString() + "vhds/" + $osDiskName + ".vhd" $vmConfig=Set-AzureRMVMOSDisk -VM $vmConfig -Name $osDiskName -VhdUri $osVhdUri -CreateOption fromImage Set-AzureRmVMPlan -VM $vmConfig -Publisher $publisher -Product $offer -Name $sku New-AzureRMVM -VM $vmConfig -ResourceGroupName $rgName -Location $locName  ```

Geben Sie die folgenden Befehle ein, um private und öffentliche IP-Adressen anzuzeigen, die den Netzwerkkarten zugewiesen sind:

“‘nic1美元。IPConfig nic2美元。IPConfig nic3美元。IPConfig nic4美元。IPConfig nic5美元。IPConfig nic6美元。IPConfig < !--NeedCopy--> ```

Erstellen Sie Azure-Lastenausgleich (ALB)

柴油Schritt umfast die folgenden

  • Frontend-IP-Konfiguration erstellen
  • Integritatstest erstellen
  • Back-End-Adresspool erstellen
  • Erstellen von Lastenausgleichsregeln (HTTP和SSL)
  • 前端ip配置,后端地址配置和LB-Regel
  • Verknüpfen Sie的后端池ip配置

    $frontEndIP1=New-AzureRmLoadBalancerFrontendIpConfig -Name $frontEndConfigName1 - publicicipaddress $pip3

    $healthProbe=New-AzureRmLoadBalancerProbeConfig -Name $healthProbeName -Protocol Tcp -Port 9000 -IntervalInSeconds 5 -ProbeCount 2 .使用实例

    $beAddressPool1=New-AzureRmLoadBalancerBackendAddressPoolConfig -Name $backendPoolName1 . $beAddressPool1=New-AzureRmLoadBalancerBackendAddressPoolConfig

    $lbRule1=New-AzureRmLoadBalancerRuleConfig -Name $lbRuleName1 -FrontendIpConfiguration $frontEndIP1 -BackendAddressPool $beAddressPool1 -Probe $healthProbe -Protocol Tcp -FrontendPort 80 -BackendPort 80 -EnableFloatingIP

    $lb=New-AzureRmLoadBalancer -ResourceGroupName $rgName - $lbName -Location $locName -FrontendIpConfiguration $frontEndIP1 -LoadBalancingRule $lbRule1 -BackendAddressPool $beAddressPool1 -Probe $healthProbe

    美元nic2.IpConfigurations [0] .LoadBalancerBackendAddressPools.Add ($ lb.BackendAddressPools [0])

    美元nic5.IpConfigurations [0] .LoadBalancerBackendAddressPools.Add ($ lb.BackendAddressPools [0])

    磅=美元磅| Set-AzureRmLoadBalancer

    | Set-AzureRmNetworkInterface . $nic2=$nic2

    $nic5=$nic5 | Set-AzureRmNetworkInterface

Nachdem Sie das Citrix ADC VPX-Paar erfolgreich bereitgestellt haben, melden Sie sich bei jder VPX-Instanz an, um HA-INC- sowie SNIP und VIP-Adressen zu konfigurieren。

  1. Geben Sie den folgenden Befehl ein嗯HA-Knoten hinzuzufügen。

    add ha node 1 PeerNodeNSIP -inc使能

  2. Fügen Sie私有ip - address von clientseitigen Netzwerkkarten als SNIPs für VPX1 (NIC2) und VPX2 (NIC5) hinzu . zip

    add nsip privateIPofNIC2 255.255.255.0 -type SNIPadd nsip privateIPofNIC5 255.255.255.0 -type SNIP

  3. Fügen Sie einen virtuellen Lastenausgleichsserver auf dem primären已知的mit前端IP地址(öffentliche IP) von ALB hinzu。

    add lb virtual server v1 HTTP FrontEndIPofALB 80 .单击“添加”

学会Ressourcen

Konfigurieren von GSLB in der aktiven Standby-HA-Bereitstellung in Azure

Konfigurieren eines Hochverfügbarkeitssetups mit mehrenip - adressen und Netzwerkkarten über PowerShell-Befehle