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 構成 | 関連付け |
|---|---|
| IPコンフィグ-1 | 静的パブリック IP アドレス; 静的プライベート IP アドレス |
| IPコンフィグ-2 | 静的パブリック IP アドレス; 静的プライベートアドレス |
| 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に属します。
注:
複数のIP構成をNICに割り当てる場合、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を持つVPX展開では、1つのNICがプライマリである必要があります。そのため、そのNICを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構成を確認する
VPXインスタンスの起動後、次のコマンドを使用して、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アドレスを設定しました。