GCP上のNetScaler VPXインスタンスにおけるVIPスケーリングのサポート
NetScalerアプライアンスはクライアントとサーバーの間に配置され、クライアントからのリクエストとサーバーからのレスポンスがそれを通過します。一般的なインストールでは、アプライアンスに構成された仮想サーバーが、クライアントがアプライアンスの背後にあるアプリケーションにアクセスするために使用する接続ポイントを提供します。デプロイメントに必要なパブリック仮想IP (VIP) アドレスの数は、ケースバイケースで異なります。
GCPアーキテクチャでは、インスタンス上の各インターフェースは異なるVPCに接続されるように制限されています。GCP上のVPCはサブネットの集合であり、各サブネットはリージョンのゾーンをまたいで展開できます。さらに、GCPは以下の制限を課しています。
- パブリックIPアドレスの数とNICの数は1対1でマッピングされます。1つのNICには1つのパブリックIPアドレスのみを割り当てることができます。
- より大容量のインスタンスタイプでは、最大8つのNICのみを接続できます。
例えば、n1-standard-2インスタンスは2つのNICしか持てず、追加できるパブリックVIPは2つに制限されます。詳細については、VPCリソースクォータを参照してください。
NetScaler VPXインスタンスでパブリック仮想IPアドレスのより高いスケールを実現するには、インスタンスのメタデータの一部としてVIPアドレスを構成できます。NetScaler VPXインスタンスは、GCPが提供する転送ルールを内部的に使用してVIPスケーリングを実現します。NetScaler VPXインスタンスは、構成されたVIPに高可用性も提供します。 メタデータの一部としてVIPアドレスを構成した後、転送ルールの作成に使用されるのと同じIPを使用してLB仮想サーバーを構成できます。したがって、転送ルールを使用することで、GCP上のNetScaler VPXインスタンスでパブリックVIPアドレスを使用する際のスケールに関する制限を緩和できます。
転送ルールの詳細については、転送ルール概要を参照してください。
HAの詳細については、高可用性を参照してください。
留意事項
- Googleは、仮想IP転送ルールごとに追加料金を課します。実際の費用は、作成されたエントリの数によって異なります。関連費用は、Googleの料金ドキュメントで確認できます。
- 転送ルールはパブリックVIPにのみ適用されます。デプロイメントでプライベートIPアドレスをVIPとして必要とする場合は、エイリアスIPアドレスを使用できます。
- 転送ルールは、LB仮想サーバーを必要とするプロトコルに対してのみ作成できます。VIPは、その場で作成、更新、または削除できます。同じVIPアドレスで異なるプロトコルを持つ新しいロードバランシング仮想サーバーを追加することもできます。
開始する前に
- NetScaler VPXインスタンスはGCPにデプロイされている必要があります。
-
外部IPアドレスは予約されている必要があります。詳細については、静的外部IPアドレスの予約を参照してください。
-
GCPサービスアカウントに次のIAM権限があることを確認してください。
REQUIRED_IAM_PERMS = [ "compute.addresses.list", "compute.addresses.get", "compute.addresses.use", "compute.forwardingRules.create", "compute.forwardingRules.delete", "compute.forwardingRules.get", "compute.forwardingRules.list", "compute.instances.use", "compute.subnetworks.use", "compute.targetInstances.create" "compute.targetInstances.get" "compute.targetInstances.use", ] <!--NeedCopy--> -
あなたのGCPプロジェクトでCloud Resource Manager APIを有効にしてください。
-
スタンドアロンVPXインスタンスでVIPスケーリングを使用する場合、GCPサービスアカウントに次のIAM権限があることを確認してください。
REQUIRED_IAM_PERMS = [ "compute.addresses.list", "compute.addresses.get", "compute.addresses.use", "compute.forwardingRules.create", "compute.forwardingRules.delete", "compute.forwardingRules.get", "compute.forwardingRules.list", "compute.instances.use", "compute.subnetworks.use", "compute.targetInstances.create", "compute.targetInstances.list", "compute.targetInstances.use", ] <!--NeedCopy--> -
高可用性モードでVIPスケーリングを使用する場合、GCPサービスアカウントに次のIAM権限があることを確認してください。
REQUIRED_IAM_PERMS = [ "compute.addresses.get", "compute.addresses.list", "compute.addresses.use", "compute.forwardingRules.create", "compute.forwardingRules.delete", "compute.forwardingRules.get", "compute.forwardingRules.list", "compute.forwardingRules.setTarget", "compute.instances.use", "compute.instances.get", "compute.instances.list", "compute.instances.setMetadata", "compute.subnetworks.use", "compute.targetInstances.create", "compute.targetInstances.list", "compute.targetInstances.use", "compute.zones.list", ] <!--NeedCopy-->注:
高可用性モードでは、サービスアカウントにオーナーまたは編集者のロールがない場合、サービスアカウントにサービスアカウントユーザーロールを追加する必要があります。
NetScaler VPXインスタンスでVIPスケーリング用の外部IPアドレスを構成する
- Google Cloud Consoleで、VMインスタンスページに移動します。
- 新しいVMインスタンスを作成するか、既存のインスタンスを使用します。
- インスタンス名をクリックします。VMインスタンスの詳細ページで、編集をクリックします。
- 次の情報を入力して、カスタムメタデータを更新します。
- キー = ブイアイピーエス
-
値 = 次のJSON形式で値を指定します。
{ “外部予約済みIPの名前”: [list of protocols], }
GCP は以下のプロトコルをサポートしています:
- AH
- ESP
- アイシーエムピー
- SCT
- TCP
- UDP

詳細については、カスタムメタデータを参照してください。
カスタムメタデータの例:
{ “外部IP1名”:[“TCP”, “UDP”], “外部IP2名”:[“ICMP”, “AH”] }
この例では、NetScaler VPXインスタンスは、IPとプロトコルのペアごとに1つの転送ルールを内部的に作成します。メタデータエントリは転送ルールにマッピングされます。この例は、メタデータエントリに対していくつの転送ルールが作成されるかを理解するのに役立ちます。
4つの転送ルールが次のように作成されます:
- エクスターナル-アイピー1-ネーム と TCP
- エクスターナル-アイピー1-ネーム と UDP
- 外部IP2の名前 と ICMP
- 外部IP2の名前 と AH
注:
HAモードでは、プライマリインスタンスにのみカスタムメタデータを追加する必要があります。フェイルオーバー時には、カスタムメタデータは新しいプライマリに同期されます。
- 保存をクリックします。
NetScaler VPXインスタンス上で外部IPアドレスを持つロードバランシング仮想サーバーの設定
ステップ1。ロードバランシング仮想サーバーを追加します。
-
構成 > トラフィック管理 > 負荷分散 > 仮想サーバー > 追加 に移動します。

-
名前、プロトコル、IPアドレスタイプ (IPアドレス)、IPアドレス (ADCにVIPとして追加される転送ルールの外部IPアドレス)、およびポートにそれぞれ必要な値を入力し、OKをクリックします。

ステップ2。サービスまたはサービスグループを追加します。
- 構成 > トラフィック管理 > 負荷分散 > サービス > 追加 に移動します。
-
サービス名、IPアドレス、プロトコル、およびポートにそれぞれ必要な値を入力し、OKをクリックします。

ステップ 3. サービスまたはサービスグループをロードバランシング仮想サーバーにバインドします。
- 構成 > トラフィック管理 > ロードバランシング > 仮想サーバー に移動します。
- ステップ 1 で構成されたロードバランシング仮想サーバーを選択し、編集 をクリックします。
-
サービスとサービスグループ ページで、ロードバランシング仮想サーバーサービスバインディングなし をクリックします。
ロードバランシング仮想サーバーサービスバインディングなし(/ja-jp/vpx/media/lb-service-binding.png)
-
ステップ 3 で構成されたサービスを選択し、バインド をクリックします。
サービスバインディング(/ja-jp/vpx/media/bind-service-citrix.png)
- 設定を保存します。