NetScaler VPX

Google Cloud Platform でプライベート IP アドレスを持つ VPX 高可用性ペアを展開する

GCP でプライベート IP アドレスを使用して VPX 高可用性ペアを展開できます。クライアント IP (VIP) は、プライマリノードでエイリアス IP アドレスとして構成する必要があります。フェイルオーバーが発生すると、クライアント IP アドレスはセカンダリノードに移動され、トラフィックが再開されます。

高可用性の詳細については、高可用性 を参照してください。

開始する前に

  • Google Cloud Platform に NetScaler VPX インスタンスを展開する に記載されている制限事項、ハードウェア要件、注意事項をお読みください。この情報は高可用性展開にも適用されます。
  • GCP プロジェクトで クラウド リソース マネージャー API を有効にします。
  • インスタンスの作成時に、すべての Cloud API へのフルアクセスを許可します。 Full access cloud API

  • GCP サービスアカウントに次の IAM 権限があることを確認してください。

     REQUIRED_INSTANCE_IAM_PERMS = [
     "compute.forwardingRules.list",
     "compute.forwardingRules.setTarget",
     "compute.instances.setMetadata",
     "compute.instances.get",
     "compute.instances.list",
     "compute.instances.updateNetworkInterface",
     "compute.targetInstances.list",
     "compute.targetInstances.use",
     "compute.targetInstances.create",
     "compute.zones.list",
     "compute.zoneOperations.get",
     ]
     <!--NeedCopy-->
    
  • 管理インターフェイス以外のインターフェイスで外部 IP アドレスを構成している場合は、GCP サービスアカウントに次の追加の IAM 権限があることを確認してください。

     REQUIRED_INSTANCE_IAM_PERMS = [
     "compute.addresses.use"
     "compute.instances.addAccessConfig",
     "compute.instances.deleteAccessConfig",
     "compute.networks.useExternalIp",
     "compute.subnetworks.useExternalIp",
     ]
     <!--NeedCopy-->
    
  • VM にインターネットアクセスがない場合は、管理サブネットで Private Google Access を有効にする必要があります。 Private google access

  • プライマリノードで GCP 転送ルールを構成している場合は、フェイルオーバー時に新しいプライマリに更新するために、GCP 上の VPX 高可用性ペアに対する転送ルールサポート に記載されている制限事項と要件をお読みください。

グーグル クラウド プラットフォーム で VPX 高可用性ペアを展開する方法

高可用性展開の手順の概要を次に示します。

  1. 同じリージョンに VPC ネットワークを作成します。例: Asia-east。
  2. 同じリージョンに 2 つの VPX インスタンス (プライマリノードとセカンダリノード) を作成します。これらは同じゾーンまたは異なるゾーンに配置できます。例: Asia east-1a と Asia east-Ib。
  3. NetScaler GUI または ADC CLI コマンドを使用して、両方のインスタンスで高可用性設定を構成します。

ステップ 1. VPC ネットワークを作成する

要件に基づいて VPC ネットワークを作成します。Citrix® は、管理 NIC、クライアント NIC、およびサーバー NIC に関連付けるために、3 つの VPC ネットワークを作成することを推奨します。

VPC ネットワークを作成するには、次の手順を実行します。

  1. Google コンソール > ネットワーキング > VPC ネットワーク > VPC ネットワークを作成 にログオンします。
  2. 必須フィールドに入力し、作成 をクリックします。

詳細については、Google Cloud Platform に NetScaler VPX インスタンスを展開する の「VPC ネットワークを作成する」セクションを参照してください。

ステップ 2. 2 つの VPX インスタンスを作成する

シナリオ: 複数の NIC、複数の IP を持つスタンドアロン VPX インスタンスを展開する に記載されている手順に従って、2 つの VPX インスタンスを作成します。

重要:

プライマリノードにクライアントエイリアス IP アドレスを割り当てます。VIP を構成するために VPX インスタンスの内部 IP アドレスを使用しないでください。

クライアントエイリアス IP アドレスを作成するには、次の手順を実行します。

  1. VM インスタンスに移動し、編集 をクリックします。

  2. ネットワークインターフェース ウィンドウで、クライアントインターフェースを編集します。

  3. エイリアス IP 範囲 フィールドに、クライアントエイリアス IP アドレスを入力します。

クライアントエイリアスIPアドレス(/ja-jp/vpx/media/client-alias-ip-address.png)

ネットワークインターフェース(/ja-jp/vpx/media/network-interface-client.png)

フェイルオーバー後、古いプライマリが新しいセカンダリになると、エイリアスIPアドレスは古いプライマリから移動し、新しいプライマリにアタッチされます。

VPXインスタンスを設定した後、仮想IP (VIP) およびサブネットIP (SNIP) アドレスを設定できます。詳細については、「NetScalerが所有するIPアドレスの構成」を参照してください。

ステップ3. 高可用性を構成する

Google Cloud Platformでインスタンスを作成した後、NetScaler GUIまたはCLIを使用して高可用性を構成できます。

GUIを使用して高可用性を構成する

ステップ1. 両方のノードでINC有効モードで高可用性を設定します。

プライマリノードで、次の手順を実行します。

  1. ユーザー名nsrootと、GCPコンソールからのノードのインスタンスIDをパスワードとしてインスタンスにログオンします。
  2. 設定 > システム > 高可用性 > ノード」に移動し、「追加」をクリックします。
  3. Remote Node IP addressフィールドに、セカンダリノードの管理NICのプライベートIPアドレスを入力します。
  4. 自己ノードでINC (独立ネットワーク構成) モードを有効にする」チェックボックスをオンにします。
  5. Createをクリックします。

セカンダリノードで、次の手順を実行します。

  1. インスタンスにユーザー名 nsroot と、GCP コンソールから取得したノードのインスタンス ID をパスワードとして使用してログオンします。
  2. 設定 > システム > 高可用性 > ノード」に移動し、「追加」をクリックします。
  3. Remote Node IP address フィールドに、プライマリノードの管理 NIC のプライベート IP アドレスを入力します。
  4. 自己ノードで INC (独立ネットワーク構成) モードを有効にする」チェックボックスをオンにします。
  5. Create をクリックします。

続行する前に、Nodes ページでセカンダリノードの同期状態が SUCCESS と表示されていることを確認してください。

セカンダリノードの同期状態

注:

セカンダリノードがプライマリノードと同期されると、セカンダリノードはプライマリノードと同じログオン資格情報を持つようになります。

ステップ 2. 両方のノードに仮想 IP アドレスとサブネット IP アドレスを追加します。

プライマリノードで、次の手順を実行します。

  1. システム > ネットワーク > IPアドレス > IPv4アドレス に移動し、追加 をクリックします。
  2. クライアントエイリアス IP (VIP) アドレスを作成するには:
    1. VM インスタンスでクライアントサブネット用に構成されたエイリアス IP アドレスとネットマスクを入力します。
    2. IP Type フィールドで、ドロップダウンメニューから Virtual IP を選択します。
    3. 作成」をクリックします。
  3. サーバーIP (SNIP) アドレスを作成するには:
    1. プライマリインスタンスのサーバー向けインターフェースの内部IPアドレスと、サーバーサブネット用に構成されたネットマスクを入力します。
    2. IPタイプフィールドで、ドロップダウンメニューからサブネットIPを選択します。
    3. 作成」をクリックします。

    プライマリのクライアントおよびサーバーIPアドレスを作成(/ja-jp/vpx/media/create-ipv4-address.png)

セカンダリノードで、次の手順を実行します。

  1. システム > ネットワーク > IP > IPv4に移動し、追加をクリックします。
  2. クライアントエイリアスIP (VIP) アドレスを作成するには:
    1. プライマリVMインスタンスのクライアントサブネット用に構成されたエイリアスIPアドレスとネットマスクを入力します。
    2. IPタイプフィールドで、ドロップダウンメニューからサブネットIPを選択します。
    3. 作成」をクリックします。
  3. サーバーIP (SNIP) アドレスを作成するには:
    1. セカンダリインスタンスのサーバー向けインターフェースの内部IPアドレスと、サーバーサブネット用に構成されたネットマスクを入力します。
    2. IPタイプフィールドで、ドロップダウンメニューからサブネットIPを選択します。
    3. 作成」をクリックします。

    「セカンダリのクライアントおよびサーバーIPアドレスを作成」(/ja-jp/vpx/media/create-ipv4-address-secondary.png)

ステップ 3」。プライマリノードに負荷分散仮想サーバーを追加します。

  1. 設定 > トラフィック管理 > ロードバランシング > 仮想サーバー > 追加」に移動します。
  2. 名前、プロトコル、IPアドレスタイプ (IPアドレス)、IPアドレス (プライマリクライアントエイリアスIPアドレス)、およびポートに必要な値を入力し、「OK」をクリックします。

    「LB仮想サーバークライアントエイリアス」(/ja-jp/vpx/media/lb-vserver-client-alias.png)

ステップ 4」。プライマリノードにサービスまたはサービスグループを追加します。

  1. 設定 > トラフィック管理 > ロードバランシング > サービス > 追加」に移動します。
  2. サービス名、IPアドレス、プロトコル、およびポートに必要な値を入力し、「OK」をクリックします。

ステップ 5」。プライマリノードで、サービスまたはサービスグループを負荷分散仮想サーバーにバインドします。

  1. 設定 > トラフィック管理 > ロードバランシング > 仮想サーバー」に移動します。
  2. ステップ 3」で構成した負荷分散仮想サーバーを選択し、「編集」をクリックします。
  3. サービスとサービスグループ」タブで、「負荷分散仮想サーバーサービスバインディングなし」をクリックします。
  4. ステップ 4」で構成したサービスを選択し、「バインド」をクリックします。

ステップ 5」。構成を保存します。

強制フェイルオーバー後、セカンダリが新しいプライマリになります。古いプライマリからのクライアントエイリアス IP (VIP) とサーバーエイリアス IP (SNIP) は新しいプライマリに移動します。

CLI を使用して高可用性を構成する

ステップ 1. NetScaler CLI を使用して、両方のインスタンスで INC Enabled モードで高可用性を設定します。

プライマリノードで、次のコマンドを入力します。

add ha node 1 <sec_ip> -inc ENABLED
<!--NeedCopy-->

セカンダリノードで、次のコマンドを入力します。

add ha node 1 <prim_ip> -inc ENABLED
<!--NeedCopy-->

sec_ip は、セカンダリノードの管理 NIC の内部 IP アドレスを指します。

prim_ip は、プライマリノードの管理 NIC の内部 IP アドレスを指します。

ステップ 2. 両方のノードに VIP と SNIP を追加します。

プライマリノードで次のコマンドを入力します。

add ns ip <primary_client_alias_ip> <subnet> -type VIP

<!--NeedCopy-->

注:

VM インスタンスでクライアントサブネット用に構成されたエイリアス IP アドレスとネットマスクを入力します。

add ns ip <primary_snip> <subnet> -type SNIP
<!--NeedCopy-->

primary_snip は、プライマリインスタンスのサーバー向けインターフェイスの内部 IP アドレスを指します。

セカンダリノードで次のコマンドを入力します。

add ns ip <primary_client_alias_ip> <subnet> -type VIP
<!--NeedCopy-->

注:

プライマリ VM インスタンスでクライアントサブネット用に構成されたエイリアス IP アドレスとネットマスクを入力します。

add ns ip <secondary_snip> <subnet> -type SNIP
<!--NeedCopy-->

secondary_snip は、セカンダリインスタンスのサーバー側インターフェースの内部 IP アドレスを指します。

注:

VM インスタンスでサーバーサブネット用に構成された IP アドレスとネットマスクを入力します。

ステップ 3. プライマリノードに仮想サーバーを追加します。

次のコマンドを入力します。

add <server_type> vserver <vserver_name> <protocol> <primary_client_alias_ip> <port>
<!--NeedCopy-->

ステップ 4. プライマリノードにサービスまたはサービスグループを追加します。

次のコマンドを入力します。

add service <service_name> <service_ip_address> <protocol> <port>
<!--NeedCopy-->

ステップ 5. プライマリノードで、サービスまたはサービスグループをロードバランシング仮想サーバーにバインドします。

次のコマンドを入力します。

bind <server_type> vserver <vserver_name> <service_name>
<!--NeedCopy-->

注:

設定を保存するには、コマンド save config を入力します。そうしないと、インスタンスを再起動した後に設定が失われます。

Google Cloud Platform でプライベート IP アドレスを持つ VPX 高可用性ペアを展開する