PowerShellコマンドを使用してNetScaler VPXスタンドアロンインスタンスに複数のIPアドレスを構成する
Azure環境では、NetScaler VPX仮想アプライアンスを複数のNICで展開できます。各NICは複数のIPアドレスを持つことができます。このセクションでは、PowerShellコマンドを使用して、単一のNICと複数のIPアドレスを持つNetScaler VPXインスタンスを展開する方法について説明します。マルチNICおよびマルチIP展開にも同じスクリプトを使用できます。
注:
このドキュメントでは、IP-Configは、個々のNICに関連付けられているIPアドレスのペア(パブリックIPとプライベートIP)を指します。詳細については、Azure用語セクションを参照してください。
ユースケース
このユースケースでは、単一のNICが仮想ネットワーク(VNET)に接続されています。NICは、次の表に示すように、3つのIP構成に関連付けられています。
| IP構成 | 関連付け先 |
|---|---|
| アイピーコンフィグ-1 | 静的パブリックIPアドレス。静的プライベートIPアドレス |
| アイピーコンフィグ-2 | 静的パブリックIPアドレス。静的プライベートアドレス |
| アイピーコンフィグ-3 | 静的プライベートIPアドレス |
注:
IPConfig-3 はどのパブリック IP アドレスとも関連付けられていません。
図: トポロジ
ユースケースの視覚的な表現を以下に示します。
シングルモードを構成する(/ja-jp/vpx/media/config-multiip-singlemode.png)
注:
マルチNIC、マルチIPのAzure NetScaler VPX展開では、プライマリ(最初の)NICのプライマリ(最初の)
IPConfigに関連付けられたプライベートIPアドレスが、アプライアンスの管理NSIPアドレスとして自動的に追加されます。IPConfigsに関連付けられた残りのプライベートIPアドレスは、要件に応じて、add ns ipコマンドを使用してVPXインスタンスにVIPまたはSNIPとして追加する必要があります。
スタンドアロンモードのNetScaler VPX仮想アプライアンスに複数のIPアドレスを構成するために必要な手順の概要を以下に示します。
- リソースグループの作成
- ストレージアカウントの作成
- 可用性セットの作成
- ネットワークサービスグループの作成
- 仮想ネットワークの作成
- パブリックIPアドレスの作成
- IP構成の割り当て
- NICの作成
- NetScaler VPXインスタンスの作成
- NIC構成の確認
- VPX側の構成の確認
スクリプト
パラメータ
以下は、このドキュメントのユースケースにおけるパラメータ設定の例です。
$locName="westcentralus"
$rgName="Azure-MultiIP"
$nicName1="VM1-NIC1"
$vNetName="Azure-MultiIP-vnet"
$vNetAddressRange="11.6.0.0/16"
$frontEndSubnetName="frontEndSubnet"
$frontEndSubnetRange="11.6.1.0/24"
$prmStorageAccountName="multiipstorage"
$avSetName="multiip-avSet"
$vmSize="Standard\_DS4\_V2" (This parameter creates a VM with up to four NICs.)
<!--NeedCopy-->
注:
VPXインスタンスの最小要件は、2 vCPUと2 GBのRAMです。
$publisher="Citrix"
$offer="netscalervpx110-6531" (You can use different offers.)
$sku="netscalerbyol" (According to your offer, the SKU can be different.)
$version="latest"
$pubIPName1="PIP1"
$pubIPName2="PIP2"
$domName1="multiipvpx1"
$domName2="multiipvpx2"
$vmNamePrefix="VPXMultiIP"
$osDiskSuffix="osmultiipalbdiskdb1"
**Network Security Group (NSG)-related information**:
$nsgName="NSG-MultiIP"
$rule1Name="Inbound-HTTP"
$rule2Name="Inbound-HTTPS"
$rule3Name="Inbound-SSH"
$IpConfigName1="IPConfig1"
$IPConfigName2="IPConfig-2"
$IPConfigName3="IPConfig-3"
<!--NeedCopy-->
1. リソースグループの作成
New-AzureRmResourceGroup -Name $rgName -Location $locName
2. ストレージアカウントの作成
$prmStorageAccount = New-AzureRMStorageAccount -Name $prmStorageAccountName -ResourceGroupName $rgName -Type Standard_LRS -Location $locName
3. 可用性セットの作成
$avSet = New-AzureRMAvailabilitySet -Name $avSetName -ResourceGroupName $rgName -Location $locName
4. ネットワークセキュリティグループの作成
-
ルールを追加します。トラフィックを処理するすべてのポートに対して、ネットワークセキュリティグループにルールを追加する必要があります。
$rule1=New-AzureRmNetworkSecurityRuleConfig -Name $rule1Name -Description "Allow HTTP" -Access Allow -Protocol Tcp -Direction Inbound -Priority 101 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 80$rule2=New-AzureRmNetworkSecurityRuleConfig -Name $rule2Name -Description "Allow HTTPS" -Access Allow -Protocol Tcp -Direction Inbound -Priority 110 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 443$rule3=New-AzureRmNetworkSecurityRuleConfig -Name $rule3Name -Description "Allow SSH" -Access Allow -Protocol Tcp -Direction Inbound -Priority 120 -SourceAddressPrefix Internet -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 22 -
ネットワークセキュリティグループオブジェクトを作成します。
$nsg=New-AzureRmNetworkSecurityGroup -ResourceGroupName $rgName -Location $locName -Name $nsgName -SecurityRules $rule1,$rule2,$rule3
5. 仮想ネットワークを作成する
-
サブネットを追加します。
$frontendSubnet=New-AzureRmVirtualNetworkSubnetConfig -Name $frontEndSubnetName -AddressPrefix $frontEndSubnetRange -
仮想ネットワークオブジェクトを追加します。
$vnet=New-AzureRmVirtualNetwork -Name $vNetName -ResourceGroupName $rgName -Location $locName -AddressPrefix $vNetAddressRange -Subnet $frontendSubnet -
サブネットを取得します。
$subnetName="frontEndSubnet"$subnet1=$vnet.Subnets|?{$_.Name -eq $subnetName}
6. パブリックIPアドレスを作成する
$pip1=New-AzureRmPublicIpAddress -Name $pubIPName1 -ResourceGroupName $rgName -DomainNameLabel $domName1 -Location $locName -AllocationMethod Static
$pip2=New-AzureRmPublicIpAddress -Name $pubIPName2 -ResourceGroupName $rgName -DomainNameLabel $domName2 -Location $locName -AllocationMethod Static
注:
使用する前にドメイン名の可用性を確認してください。
IPアドレスの割り当て方法は、動的または静的にすることができます。
7. IP構成の割り当て
このユースケースでは、IPアドレスを割り当てる前に以下の点を考慮してください。
- IPConfig-1 は VPX1 のサブネット1に属します。
- IPConfig-2 は VPX1 のサブネット 1 に属します。
- IPConfig-3 は VPX1 のサブネット 1 に属します。
注:
NICに複数のIP構成を割り当てる場合、1つの構成をプライマリとして割り当てる必要があります。
$IPAddress1="11.6.1.27"
$IPConfig1=New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName1 -Subnet $subnet1 -PrivateIpAddress $IPAddress1 -PublicIpAddress $pip1 –Primary
$IPAddress2="11.6.1.28"
$IPConfig2=New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName2 -Subnet $subnet1 -PrivateIpAddress $IPAddress2 -PublicIpAddress $pip2
$IPAddress3="11.6.1.29"
$IPConfig3=New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName3 -Subnet $subnet1 -PrivateIpAddress $IPAddress3 -Primary
サブネット要件を満たす有効なIPアドレスを使用し、その可用性を確認してください。
8. NICの作成
$nic1=New-AzureRmNetworkInterface -Name $nicName1 -ResourceGroupName $rgName -Location $locName -IpConfiguration $IpConfig1,$IpConfig2,$IPConfig3 -NetworkSecurityGroupId $nsg.Id
9. NetScaler VPXインスタンスの作成
-
変数を初期化します。
$suffixNumber = 1$vmName = $vmNamePrefix + $suffixNumber -
VM構成オブジェクトを作成します。
$vmConfig=New-AzureRMVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avSet.Id -
資格情報、OS、およびイメージを設定します。
$cred=Get-Credential -Message "Type the name and password for VPX login."$vmConfig=Set-AzureRMVMOperatingSystem -VM $vmConfig -Linux -ComputerName $vmName -Credential $cred$vmConfig=Set-AzureRMVMSourceImage -VM $vmConfig -PublisherName $publisher -Offer $offer -Skus $sku -Version $version -
NICを追加します。
$vmConfig=Add-AzureRMVMNetworkInterface -VM $vmConfig -Id $nic1.Id -Primary注:
マルチNICのNetScaler VPX展開では、1つのNICがプライマリである必要があります。したがって、そのNICをNetScaler VPXインスタンスに追加する際には、「-Primary」を付加する必要があります。
-
OSディスクを指定し、VMを作成します。
$osDiskName=$vmName + "-" + $osDiskSuffix1$osVhdUri=$prmStorageAccount.PrimaryEndpoints.Blob.ToString() + "vhds/" + $osDiskName + ".vhd"$vmConfig=Set-AzureRMVMOSDisk -VM $vmConfig -Name $osDiskName -VhdUri $osVhdUri -CreateOption fromImageSet-AzureRmVMPlan -VM $vmConfig -Publisher $publisher -Product $offer -Name $skuNew-AzureRMVM -VM $vmConfig -ResourceGroupName $rgName -Location $locName
10. NIC構成を確認する
NetScaler VPXインスタンスが起動した後、次のコマンドを使用して、NetScaler VPX NICのIPConfigsに割り当てられたIPアドレスを確認できます。
$nic.IPConfig
11. VPX側の構成を確認する
NetScaler VPXインスタンスが起動すると、プライマリNICのプライマリIPconfigに関連付けられたプライベートIPアドレスがNSIPアドレスとして追加されます。残りのプライベートIPアドレスは、要件に応じてVIPまたはSNIPアドレスとして追加する必要があります。次のコマンドを使用します。
add nsip <Private IPAddress><netmask> -type VIP/SNIP
これで、スタンドアロンモードのNetScaler VPXインスタンスに複数のIPアドレスを設定しました。