Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Zusätzliche PowerShell -Skripts für die Azure-Bereitstellung
Dieser Abschnitt enthält die PowerShell Cmdlets, mit denen Sie die folgenden Konfigurationen in Azure PowerShell ausführen können:
- Bereitstellen einer eigenständigen Citrix ADC VPX-Instanz
- Bereitstellen eines Citrix ADC VPX-Paares in einem Hochverfügbarkeits-Setup mit einem externen Azure Load Balancer
- Bereitstellen eines Citrix ADC VPX Paares in einem Hochverfügbarkeitssetup mit dem internen Azure-Load Balancer
Weitere Informationen zu Konfigurationen, die Sie mithilfe von PowerShell Befehlen ausführen können, finden Sie in den folgenden Themen:
- Konfigurieren eines Hochverfügbarkeitssetups mit mehreren IP-Adressen und Netzwerkkarten über PowerShell-Befehle
- Konfigurieren von GSLB auf Citrix ADC VPX-Instanzen
- Konfigurieren von GSLB auf einem NetScaler Active-Standby Hochverfügbarkeitssetup
- Konfigurieren mehrerer IP-Adressen für eine Citrix ADC VPX-Instanz im Standalone-Modus über PowerShell-Befehle
Bereitstellen einer eigenständigen Citrix ADC VPX-Instanz
-
Erstellen einer Ressourcengruppe
Die Ressourcengruppe kann alle Ressourcen für die Lösung oder nur die Ressourcen enthalten, die Sie als Gruppe verwalten möchten. Der hier angegebene Speicherort ist der Standardspeicherort für Ressourcen in dieser Ressourcengruppe. Stellen Sie sicher, dass alle Befehle zum Erstellen eines Load Balancer dieselbe Ressourcengruppe verwenden.
$rgName="\<resource group name\>" $locName="\<location name, such as West US\>" New-AzureRmResourceGroup -Name $rgName -Location $locName
Beispiel:
$rgName = "ARM-VPX" $locName = "West US" New-AzureRmResourceGroup -Name $rgName -Location $locName
-
Speicherkonto erstellen
Wählen Sie einen eindeutigen Namen für Ihr Speicherkonto, der nur Kleinbuchstaben und Zahlen enthält.
$saName="\<storage account name\>" $saType="\<storage account type, specify one: Standard\_LRS, Standard\_GRS, Standard\_RAGRS, or Premium\_LRS\>" New-AzureRmStorageAccount -Name $saName -ResourceGroupName $rgName -Type $saType -Location $locName
Beispiel:
$saName="vpxstorage" $saType="Standard\_LRS" New-AzureRmStorageAccount -Name $saName -ResourceGroupName $rgName -Type $saType -Location $locName
-
Erstellen eines Verfügbarkeitssatzes
Verfügbarkeitssatz hilft, Ihre virtuellen Maschinen während Ausfallzeiten verfügbar zu halten, z. B. Ein Load Balancer, der mit einem Verfügbarkeitssatz konfiguriert ist, stellt sicher, dass Ihre Anwendung immer verfügbar ist.
$avName="\<availability set name\>" New-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName -Location $locName
-
Erstellen eines virtuellen Netzwerks
Fügen Sie ein neues virtuelles Netzwerk mit mindestens einem Subnetz hinzu, wenn das Subnetz vorher nicht erstellt wurde.
$FrontendAddressPrefix="10.0.1.0/24" $BackendAddressPrefix="10.0.2.0/24" $vnetAddressPrefix="10.0.0.0/16" $frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name frontendSubnet -AddressPrefix $FrontendAddressPrefix $backendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name backendSubnet -AddressPrefix $BackendAddressPrefix New-AzureRmVirtualNetwork -Name TestNet -ResourceGroupName $rgName -Location $locName -AddressPrefix $vnetAddressPrefix -Subnet $frontendSubnet,$backendSubnet
Beispiel:
$frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name frontendSubnet -AddressPrefix $FrontendAddressPrefix $backendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name backendSubnet -AddressPrefix $BackendAddressPrefix New-AzureRmVirtualNetwork -Name TestNet -ResourceGroupName $rgName -Location $locName -AddressPrefix $vnetAddressPrefix -Subnet $frontendSubnet,$backendSubnet
-
Erstellen einer Netzwerkkarte
Erstellen Sie eine Netzwerkkarte, und ordnen Sie die Netzwerkkarte der Citrix ADC VPX-Instanz zu. Das in der obigen Prozedur erstellte Front-End-Subnetz wird bei 0 indiziert und das Back-End-Subnetz wird bei 1 indiziert. Erstellen Sie nun NIC auf eine der drei folgenden Arten:
-
NIC mit öffentlicher IP-Adresse
``` $nicName=”<name of the NIC of the VM>”
$pip = New-AzureRmPublicIpAddress -Name $nicName -ResourceGroupName $rgName -Location $locName -AllocationMethod Dynamic
$nic = New-AzureRmNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $locName -SubnetId $vnet.Subnets[$subnetIndex].Id -PublicIpAddressId $pip.Id
- NIC with Public IP and DNS label
$nicName="\<Name der Netzwerkkarte der VM\>" $domName="\<Domänennamenbezeichnung\>" $pip = Neue AzureRmPublicIpAddress -Name $nicName -ResourceGroupName $rgName -DomainNameLabel $domName -Standort $locName -AllocationMethod Dynamisch
Before assigning `$domName`, check it is available or not by using command:
Test-AzureRmDnsAvailability -DomainQualifiedName $domName -Location $locName $nic = Neue AzureRmNetworkInterface-Name $nicName -Ressourcengruppenname $rgName -Standort $locName -Subnetz-ID $vnet.Subnetze\[$subnetIndex\].ID -ÖffentlicheIP-AdresseID $pip.ID
For example:
$nicName="frontendNIC" $domName="vpxazure" $pip = New-AzureRmPublicIpAddress -Name $nicName -ResourceGroupName $rgName -DomainNameLabel $domName -Location $locName -AllocationMethod Dynamic $nic = New-AzureRmNetworkInterface -Name $nicName -ResourceGroupName $rgName -Location $locName -SubnetId $vnet.Subnets\[0\].Id -PublicIpAddressId $pip.Id
-
NIC with Dynamic Public Address and Static Private IP address*
Make sure that the private (static) IP address you add to the VM should be the same range as that of the subnet specified.
$nicName="\<Name der Netzwerkkarte der VM\>" $staticIP="\<verfügbare statische IP-Adresse im Subnetz\>" $pip = Neue AzureRmPublicIpAddress -Name $nicName -ResourceGroupName $rgName -Standort $locName -AllocationMethod Dynamisch $nic = Neue AzureRmNetworkInterface-Name $nicName -Ressourcengruppenname $rgName -Standort $locName -Subnetz-ID $vnet.Subnetze\[$subnetIndex\].ID -ÖffentlicheIP-AdressID $pip.ID -PrivateIP-Adresse $staticIP
-
-
Create a virtual object
$vmName=”<VM name>”
$vmSize=”<VM size string>”
$avSet=Get-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName
$vm=New-AzureRmVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
- Get the Citrix ADC VPX image
$pubName=”<Image publisher name>”
$offerName=”<Image offer name>”
$skuName=”<Image SKU name>”
$cred=Get-Credential -Message “Type the name and password of the local administrator account.”
Provide your credentials that is used to login into VPX
$vm=Set-AzureRmVMOperatingSystem -VM $vm -Linux -ComputerName $vmName -Credential $cred -Verbose
$vm=Set-AzureRmVMSourceImage -VM $vm -PublisherName $pubName -Offer $offerName -Skus $skuName -Version “latest”
$vm=Add-AzureRmVMNetworkInterface -VM $vm -Id $nic.Id
For example:
$pubName="Citrix"
The following command is used for displaying all offers from Citrix:
Get-AzureRMVMImageOffer -Location \$locName -Publisher \$pubName | Angebot auswählen
$offerName="netscalervpx110-6531"
The following command is used to know sku offered by publisher for specific offer name:
Get-AzureRMVMImageSku -Location $locName -Publisher $pubName -Offer $offerName | Select Skus |
- Create a virtual machine
$diskName=”<name identifier for the disk in Azure storage, such as OSDisk>”
For example:
$diskName= "dynamisch"
$pubName="Citrix"
$offerName="netscalervpx110-6531"
$skuName="netscalerbyol"
$storageAcc=Get-AzureRmStorageAccount -ResourceGroupName $rgName -Name $saName
$osDiskUri=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds/" + $diskName+ ".vhd"
$vm=Set-AzureRmVMOSDisk -VM $vm -Name $diskName -VhdUri $osDiskUri -CreateOption fromImage
When you create VM from Images present in marketplace, use the following command to specify the VM plan:
Set-AzureRmVMPlan -VM $vm -Publisher $pubName -Product $offerName -Name $skuName
New-AzureRmVM -ResourceGroupName $rgName -Location $locName -VM $vm
Provision a Citrix ADC VPX pair in a high availabilty setup with an Azure external load balancer
Log on to AzureRmAccount using your Azure user credentials.
1) Create a resource group
The location specified here is the default location for resources in that resource group. Make sure that all commands used to create a load balancer use the same resource group.
$rgName=”<resource group name>”
$locName=”<location name, such as West US>”
New-AzureRmResourceGroup -Name $rgName -Location $locName
For example:
$rgName = "ARM-LB-NS"
$locName = "West USA"
Neue AzureRmResourceGroup -Name $rgName -Standort $locName
2) Create a storage account
Choose a unique name for your storage account that contains only lowercase letters and numbers.
$saName=”<storage account name>”
$saType=”<storage account type, specify one: Standard_LRS, Standard_GRS, Standard_RAGRS, or Premium_LRS>”
New-AzureRmStorageAccount -Name $saName -ResourceGroupName $rgName -Type $saType -Location $locName
For example:
$saName="vpxSpeicher"
$saType="Standard\_LRS"
Neues AzureRmStorageAccount -Name $saName -Ressourcengruppenname $rgName -Typ $saType -Standort $locName
3) Create an availability set
A load balancer configured with an availability set ensures that your application is always available.
$avName=”<availability set name>”
New-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName -Location $locName
4) Create a virtual network
Add a new virtual network with at least one subnet, if the subnet was not created previously.
$vnetName = "LBVnet"
$FrontendAddressPrefix="10.0.1.0/24"
$BackendAddressPrefix="10.0.2.0/24"
$vnetAddressPrefix="10.0.0.0/16"
$frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name frontendSubnet -AddressPrefix$FrontendAddressPrefix
$backendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name backendSubnet -AddressPrefix$BackendAddressPrefix
$vnet=Neues-AzureRmVirtualNetwork -Name $vnetName -Ressourcengruppenname $rgName -Standort $locName -Adresspräfix $vnetAddressPrefix-Subnetz $frontendSubnet,$backendSubnet
Note:
Choose the AddressPrefix parameter value as per your requirement.
Assign front end and back end subnet to the virtual network that you created earlier in this step.
If the front end subnet is the first element of array vnet, subnetId should be $vnet.Subnets[0].Id.
If the front end subnet is the second element in the array, the subnetId should be $vnet.Subnets[1].Id, and so on..
5) Configure front end IP address and create back end address pool
Configure a front end IP address for the incoming load balancer network traffic and create a back end address pool to receive the load balanced traffic.
$pubName="ÖffentlicheIp1"
$publicIP1 = Neue öffentliche AzureRm-Adresse -Name $pubName-Ressourcengruppenname $rgName -Standort $locName -AllocationMethod Static -DomainNameLabel nsvpx
Note: Check for the availability of the value for DomainNameLabel.
$FIPName = "ELBFIP"
$frontendIP1 = Neue AzureRmLoadBalancerFrontendIpConfig -Name $FIPName -PublicIpAddress $publicIP1
$BEPool = "LB-Backend-Pool"
$beaddresspool1= Neu-AzureRmLoadBalancerBackendAddressPoolConfig -Name $BEPool
8) Create a health probe
Create a TCP health probe with port 9000 and interval 5 seconds.
$healthProbe = New-AzureRmLoadBalancerProbeConfig -Name HealthProbe -Protocol Tcp -Port 9000 -IntervalInSeconds 5 -ProbeCount 2
9) Create a load balancing rule
Create a LB rule for each service that you are load balancing.
For example:
You can use the following example to load balance http service.
$lbrule1 = New-AzureRmLoadBalancerRuleConfig -Name "HTTP-LB" -FrontendIpConfiguration $frontendIP1 -BackendAddressPool $beAddressPool1 -Probe $healthProbe -Protocol Tcp -FrontendPort 80 -BackendPort 80
10) Create inbound NAT rules
Create NAT rules for services that you are not load balancing.
For example, when creating a SSH access to a Citrix ADC VPX instance.
Note: Protocol-FrontEndPort-BackendPort triplet should not be the same for two NAT rules.
$inboundNATRule1= New-AzureRmLoadBalancerInboundNatRuleConfig -Name SSH1 -FrontendIpConfiguration $frontendIP1 -Protocol TCP -FrontendPort 22 -BackendPort 22
$inboundNATRule2= New-AzureRmLoadBalancerInboundNatRuleConfig -Name SSH2 -FrontendIpConfiguration $frontendIP1 -Protocol TCP -FrontendPort 10022 -BackendPort 22
11) Create a load balancer entity
Create the load balancer adding all objects (NAT rules, load balancer rules, probe configurations) together.
$lbName= "ELB"
$NRPLB = Neuer AzureRmLoadBalancer -ResourceGroupName $rgName -Name $lbName -Standort $locName -InboundNatRule $inboundNATRule1, $inboundNATRule2 -FrontendIpConfiguration $frontendIP1 -LoadBalancingRule $lbrule1 -BackendAddressPool $beAddressPool1 -Probe $healthProbe
12) Create a NIC
Create two NICs and associate each NIC with each VPX instance
a) NIC1 with VPX1
For example:
$nicName="Netzwerkkarte1"
$lbName= "ELB"
$bePoolIndex=0
\* Regelindizes beginnen bei 0.
$natRuleIndex=0
$subnetIndex=0
\* Frontend-Subnetzindex
$lb=Get-AzureRmLoadBalancer -Name $lbName -Ressourcengruppenname $rgName
$nic1=Neue-AzureRmNetworkInterface -Name $nicName -Ressourcengruppenname $rgName -Standort $locName -Subnetz $vnet.Subnetze\[$subnetIndex\] -LoadBalancerBackendAddressPool $lb.BackendAddressPools\[$bePoolIndex\] -LoadBalancerInboundNatRule $lb.InboundNatRules\[$natRuleIndex\]
b) NIC2 with VPX2
For example:
$nicName="NIC2"
$lbName= "ELB"
$bePoolIndex=0
$natRuleIndex=1
* Second Inbound NAT (SSH) rule we need to use
$subnetIndex=0
* Frontend subnet index
$lb=Get-AzureRmLoadBalancer -Name $lbName -Ressourcengruppenname $rgName
$nic2=Neue-AzureRmNetworkInterface -Name $nicName -Ressourcengruppenname $rgName -Standort $locName -Subnetz $vnet.Subnetze\[$subnetIndex\] -LoadBalancerBackendAddressPool $lb.BackendAddressPools\[$bePoolIndex\] -LoadBalancerInboundNatRule$lb.InboundNatRules\[$natRuleIndex\]
13) Create Citrix ADC VPX instances
Create two Citrix ADC VPX instances as part of the same resource group and availability set, and attach it to the external load balancer.
a) Citrix ADC VPX instance 1
For example:
$vmName="VPX1"
$vmSize="Standard\_A3"
$pubName="Citrix"
$offerName="netscalervpx110-6531"
$skuName="netscalerbyol"
$avSet=Get-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName
$vm1=Neu-AzureRmVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
$cred=Get-Credential -Message „Geben Sie die Anmeldeinformationen ein, die zum Anmelden bei der VPX-Instanz verwendet werden“
$vm1=Set-AzureRmVMOperatingSystem -VM $vm1 -Linux -ComputerName $vmName -Anmeldeinformationen $cred -Ausführlich
$vm1=Set-AzureRmVMSourceImage -VM $vm1 -PublisherName $pubName -Angebot $offerName -Skus $skuName -Version „neueste“
$vm1=Add-AzureRmVMNetworkInterface -VM $vm1 -Id $nic1.Id
$diskName= "dynamisch"
$storageAcc=Get-AzureRmStorageAccount -ResourceGroupName $rgName -Name $saName
$osDiskUri1=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds1/" + $diskName+ ".vhd"
$vm1=Set-AzureRmVMOSDisk -VM $vm1 -Name $diskName -VhdUri $osDiskUri1 -CreateOption fromImage
Set-AzureRmVMPlan -VM $vm1 -Herausgeber $pubName -Produkt $offerName -Name $skuName
Neu-AzureRmVM -ResourceGroupName $rgName -Location $locName -VM $vm1
b) Citrix ADC VPX instance 2
For example:
$vmName="VPX2"
$vmSize="Standard\_A3"
$avSet=Get-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName
$vm2=Neu-AzureRmVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
$cred=Get-Credential -Message " Geben Sie die Anmeldeinformationen ein, die zum Anmelden bei der VPX-Instanz verwendet werden "
$vm2=Set-AzureRmVMOperatingSystem -VM $vm2 -Linux -ComputerName $vmName -Anmeldeinformationen $cred -Ausführlich
$vm2=Set-AzureRmVMSourceImage -VM $vm2 -PublisherName $pubName -Angebot $offerName -Skus $skuName -Version „neueste“
$vm2=Add-AzureRmVMNetworkInterface -VM $vm2 -Id $nic2.Id
$diskName= "dynamisch"
$storageAcc=Get-AzureRmStorageAccount -ResourceGroupName $rgName -Name $saName
$osDiskUri1=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds2/" + $diskName+ ".vhd"
$vm2=Set-AzureRmVMOSDisk -VM $vm2 -Name $diskName -VhdUri $osDiskUri1 -CreateOption fromImage
Set-AzureRmVMPlan -VM $vm2 -Herausgeber $pubName -Produkt $offerName -Name $skuName
Neu-AzureRmVM -ResourceGroupName $rgName -Location $locName -VM $vm2
14) Configure the virtual machines
When both the Citrix ADC VPX instances start, then connect to both Citrix ADC VPX instances using the SSH protocol to configure the virtual machines.
a) Active-Active: Run the same set of configuration commands on the command line of both the Citrix ADC VPX instances.
b) Active-Passive: Run this command on the command line of both the Citrix ADC VPX instances.
add ha node #nodeID <nsip of other Citrix ADC VPX>
In Active-Passive mode, run configuration commands on the primary node only.
Provision a Citrix ADC VPX pair in a high availability setup with Azure internal load balancer
Log on to AzureRmAccount using your Azure user credentials.
1) Create a resource group
The location specified here is the default location for resources in that resource group. Make sure all commands to create a load balancer use the same resource group.
$rgName=”<resource group name>”
$locName=”<location name, such as West US>”
New-AzureRmResourceGroup -Name $rgName -Location $locName
For example:
$rgName = "ARM-LB-NS"
$locName = "West USA"
Neue AzureRmResourceGroup -Name $rgName -Standort $locName
2) Create a storage account
Choose a unique name for your storage account that contains only lowercase letters and numbers.
$saName=”<storage account name>”
$saType=”<storage account type, specify one: Standard_LRS, Standard_GRS, Standard_RAGRS, or Premium_LRS>”
New-AzureRmStorageAccount -Name $saName -ResourceGroupName $rgName -Type $saType -Location $locName
For example:
$saName="vpxSpeicher"
$saType="Standard\_LRS"
Neues AzureRmStorageAccount -Name $saName -Ressourcengruppenname $rgName -Typ $saType -Standort $locName
3) Create an availability set
A load balancer configured with an availability set ensures that your application is always available..
$avName=”<availability set name>”
New-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName -Location $locName
4) Create a virtual network
Add a new virtual network with at least one subnet, if the subnet was not created previously.
$vnetName = "LBVnet"
$vnetAddressPrefix="10.0.0.0/16"
$FrontendAddressPrefix="10.0.1.0/24"
$BackendAddressPrefix="10.0.2.0/24"
$vnet=Neues-AzureRmVirtualNetwork -Name $vnetName -Ressourcengruppenname $rgName -Standort $locName -Adresspräfix $vnetAddressPrefix-Subnetz $frontendSubnet,$backendSubnet\`
$frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name frontendSubnet -AddressPrefix$FrontendAddressPrefix
$backendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name backendSubnet -AddressPrefix$BackendAddressPrefix
Note: Choose the AddressPrefix parameter value as per your requirement.
Assign front end and back end subnet to the virtual network that you created earlier in this step.
If the front end subnet is the first element of array vnet, subnetId should be $vnet.Subnets[0].Id.
If the front end subnet is the second element in the array, the subnetId should be $vnet.Subnets[1].Id, and so on..
5) Create an back end address pool
$beaddresspool= New-AzureRmLoadBalancerBackendAddressPoolConfig -Name "LB-Backend"
6) Create NAT rules
Create NAT rules for services that you are not load balancing.
$inboundNATRule1= New-AzureRmLoadBalancerInboundNatRuleConfig -Name "Inboundnatrule1" -FrontendIpConfiguration $frontendIP -Protocol TCP -FrontendPort 3441 -BackendPort 3389
$inboundNATRule2= New-AzureRmLoadBalancerInboundNatRuleConfig -Name "RDP2" -FrontendIpConfiguration $frontendIP -Protocol TCP -FrontendPort 3442 -BackendPort 3389
Use front end and back end ports as per your requirement.
7) Create a health probe
Create a TCP health probe with port 9000 and interval 5 seconds.
$healthProbe = New-AzureRmLoadBalancerProbeConfig -Name "HealthProbe" " -Protocol tcp -Port 9000 -IntervalInSeconds 5 -ProbeCount 2
8) Create a load balancing rule
Create a LB rule for each service that you are load balancing.
For example:
You can use the following example to load balance http service.
$lbrule = New-AzureRmLoadBalancerRuleConfig -Name "lbrule1" -FrontendIpConfiguration $frontendIP -BackendAddressPool $beAddressPool -Probe $healthProbe -Protocol Tcp -FrontendPort 80 -BackendPort 80
Use front end and back end ports as per your requirement.
9) Create a load balancer entity
Create the load balancer adding all objects (NAT rules, load balancer rules, probe configurations) together.
$NRPLB = Neuer AzureRmLoadBalancer -ResourceGroupName $rgname -Name „InternalLB“ -Standort $locName -FrontendIpConfiguration $frontendIP -InboundNatRule $inboundNATRule1,$inboundNatRule2 -LoadBalancingRule $lbrule -BackendAddressPool $beAddressPool -Probe $healthProbe
10) Create a NIC
Create two NICs and associate each NIC with each Citrix ADC VPX instance
$backendnic1= Neue AzureRmNetworkInterface -ResourceGroupName $rgName -Name lb-nic1-be -Standort $locName -PrivateIpAddress 10.0.2.6 -Subnetz $backendSubnet -LoadBalancerBackendAddressPool $nrplb.BackendAddressPools\[0\] -LoadBalancerInboundNatRule $nrplb.InboundNatRules\[0\]
This NIC is for Citrix ADC VPX 1. The Private IP should be in same subnet as that of subnet added.
$backendnic2= Neues AzureRmNetworkInterface -ResourceGroupName $rgName-Name lb-nic2-be -Standort $locName-PrivateIpAddress 10.0.2.7 -Subnetz $backendSubnet -LoadBalancerBackendAddressPool $nrplb.BackendAddressPools\[0\] -LoadBalancerInboundNatRule $nrplb.InboundNatRules\[1\].
This NIC is for Citrix ADC VPX 2.The parameter Private IPAddress can have any private IP as per your requirement.
11) Create Citrix ADC VPX instances
Create two VPX instances part of same resource group and availability set and attach it to the internal load balancer.
a) Citrix ADC VPX instance 1
For example:
$vmName="VPX1"
$vmSize="Standard\_A3"
$avSet=Get-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName
$vm1=Neu-AzureRmVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
$cred=Get-Credential -Message „Geben Sie die Anmeldeinformationen ein, die zum Anmelden bei der VPX-Instanz verwendet werden“
$vm1=Set-AzureRmVMOperatingSystem -VM $vm1 -Linux -ComputerName $vmName -Anmeldeinformationen $cred -Ausführlich
$vm1=Set-AzureRmVMSourceImage -VM $vm1 -PublisherName $pubName -Angebot $offerName -Skus $skuName -Version „neueste“
$vm1=Add-AzureRmVMNetworkInterface -VM $vm1 -Id $backendnic1.Id
$diskName= "dynamisch"
$storageAcc=Get-AzureRmStorageAccount -ResourceGroupName $rgName -Name $saName
$osDiskUri1=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds1/" + $diskName + ".vhd"
$vm1=Set-AzureRmVMOSDisk -VM $vm1 -Name $diskName -VhdUri $osDiskUri1 -CreateOption fromImage
Set-AzureRmVMPlan -VM $vm1 -Herausgeber $pubName -Produkt $offerName -Name $skuName
Neu-AzureRmVM -ResourceGroupName $rgName -Location $locName -VM $vm1
b) Citrix ADC VPX instance 2
For example:
$vmName="VPX2"
$vmSize="Standard\_A3"
$avSet=Get-AzureRmAvailabilitySet -Name $avName -ResourceGroupName $rgName
$vm2=Neu-AzureRmVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
$cred=Get-Credential -Message " Geben Sie die Anmeldeinformationen ein, die zum Anmelden bei der VPX-Instanz verwendet werden "
$vm2=Set-AzureRmVMOperatingSystem -VM $vm2 -Linux -ComputerName $vmName -Anmeldeinformationen $cred -Ausführlich
$vm2=Set-AzureRmVMSourceImage -VM $vm2 -PublisherName $pubName -Angebot $offerName -Skus $skuName -Version „neueste“
$vm2=Add-AzureRmVMNetworkInterface -VM $vm2 -Id $backendnic2.Id
$diskName= "dynamisch"
$storageAcc=Get-AzureRmStorageAccount -ResourceGroupName $rgName -Name $saName
$osDiskUri1=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds2/" + $diskName + ".vhd"
$vm2=Set-AzureRmVMOSDisk -VM $vm2 -Name $diskName -VhdUri $osDiskUri1 -CreateOption fromImage
Set-AzureRmVMPlan -VM $vm2 -Herausgeber $pubName -Produkt $offerName -Name $skuName
Neu-AzureRmVM -ResourceGroupName $rgName -Location $locName -VM $vm2 ```
12\)**Konfigurieren der virtuellen Maschinen**
Wenn beide Citrix ADC VPX-Instanzen gestartet werden, stellen Sie mithilfe des SSH-Protokolls eine Verbindung zu beiden Citrix ADC VPX-Instanzen her, um die virtuellen Maschinen zu konfigurieren.
a) Aktiv-Aktiv: Führen Sie denselben Satz von Konfigurationsbefehlen in der Befehlszeile beider Citrix ADC VPX-Instanzen aus.
b) Aktiv-Passiv: Führen Sie diesen Befehl in der Befehlszeile beider Citrix ADC VPX-Instanzen aus.
Fügen Sie einen Knoten \#nodeID \<nsip eines anderen Citrix ADC VPX\>hinzu
Führen Sie im Aktiv-Passiv-Modus Konfigurationsbefehle nur auf dem primären Knoten aus.