ADC

GCP上のNetScaler VPXインスタンスのVIPスケーリングサポート

NetScalerアプライアンスはクライアントとサーバーの間に設置され、クライアント要求とサーバー応答はNetScalerアプライアンスを経由します。一般的な設置では、アプライアンス上で構成された仮想サーバーによって接続ポイントが提供され、クライアントはこれを使用してアプライアンスの背後にあるアプリケーションにアクセスします。展開に必要なパブリック仮想 IP(VIP)アドレスの数は、ケースバイケースで異なります。

GCP アーキテクチャでは、インスタンスの各インターフェイスが異なる VPC に接続されるように制限します。GCP 上の VPC はサブネットの集合であり、各サブネットはリージョンのゾーンにまたがることができます。さらに、GCPには次の制限があります。

  • パブリック IP アドレス数と NIC の数が 1:1 でマッピングされています。NICに割り当てることができるパブリックIPアドレスは1つだけです。
  • 大容量のインスタンスタイプには最大 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 プロジェクトで クラウドリソースマネージャー 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アドレスを構成する

  1. Google Cloud コンソールで、[ VM インスタンス ] ページに移動します。
  2. 新しい VM インスタンスを作成するか、既存のインスタンスを使用します。
  3. インスタンス名をクリックします。VM インスタンスの詳細ページで 、[ 編集] をクリックします。
  4. 次のように入力して、 カスタムメタデータを更新します
    • キー = VIP
    • 値 = 次のJSON形式で値を指定します。

      { 「外部予約IPの名前」: [プロトコルのリスト]、 }

    GCPは次のプロトコルをサポートしています。

    • AH
    • ESP
    • ICMP
    • SCT
    • TCP
    • UDP

    カスタムメタデータ

    詳細については、「 カスタムメタデータ」を参照してください。

    カスタムメタデータの例:

    { “external-ip1-name”:[“TCP”, “UDP”], “external-ip2-name”:[“ICMP”, “AH”] }

    この例では、NetScaler VPXインスタンスは、IP、プロトコルのペアごとに1つの転送ルールを内部で作成します。メタデータエントリは、転送ルールにマッピングされます。この例では、メタデータエントリに対して作成される転送ルールの数を把握するのに役立ちます。

    次の 4 つの転送ルールが作成されます。

    1. 外部 ip1 名とTCP
    2. 外部 ip1 名とUDP
    3. external-ip2-name と ICMP
    4. external-ip2-name と AH

    注:

    HA モードでは、プライマリインスタンスにのみカスタムメタデータを追加する必要があります。フェールオーバー時に、カスタムメタデータが新しいプライマリに同期されます。

  5. [保存] をクリックします。

NetScaler VPXインスタンスで外部IPアドレスを使用した負荷分散仮想サーバーのセットアップ

ステップ 1: 負荷分散仮想サーバーを追加します。

  1. [設定] > [トラフィック管理] > [負荷分散] > [仮想サーバー] > [追加]に移動します。

    仮想サーバー

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

    LB 仮想サーバー

ステップ 2: サービスまたはサービスグループを追加します。

  1. [設定] > [トラフィック管理] > [負荷分散] > [サービス] >[追加]に移動します。
  2. サービス名、IPアドレス、プロトコル、およびポートに必要な値を追加し、[ OK]をクリックします。

    LB サービス

ステップ 3: サービスまたはサービスグループを負荷分散仮想サーバーにバインドします。

  1. [設定] > [トラフィック管理] > [負荷分散] > [仮想サーバー]に移動します。
  2. 手順1で構成した負荷分散仮想サーバーを選択し、[ 編集]をクリックします。
  3. [ サービスとサービスグループ ] ページで、[ 負荷分散仮想サーバーサービスのバインドなし] をクリックします。

    負荷分散仮想サーバーサービスバインドなし

  4. 手順3で構成したサービスを選択し、[ バインド]をクリックします。

    サービスバインディング

  5. 構成を保存します。
GCP上のNetScaler VPXインスタンスのVIPスケーリングサポート