クラウドでのNetScalerアプライアンスの初回起動時にNetScaler VPX構成を適用する
クラウド環境でNetScalerアプライアンスを初回起動する際に、NetScaler VPX構成を適用できます。この段階は、本書ではプリブート段階として扱われます。したがって、ADCプールライセンスのような特定のケースでは、特定のVPXインスタンスがはるかに短い時間で起動されます。この機能は、Microsoft Azure、Google Cloud Platform、およびAWSクラウドで利用できます。
ユーザーデータとは
クラウド環境でVPXインスタンスをプロビジョニングする際、ユーザーデータをインスタンスに渡すオプションがあります。ユーザーデータを使用すると、一般的な自動構成タスクを実行したり、インスタンスの起動動作をカスタマイズしたり、インスタンスの起動後にスクリプトを実行したりできます。初回起動時に、NetScaler VPXインスタンスは次のタスクを実行します。
-
ユーザーデータを読み取ります。
-
ユーザーデータで提供された構成を解釈します。
-
起動時に新しく追加された構成を適用します。
クラウドインスタンスでプリブートユーザーデータを提供する方法
プリブートユーザーデータをXML形式でクラウドインスタンスに提供できます。クラウドによってユーザーデータを提供するインターフェースは異なります。
AWSコンソールを使用してプリブートユーザーデータを提供する
AWSコンソールを使用してNetScaler VPXインスタンスをプロビジョニングする際、インスタンスの詳細設定 > 高度な詳細に移動し、ユーザーデータフィールドにプリブートユーザーデータ構成を入力します。
各手順の詳細については、「AWSウェブコンソールを使用してAWSにNetScaler VPXインスタンスを展開する」を参照してください。 詳細については、AWSドキュメントの「インスタンスの起動」を参照してください。
注:
プリブートユーザーデータ機能のAWS IMDSv2専用モードは、NetScaler VPXリリース13.1.48.x以降でサポートされています。
AWS CLI を使用してプリブートユーザーデータを提供する
AWS CLI で次のコマンドを入力します。
aws ec2 run-instances \
--image-id ami-0abcdef1234567890 \
--instance-type t2.micro \
--count 1 \
--subnet-id subnet-08fc749671b2d077c \
--key-name MyKeyPair \
--security-group-ids sg-0b0384b66d7d692f9 \
--user-data file://my_script.txt
詳細については、インスタンスの実行に関する AWS ドキュメントを参照してください。
詳細については、インスタンスユーザーデータの使用に関する AWS ドキュメントを参照してください。
Azure コンソールを使用してプリブートユーザーデータを提供する
Azure コンソールを使用してNetScaler VPXインスタンスをプロビジョニングする際は、仮想マシンの作成 > 詳細タブに移動します。カスタムデータフィールドに、プリブートユーザーデータ構成を入力します。
Azure CLI を使用してプリブートユーザーデータを提供する
Azure CLI で次のコマンドを入力します。
az vm create \
--resource-group myResourceGroup \
--name MyVm \
--image debian \
--custom-data MyCloudInitScript.txt \
例:
az vm create --resource-group MyResourceGroup -name MyVm --image debian --custom-data MyCloudInitScript.txt
カスタムデータまたはプリブート構成をファイルとして「--custom-data」パラメーターに渡すことができます。この例では、ファイル名はMyCloudInitScript.txtです。
詳細については、Azure CLI ドキュメントを参照してください。
GCP コンソールを使用してプリブートユーザーデータを提供する
GCP コンソールを使用してNetScaler VPXインスタンスをプロビジョニングする際は、インスタンスのプロパティを入力します。管理、セキュリティ、ディスク、ネットワーク、単一テナンシーを展開します。管理タブに移動します。自動化セクションの起動スクリプトフィールドに、プリブートユーザーデータ構成を入力します。
GCP を使用した VPX インスタンスの作成に関する詳細については、Google Cloud Platform に NetScaler VPX インスタンスを展開するを参照してください。
GCP コンソール(/en-us/vpx/media/preboot-gcp-console.png)
gcloud CLI を使用してプリブートユーザーデータを提供する
GCP CLI で次のコマンドを入力します。
gcloud compute instances create INSTANCE_NAMES --metadata-from-file=startup-script=LOCAL_FILE_PATH
metadata-from-file - <LOCAL_FILE_PATH> に保存されているファイルから値またはユーザーデータを読み取ります。
詳細については、gcloud CLI ドキュメント を参照してください。
プリブートユーザーデータ形式
プリブートユーザーデータは、XML 形式でクラウドインスタンスに提供する必要があります。起動時にクラウドインフラストラクチャを介して提供するNetScalerプリブートユーザーデータは、次の4つのセクションで構成できます。
-
<NS-CONFIG>タグで表されるNetScaler構成。 -
<NS-BOOTSTRAP>タグで表されるNetScalerのカスタムブートストラップ。 -
<NS-SCRIPTS>タグで表されるNetScalerへのユーザースクリプトの保存。 -
<NS-LICENSE-CONFIG>タグで表されるプールライセンス構成。
上記の4つのセクションは、ADCプリブート構成内で任意の順序で提供できます。 プリブートユーザーデータを提供する際は、以下のセクションに示されている書式設定を厳密に守ってください。
注:
プリブートユーザーデータ構成全体は、次の例に示すように
<NS-PRE-BOOT-CONFIG> タグで囲む必要があります。
例 1:
<NS-PRE-BOOT-CONFIG>
<NS-CONFIG> </NS-CONFIG>
<NS-BOOTSTRAP> </NS-BOOTSTRAP>
<NS-SCRIPTS> </NS-SCRIPTS>
<NS-LICENSE-CONFIG> </NS-LICENSE-CONFIG>
</NS-PRE-BOOT-CONFIG>
例 2:
<NS-PRE-BOOT-CONFIG>
<NS-LICENSE-CONFIG> </NS-LICENSE-CONFIG>
<NS-SCRIPTS> </NS-SCRIPTS>
<NS-BOOTSTRAP> </NS-BOOTSTRAP>
<NS-CONFIG> </NS-CONFIG>
</NS-PRE-BOOT-CONFIG>
<NS-CONFIG> タグを使用して、プリブート段階でVPXインスタンスに適用する必要がある特定のNetScaler VPX構成を指定します。
注:
<NS-CONFIG> セクションには、有効なADC CLIコマンドが含まれている必要があります。CLIは構文エラーや形式について検証されません。
NetScaler構成
<NS-CONFIG> タグを使用して、プリブート段階でVPXインスタンスに適用する必要がある特定のNetScaler VPX構成を指定します。
注:
<NS-CONFIG> セクションには、有効なADC CLIコマンドが含まれている必要があります。CLIは構文エラーや形式について検証されません。
例:
次の例では、
<NS-CONFIG> セクションに構成の詳細が記載されています。ID '5' のVLANが構成され、SNIP (5.0.0.1) にバインドされています。ロードバランシング仮想サーバー (4.0.0.101) も構成されています。
前のスクリーンショットに示されている構成は、ここからコピーできます。
<NS-PRE-BOOT-CONFIG>
<NS-CONFIG>
add vlan 5
add ns ip 5.0.0.1 255.255.255.0
bind vlan 5 -IPAddress 5.0.0.1 255.255.255.0
enable ns feature WL SP LB RESPONDER
add server 5.0.0.201 5.0.0.201
add service preboot_s5_201 5.0.0.201 HTTP 80 -gslb NONE -maxClient 0 -maxReq 0 -cip DISABLED -usip
NO -useproxyport YES -sp OFF -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP NO
add lb vserver preboot_v4_101 HTTP 4.0.0.101 80 -persistenceType NONE -cltTimeout 180
</NS-CONFIG>
</NS-PRE-BOOT-CONFIG>
NetScaler VPXインスタンスは、次の図に示すように、
<NS-CONFIG> セクションで適用された構成で起動します。
ユーザースクリプト
<NS-SCRIPTS> タグを使用して、NetScaler VPX インスタンスに保存して実行する必要があるスクリプトを提供します。
<NS-SCRIPTS> タグ内に多くのスクリプトを含めることができます。各スクリプトは <SCRIPT> タグ内に含める必要があります。 各 <SCRIPT> セクションは1つのスクリプトに対応し、以下のサブタグを使用してスクリプトのすべての詳細を含みます。
-
<SCRIPT-NAME>:保存する必要があるスクリプトファイルの名前を示します。 -
<SCRIPT-CONTENT>:保存する必要があるファイルの内容を示します。 -
<SCRIPT-TARGET-LOCATION>:このファイルを保存する必要がある指定されたターゲットの場所を示します。ターゲットの場所が指定されていない場合、デフォルトでファイルまたはスクリプトは「/nsconfig」ディレクトリに保存されます。 -
<SCRIPT-NS-BOOTUP>:スクリプトを実行するために使用するコマンドを指定します。-
<SCRIPT-NS-BOOTUP>セクションを使用すると、そのセクションで提供されるコマンドは「/nsconfig/nsafter.sh」に保存され、パケットエンジンが起動した後、「nsafter.sh」の実行の一部としてコマンドが実行されます。 -
<SCRIPT-NS-BOOTUP>セクションを使用しない場合、スクリプトファイルは指定したターゲットの場所に保存されます。
-
例 1:
この例では、
<NS-SCRIPTS> タグには1つのスクリプト「script-1.sh」の詳細のみが含まれています。「script-1.sh」スクリプトは「/var」ディレクトリに保存されます。スクリプトには指定された内容が入力され、パケットエンジンが起動した後、「sh /var/script-1.sh」コマンドで実行されます。
前のスクリーンショットに示されている構成は、ここからコピーできます。
<NS-PRE-BOOT-CONFIG>
<NS-SCRIPTS>
<SCRIPT>
<SCRIPT-CONTENT>
#Shell script
echo "Running script 1" > /var/script-1.output
date >> /var/script-1.output
</SCRIPT-CONTENT>
<SCRIPT-NAME> script-1.sh </SCRIPT-NAME>
<SCRIPT-TARGET-LOCATION> /var/ </SCRIPT-TARGET-LOCATION>
<SCRIPT-NS-BOOTUP>sh /var/script-1.sh</SCRIPT-NS-BOOTUP>
</SCRIPT>
</NS-SCRIPTS>
</NS-PRE-BOOT-CONFIG>
次のスナップショットでは、「script-1.sh」スクリプトが「/var/」ディレクトリに保存されていることを確認できます。「Script-1.sh」スクリプトが実行され、出力ファイルが適切に作成されます。
例 2:
次の例では、
<NS-SCRIPTS> タグに 2 つのスクリプトの詳細が含まれています。
-
最初のスクリプトは「/var」ディレクトリに「script-1.sh」として保存されます。スクリプトには指定されたコンテンツが入力され、パケットエンジンが起動した後、「sh /var/script-1.sh」コマンドで実行されます。
-
2 番目のスクリプトは「/var」ディレクトリに「file-2.txt」として保存されます。このファイルには指定されたコンテンツが入力されます。ただし、起動実行コマンド
<SCRIPT-NS-BOOTUP>が指定されていないため、実行されません。
前のスクリーンショットに示されている構成は、ここからコピーできます。
<NS-PRE-BOOT-CONFIG>
<NS-SCRIPTS>
<SCRIPT>
<SCRIPT-CONTENT>
#Shell script
echo "Running script 1" > /var/script-1.output
date >> /var/script-1.output
</SCRIPT-CONTENT>
<SCRIPT-NAME> script-1.sh </SCRIPT-NAME>
<SCRIPT-TARGET-LOCATION> /var/ </SCRIPT-TARGET-LOCATION>
<SCRIPT-NS-BOOTUP>sh /var/script-1.sh</SCRIPT-NS-BOOTUP>
</SCRIPT>
<SCRIPT>
<SCRIPT-CONTENT>
This script has no execution point.
It will just be saved at the target location
NS Consumer module should consume this script/file
</SCRIPT-CONTENT>
<SCRIPT-NAME>file-2.txt</SCRIPT-NAME>
<SCRIPT-TARGET-LOCATION>/var/</SCRIPT-TARGET-LOCATION>
</SCRIPT>
</NS-SCRIPTS>
</NS-PRE-BOOT-CONFIG>
次のスナップショットでは、script-1.sh と file-2.txt が「/var/」ディレクトリに作成されていることを確認できます。Script-1.sh が実行され、出力ファイルが適切に作成されます。
ライセンス
<NS-LICENSE-CONFIG> タグを使用して、VPX インスタンスの起動時に NetScaler プールライセンスを適用します。<NS-LICENSE-CONFIG> セクション内の <LICENSE-COMMANDS> タグを使用して、プールライセンスコマンドを指定します。これらのコマンドは構文的に有効である必要があります。
標準のプールライセンスコマンドを使用して、
<LICENSE-COMMANDS> セクションでライセンスタイプ、容量、ライセンスサーバーなどのプールライセンスの詳細を指定できます。詳細については、「NetScaler プール容量ライセンスの構成」を参照してください。
<NS-LICENSE-CONFIG> を適用すると、VPX は起動時に要求されたエディションで起動し、VPX はライセンスサーバーから構成されたライセンスをチェックアウトしようとします。
-
ライセンスのチェックアウトが成功すると、構成された帯域幅が VPX に適用されます。
-
ライセンスのチェックアウトが失敗した場合、ライセンスはライセンスサーバーから約 10 ~ 12 分以内に取得されません。その結果、システムは再起動し、ライセンスのない状態になります。
例:
以下の例では、
<NS-LICENSE-CONFIG>を適用した後、VPXは起動時にPremiumエディションで起動し、ライセンスサーバー (10.102.38.214) から構成済みのライセンスをチェックアウトしようとします。
ライセンスコマンド(/en-us/vpx/media/license-commands.png)
前のスクリーンショットに示されている構成は、ここからコピーできます。
<NS-PRE-BOOT-CONFIG>
<NS-LICENSE-CONFIG>
<LICENSE-COMMANDS>
add ns licenseserver 10.102.38.214 -port 2800
set ns capacity -unit gbps -bandwidth 3 edition platinum
</LICENSE-COMMANDS>
</NS-LICENSE-CONFIG>
</NS-PRE-BOOT-CONFIG>
以下の図に示すように、「show license server」コマンドを実行して、ライセンスサーバー (10.102.38.214) がVPXに追加されていることを確認できます。
ライセンスサーバーの表示(/en-us/vpx/media/show-license-server.png)
ブートストラップ
カスタムブートストラップ情報を提供するには、
<NS-BOOTSTRAP>タグを使用します。<NS-BOOTSTRAP>セクション内で<SKIP-DEFAULT-BOOTSTRAP>と<NEW-BOOTSTRAP-SEQUENCE>タグを使用できます。このセクションは、NetScalerアプライアンスにデフォルトのブートストラップを回避するかどうかを通知します。デフォルトのブートストラップが回避される場合、このセクションでは新しいブートストラップシーケンスを提供するオプションが提供されます。
デフォルトのブートストラップ構成
NetScalerアプライアンスのデフォルトのブートストラップ構成は、以下のインターフェース割り当てに従います。
-
Eth0 - 特定のNSIPアドレスを持つ管理インターフェース。
-
Eth1 - 特定のVIPアドレスを持つクライアント向けインターフェース。
-
Eth2 - 特定のSNIPアドレスを持つサーバー向けインターフェース。
ブートストラップ構成のカスタマイズ
デフォルトのブートストラップシーケンスをスキップし、NetScaler VPXインスタンスに新しいブートストラップシーケンスを提供できます。カスタムブートストラップ情報を提供するには、
<NS-BOOTSTRAP>タグを使用します。たとえば、管理インターフェース (NSIP)、クライアント向けインターフェース (VIP)、およびサーバー向けインターフェース (SNIP) が常に特定の順序で提供されるデフォルトのブートストラップを変更できます。
以下の表は、
<SKIP-DEFAULT-BOOTSTRAP>と<NEW-BOOTSTRAP-SEQUENCE>タグに許可されている異なる値でのブートストラップ動作を示しています。
SKIP-DEFAULT-BOOTSTRAP |
NEW-BOOTSTRAP-SEQUENCE |
ブートストラップ動作 |
|---|---|---|
| はい | はい | デフォルトのブートストラップ動作はスキップされ、<NS-BOOTSTRAP>セクションで提供される新しいカスタムブートストラップシーケンスが実行されます。 |
| はい | いいえ | デフォルトのブートストラップ動作はスキップされます。<NS-CONFIG>セクションで提供されるブートストラップコマンドが実行されます。 |
ブートストラップ構成は、次の3つの方法でカスタマイズできます。
-
インターフェースの詳細のみを提供する
-
インターフェースの詳細をIPアドレスとサブネットマスクとともに提供する
-
<NS-CONFIG>セクションでブートストラップ関連コマンドを提供する
方法1:インターフェースの詳細のみを指定するカスタムブートストラップ
管理インターフェース、クライアント向けインターフェース、およびサーバー向けインターフェースを指定しますが、それらのIPアドレスとサブネットマスクは指定しません。IPアドレスとサブネットマスクは、クラウドインフラストラクチャを照会することによって設定されます。
AWS のカスタムブートストラップの例
以下の例に示すように、カスタムブートストラップシーケンスを提供します。詳細については、「クラウドインスタンスでプレブートユーザーデータを提供する方法」を参照してください。Eth1 インターフェイスは管理インターフェイス (NSIP) として、Eth0 インターフェイスはクライアントインターフェイス (VIP) として、Eth2 インターフェイスはサーバーインターフェイス (SNIP) として割り当てられます。
<NS-BOOTSTRAP> セクションには、インターフェイスの詳細のみが含まれており、IP アドレスとサブネットマスクの詳細は含まれていません。
VM インスタンスが作成された後、AWS ポータルで、ネットワークインターフェイスのプロパティを次のように確認できます。
-
AWS ポータル > EC2 インスタンスに移動し、カスタムブートストラップ情報を提供して作成したインスタンスを選択します。
-
説明タブで、以下の図に示すように、各ネットワークインターフェイスのプロパティを確認できます。


ADC CLIで
show nsipコマンドを実行し、ADC アプライアンスの初回起動時に NetScaler VPX インスタンスに適用されたネットワークインターフェイスを確認できます。
Azure のカスタムブートストラップの例
以下の例に示すように、カスタムブートストラップシーケンスを提供します。詳細については、「クラウドインスタンスでプレブートユーザーデータを提供する方法」を参照してください。Eth2 インターフェイスは管理インターフェイス (NSIP) として、Eth1 インターフェイスはクライアントインターフェイス (VIP) として、Eth0 インターフェイスはサーバーインターフェイス (SNIP) として割り当てられます。
<NS-BOOTSTRAP> セクションには、インターフェイスの詳細のみが含まれており、IP アドレスとサブネットマスクの詳細は含まれていません。
NetScaler VPX インスタンスが 3 つのネットワークインターフェイスで作成されていることがわかります。Azure ポータル > VM インスタンス > ネットワークに移動し、以下の図に示すように、3 つの NIC のネットワークプロパティを確認します。


ADC CLIで"show nsip"コマンドを実行し、
<NS-BOOTSTRAP>セクションで指定された新しいブートストラップシーケンスが適用されていることを確認できます。"show route"コマンドを実行して、サブネットマスクを確認できます。
GCPのカスタムブートストラップの例
カスタムブートストラップシーケンスは、次の例に示すように指定します。詳細については、クラウドインスタンスでプレブートユーザーデータを提供する方法を参照してください。Eth1インターフェースは管理インターフェース (NSIP) として、Eth0インターフェースはクライアントインターフェース (VIP) として、Eth2インターフェースはサーバーインターフェース (SNIP) として割り当てられます。
<NS-BOOTSTRAP>セクションには、インターフェースの詳細のみが含まれており、IPアドレスとサブネットマスクの詳細は含まれていません。
GCPポータルでVMインスタンスが作成された後、次のようにネットワークインターフェースのプロパティを確認できます。
-
カスタムブートストラップ情報を提供して作成したインスタンスを選択します。
-
ネットワークインターフェースのプロパティに移動し、次のようにNICの詳細を確認します。
ADC CLIで
show nsipコマンドを実行し、ADCアプライアンスの初回起動時にNetScaler VPXインスタンスに適用されたネットワークインターフェースを確認できます。
方法2:インターフェース、IPアドレス、およびサブネットマスクを指定することによるカスタムブートストラップ
管理、クライアント向け、サーバー向けインターフェースと、それらのIPアドレスおよびサブネットマスクを指定します。
AWSのカスタムブートストラップの例
次の例では、デフォルトのブートストラップをスキップし、NetScalerアプライアンスの新しいブートストラップシーケンスを実行します。新しいブートストラップシーケンスには、以下の詳細を指定します。
-
管理インターフェース: インターフェース - Eth1、NSIP - 172.31.52.88、サブネットマスク - 255.255.240.0
-
クライアント向けインターフェース: インターフェース - Eth0、VIP - 172.31.5.155、サブネットマスク - 255.255.240.0。
-
サーバー向けインターフェース: インターフェース - Eth2、SNIP - 172.31.76.177、サブネットマスク - 255.255.240.0。
ADC CLIで
show nsipコマンドを実行し、<NS-BOOTSTRAP>セクションで指定された新しいブートストラップシーケンスが適用されていることを確認できます。「show route」コマンドを実行して、サブネットマスクを確認できます。
Azureのカスタムブートストラップの例
次の例では、ADCの新しいブートストラップシーケンスが示されており、デフォルトのブートストラップはスキップされます。インターフェースの詳細とIPアドレスおよびサブネットマスクを次のように指定します。
-
管理インターフェース (eth2)、NSIP (172.27.2.53)、およびサブネットマスク (255.255.255.0)
-
クライアント向けインターフェース (eth1)、VIP (172.27.1.53)、およびサブネットマスク (255.255.255.0)
-
サーバー向けインターフェース (eth0)、SNIP (172.27.0.53)、およびサブネットマスク (255.255.255.0)
NetScaler VPXインスタンスが3つのネットワークインターフェースで作成されていることがわかります。Azure portal > VM instance > Networking に移動し、以下の図に示すように、3つのNICのネットワークプロパティを確認します。
Azure管理インターフェース method2(/en-us/vpx/media/azure-mgmt-method2.png)
Azureクライアントインターフェース method2(/en-us/vpx/media/azure-client-method2.png)
Azureサーバーインターフェース method2(/en-us/vpx/media/azure-server-method2.png)
ADC CLIで
show nsipコマンドを実行し、<NS-BOOTSTRAP>セクションで指定された新しいブートストラップシーケンスが適用されていることを確認できます。「show route」コマンドを実行して、サブネットマスクを確認できます。
Azure nsip メソッド2の表示(/en-us/vpx/media/azure-show-nsip-method2.png)
GCPのカスタムブートストラップの例
次の例では、ADCの新しいブートストラップシーケンスが記述されており、デフォルトのブートストラップはスキップされます。インターフェースの詳細とIPアドレスおよびサブネットマスクを次のように指定します。
-
管理インターフェース (eth2)、NSIP (10.128.4.31)、およびサブネットマスク (255.255.255.0)
-
クライアント向けインターフェース (eth1)、VIP (10.128.0.43)、およびサブネットマスク (255.255.255.0)
-
サーバー向けインターフェース (eth0)、SNIP (10.160.0.75)、およびサブネットマスク (255.255.255.0)
GCP メソッド2の表示(/en-us/vpx/media/gcp-method2.png)
カスタムブートストラップを使用してGCPポータルでVMインスタンスが作成された後、ネットワークインターフェースのプロパティを次のように確認できます。
-
カスタムブートストラップ情報を提供して作成したインスタンスを選択します。
-
ネットワークインターフェースのプロパティに移動し、NICの詳細を次のように確認します。
「GCP NICの詳細」(/en-us/vpx/media/gcp-nic-method2.png)
ADC CLIで
show nsipコマンドを実行し、<NS-BOOTSTRAP>セクションで指定された新しいブートストラップシーケンスが適用されていることを確認できます。サブネットマスクを確認するには、「show route」コマンドを実行できます。
「GCP show nsipコマンド」(/en-us/vpx/media/gcp-show-nsip-method2.png)
方法3:<NS-CONFIG>セクションでブートストラップ関連コマンドを提供するカスタムブートストラップ
<NS-CONFIG>セクションでブートストラップ関連コマンドを提供できます。<NS-BOOTSTRAP>セクションでは、<NS-CONFIG>セクションでブートストラップコマンドを実行するために、<NEW-BOOTSTRAP-SEQUENCE>を「No」と指定する必要があります。また、NSIP、デフォルトルート、およびNSVLANを割り当てるコマンドも提供する必要があります。さらに、使用するクラウドに関連するコマンドも提供してください。
カスタムブートストラップを提供する前に、クラウドインフラストラクチャが特定のインターフェイス構成をサポートしていることを確認してください。
AWSのカスタムブートストラップの例
この例では、ブートストラップ関連コマンドは
<NS-CONFIG>セクションで提供されます。<NS-BOOTSTRAP>セクションは、デフォルトのブートストラップがスキップされ、<NS-CONFIG>セクションで提供されたカスタムブートストラップ情報が実行されることを示しています。また、NSIPを作成し、デフォルトルートを追加し、NSVLANを追加するコマンドも提供する必要があります。
「AWSカスタムブートストラップ方法3」(/en-us/vpx/media/aws-custom-bootstrap-method3.png)
前のスクリーンショットに示されている構成は、ここからコピーできます。
<NS-PRE-BOOT-CONFIG>
<NS-CONFIG>
set ns config -IPAddress 172.31.52.88 -netmask 255.255.240.0
add route 0.0.0.0 0.0.0.0 172.31.48.1
set ns config -nsvlan 10 -ifnum 1/2 -tagged NO
add route 172.31.0.2 255.255.255.255 172.31.48.1
enable ns feature WL SP LB RESPONDER
add server 5.0.0.201 5.0.0.201
add service preboot_s5_201 5.0.0.201 HTTP 80 -gslb NONE -maxClient 0 -maxReq 0 -cip DISABLED -usip NO - useproxyport YES -sp OFF -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP NO
add lb vserver preboot_v4_101 HTTP 4.0.0.101 80 -persistenceType NONE -cltTimeout 180
</NS-CONFIG>
<NS-BOOTSTRAP>
<SKIP-DEFAULT-BOOTSTRAP>YES</SKIP-DEFAULT-BOOTSTRAP>
<NEW-BOOTSTRAP-SEQUENCE> NO </NEW-BOOTSTRAP-SEQUENCE>
</NS-BOOTSTRAP>
</NS-PRE-BOOT-CONFIG>
VMインスタンスが作成された後、AWSポータルで、ネットワークインターフェイスのプロパティを次のように確認できます。
-
AWS Portal > EC2 instancesに移動し、カスタムブートストラップ情報を提供して作成したインスタンスを選択します。
-
Descriptionタブで、次の図に示すように、各ネットワークインターフェイスのプロパティを確認できます。
「AWS eth1 方法3」(/en-us/vpx/media/aws-eth1-method3.png)
「AWS eth0 方法3」(/en-us/vpx/media/aws-eth0-method3.png)
ADC CLIで
show nsipコマンドを実行し、ADCアプライアンスの初回起動時にNetScaler VPXインスタンスに適用されたネットワークインターフェースを確認できます。
Azure のカスタムブートストラップの例
この例では、ブートストラップ関連コマンドは
<NS-CONFIG>セクションで提供されています。<NS-BOOTSTRAP>セクションは、デフォルトのブートストラップがスキップされ、<NS-CONFIG>セクションで提供されたカスタムブートストラップ情報が実行されることを示しています。
注:
Azure クラウドの場合、インスタンスメタデータサーバー (IMDS) および DNS サーバーは、プライマリインターフェース (Eth0) を介してのみアクセス可能です。したがって、Eth0 インターフェースが管理インターフェース (NSIP) として使用されていない場合でも、IMDS または DNS アクセスが機能するためには、Eth0 インターフェースを少なくとも SNIP として構成する必要があります。Eth0 のゲートウェイを介した IMDS エンドポイント (169.254.169.254) および DNS エンドポイント (168.63.129.16) へのルートも追加する必要があります。

<NS-PRE-BOOT-CONFIG>
<NS-CONFIG>
set ns config -IPAddress 172.27.2.61 -netmask 255.255.255.0
add route 0.0.0.0 0.0.0.0 172.27.2.1
set ns config -nsvlan 10 -ifnum 1/2 -tagged NO
add ns ip 172.27.0.61 255.255.255.0 -type SNIP
add route 169.254.169.254 255.255.255.255 172.27.0.1
add route 168.63.129.16 255.255.255.255 172.27.0.1
add vlan 5
bind vlan 5 -IPAddress 5.0.0.1 255.255.255.0
enable ns feature WL SP LB RESPONDER
add server 5.0.0.201 5.0.0.201
add service preboot_s5_201 5.0.0.201 HTTP 80 -gslb NONE -maxClient 0 -maxReq 0 -cip DISABLED -usip NO -useproxyport YES -sp OFF -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP NO
add lb vserver preboot_v4_101 HTTP 4.0.0.101 80 -persistenceType NONE -cltTimeout 180
</NS-CONFIG>
<NS-BOOTSTRAP>
<SKIP-DEFAULT-BOOTSTRAP>YES</SKIP-DEFAULT-BOOTSTRAP>
<NEW-BOOTSTRAP-SEQUENCE> NO </NEW-BOOTSTRAP-SEQUENCE>
</NS-BOOTSTRAP>
</NS-PRE-BOOT-CONFIG>
NetScaler VPX インスタンスが3つのネットワークインターフェースで作成されていることがわかります。Azure portal > VM instance > Networking に移動し、以下の図に示すように、3つの NIC のネットワークプロパティを確認します。


ADC CLI で
show nsipコマンドを実行し、<NS-BOOTSTRAP>セクションで指定された新しいブートストラップシーケンスが適用されていることを確認できます。「show route」コマンドを実行して、サブネットマスクを確認できます。
GCP のカスタムブートストラップの例
この例では、ブートストラップ関連のコマンドは
<NS-CONFIG>セクションに記載されています。<NS-BOOTSTRAP>セクションは、デフォルトのブートストラップがスキップされ、<NS-CONFIG>セクションで提供されたカスタムブートストラップ情報が適用されることを示しています。
前のスクリーンショットに示されている構成は、ここからコピーできます。
<NS-PRE-BOOT-CONFIG>
<NS-CONFIG>
set ns config -IPAddress 10.128.0.2 -netmask 255.255.255.0
add route 0.0.0.0 0.0.0.0 10.128.0.1
set ns config -nsvlan 10 -ifnum 1/1 -tagged NO
enable ns feature WL SP LB RESPONDER
add server 5.0.0.201 5.0.0.201
add service preboot_s5_201 5.0.0.201 HTTP 80 -gslb NONE -maxClient 0 -maxReq 0 -cip DISABLED -usip NO -useproxyport YES -sp OFF -cltTimeout 180 -svrTimeout 360 -CKA NO -TCPB NO -CMP NO
add lb vserver preboot_v4_101 HTTP 4.0.0.101 80 -persistenceType NONE -cltTimeout 180
</NS-CONFIG>
<NS-BOOTSTRAP>
<SKIP-DEFAULT-BOOTSTRAP>YES</SKIP-DEFAULT-BOOTSTRAP>
<NEW-BOOTSTRAP-SEQUENCE> NO </NEW-BOOTSTRAP-SEQUENCE>
</NS-BOOTSTRAP>
</NS-PRE-BOOT-CONFIG>
カスタムブートストラップを使用してGCPポータルでVMインスタンスが作成された後、ネットワークインターフェースのプロパティを次のように確認できます。
-
カスタムブートストラップ情報を提供して作成したインスタンスを選択します。
-
ネットワークインターフェースのプロパティに移動し、図に示されているNICの詳細を確認します。
ADC CLIで
show nsipコマンドを実行し、前の<NS-CONFIG>セクションで提供された構成がADCアプライアンスの初回起動時に適用されていることを確認できます。
AWSおよびAzureにおけるNICの接続と切断の影響
AWSとAzureでは、ネットワークインターフェースをインスタンスに接続したり、インスタンスから切断したりするオプションが提供されています。インターフェースの接続または切断により、インターフェースの位置が変更される可能性があります。したがって、CitrixはNetScaler VPXインスタンスからインターフェースを切断しないことを推奨します。カスタムブートストラップが構成されているときにインターフェースを切断または接続すると、NetScaler VPXインスタンスは、新しく利用可能になったインターフェースのプライマリIPを管理インターフェースの位置にNSIPとして再割り当てします。切断したインターフェースの後に利用可能なインターフェースがない場合、最初のインターフェースがNetScaler VPXインスタンスの管理インターフェースになります。
例えば、NetScaler VPXインスタンスが3つのインターフェース(Eth0 (SNIP)、Eth1 (NSIP)、Eth2 (VIP))で起動されたとします。管理インターフェースであるEth1インターフェースをインスタンスから切断すると、ADCは次に利用可能なインターフェース(Eth2)を管理インターフェースとして構成します。その結果、NetScaler VPXインスタンスはEth2インターフェースのプライマリIPを介して引き続きアクセスされます。Eth2も利用できない場合、残りのインターフェース(Eth0)が管理インターフェースになります。したがって、NetScaler VPXインスタンスへのアクセスは継続されます。
インターフェースの割り当てを次のように変更して考えてみましょう: Eth0 (SNIP)、Eth1 (VIP)、Eth2 (NSIP)。Eth2 (NSIP) を切断した場合、Eth2の後に新しいインターフェースが利用できないため、最初のインターフェース (Eth0) が管理インターフェースになります。