異なるAWSゾーンにプライベートIPアドレスを使用してVPX高可用性ペアを展開する

最終公開日 : Sep 25, 2026
INCモードのプライベートIPアドレスを使用して、2つの異なるサブネットまたは2つの異なるAWSアベイラビリティーゾーンで2つのNetScaler ADC VPXインスタンスを設定できます。このソリューションは、 Elastic IP アドレスを持つ既存のマルチゾーン VPX 高可用性ペアと簡単に統合できます。したがって、両方のソリューションを一緒に使用できます。
高可用性の詳細については、「 高可用性」を参照してください。INC の詳細については、「 異なるサブネットでの高可用性ノードの設定」を参照してください。
注:
このデプロイは、NetScalerリリース13.0ビルド67.39以降でサポートされています。このデプロイは AWS Transit Gateway と互換性があります。
Related information

AWS 非共有 VPC を使用したプライベート IP アドレスを使用した高可用性ペア

前提条件

AWS アカウントに関連付けられた IAM ロールに次の IAM アクセス権限があることを確認します。
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Action": [
                "ec2:DescribeInstances",
                "ec2:DescribeAddresses",
                "ec2:AssociateAddress",
                "ec2:DisassociateAddress",
                "ec2:DescribeRouteTables",
                "ec2:DeleteRoute",
                "ec2:CreateRoute",
                "ec2:ModifyNetworkInterfaceAttribute",
                "iam:SimulatePrincipalPolicy",
                "iam:GetRole"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ]
}

AWS非共有VPCを使用して、プライベートIPアドレスを持つVPX HAペアをデプロイする

次に、プライベート IP アドレスを使用して 2 つの異なるサブネットまたは 2 つの異なる AWS アベイラビリティーゾーンにVPXペアをデプロイする手順の概要を示します。
  1. Amazon 仮想プライベートクラウドを作成します。
  2. 2 つの異なるアベイラビリティーゾーンに 2 つの VPX インスタンスをデプロイします。
  3. 高可用性を構成する
    1. 両方のインスタンスで INC モードで高可用性をセットアップします。
    2. クライアントインターフェイスを指すそれぞれのルートテーブルを VPC に追加します。
    3. プライマリ・インスタンスに仮想サーバを追加します。
ステップ 1、2、および 3b では、AWS コンソールを使用します。ステップ3aと3cでは、NetScaler VPX GUIまたはCLIを使用します。
手順1. Amazon 仮想プライベートクラウド (VPC) を作成します。
**手順2:**同じ数の ENI (ネットワークインターフェイス) を持つ 2 つの異なるアベイラビリティーゾーンに 2 つの VPX インスタンスをデプロイします。
VPCを作成してAWSにVPXインスタンスをデプロイする方法の詳細については、「AWS へのNetScaler ADC VPXスタンドアロンインスタンスのデプロイ 」および「 シナリオ:スタンドアロンインスタンス」を参照してください。
手順3. Amazon VPC サブネットと重複しないサブネットを選択して、ADC VIP アドレスを設定します。VPC が 192.168.0.0/16 の場合、ADC VIP アドレスを設定するには、次の IP アドレス範囲から任意のサブネットを選択できます。
  • 0.0.0.0-192.167.0.0
  • 192.169.0.0-254.255.255.0
この例では、10.10.10.0/24 サブネットを選択し、このサブネットに VIP を作成しました。VPCサブネット以外の任意のサブネットを選択できます (192.168.0.0/16).
ステップ 4: VPC ルートテーブルから、プライマリノードのクライアントインターフェイス (VIP) を指すルートを追加します。
AWS CLIから、次のコマンドを入力します。
aws ec2 create-route --route-table-id rtb-2272532 --destination-cidr-block 10.10.10.0/24 --gateway-id <eni-client-primary>
AWS GUI から、次の手順を実行してルートを追加します。
  1. ナビゲーションペインで、 ルートテーブルを選択し、ルートテーブルを選択します。
  2. を選択し、 をクリックします。
  3. ルートを追加するには、 を選択します。**に、宛先CIDRブロック、単一のIPアドレス、またはプレフィックスリストのIDを入力します。ゲートウェイ ID には、プライマリノードのクライアントインターフェイスの ENI を選択します。
ルートテーブル-ルートの編集
注:
プライマリ・インスタンスのクライアント ENI で Source/Dest Check を無効にする必要があります。
コンソールを使用してネットワークインターフェイスのsource/destinationチェックを無効にするには、次の手順を実行します。
  1. ナビゲーションペインで、を**選択します。
  2. プライマリクライアントインターフェイスのネットワークインターフェイスを選択し、 を選択し、 をクリックします。**を確認してください。
  3. ダイアログボックスで、 を選択し、 をクリックします。
手順5. 高可用性を構成します。NetScaler VPX CLIまたはGUIを使用して、高可用性をセットアップできます。

CLI を使用した高可用性の設定

  1. 両方のインスタンスで INC モードで高可用性をセットアップします。
    プライマリノードで、次の操作を行います。
    add ha node 1 <sec_ip> -inc ENABLED
    セカンダリノード:
    add ha node 1 <prim_ip> -inc ENABLED
    \&lt;sec_ip>セカンダリノードの管理 NIC のプライベート IP アドレスを参照します。
    \&lt;prim_ip>プライマリノードの管理 NIC のプライベート IP アドレスを参照します。
  2. プライマリ・インスタンスに仮想サーバを追加します。選択したサブネット(10.10.10.0/24 など)から追加する必要があります。
    次のコマンドを入力します。
    add \<server\_type\> vserver \<vserver\_name\> \<protocol\> \<primary\_vip\> \<port\>

GUI を使用した高可用性の構成

  1. 両方のインスタンスで INC モードで高可用性をセットアップする
  2. ユーザー名nsrootとインスタンス ID をパスワードとしてプライマリノードにログオンします。
  3. > > に移動し、 をクリックします。
  4. リモートノード IP アドレスフィールドに 、2 次ノードの管理NIC のプライベート IP アドレスを追加します。
  5. を選択します。
  6. で、セカンダリノードのユーザー名とパスワードを追加し、 をクリックします。
  7. セカンダリノードで手順を繰り返します。
  8. プライマリ・インスタンスに仮想サーバを追加する
    > > > **に移動します。
    仮想サーバーを追加する

AWS 共有 VPC を使用して、プライベート IP アドレスを持つ VPX HA ペアをデプロイする

AWS 共有 VPC モデルでは、VPC を所有するアカウント (所有者) が 1 つ以上のサブネットを他のアカウント (参加者) と共有します。そのため、VPC 所有者アカウントと参加者アカウントがあります。サブネットが共有されると、参加者は共有されたサブネット内のアプリケーションリソースを表示、作成、変更、および削除できます。参加者は、他の参加者または VPC 所有者に属するリソースを表示、変更、削除することはできません。
AWS 共有 VPC の詳細については、 AWS ドキュメントを参照してください。
注:
AWS共有VPCを使用してプライベートIPアドレスでVPX HAペアをデプロイする設定手順は、 AWS非共有VPCを使用してプライベートIPアドレスでVPX HAペアをデプロイする手順と同じです 。ただし、次の例外があります。
  • クライアントインターフェイスを指す VPC 内のルートテーブルは、 VPC 所有者アカウントから追加する必要があります。

前提条件

  • AWS参加者アカウントのNetScaler VPXインスタンスに関連付けられているIAMロールに次のIAM権限があることを確認してください。
    "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "ec2:DisassociateAddress",
                    "iam:GetRole",
                    "iam:SimulatePrincipalPolicy",
                    "ec2:DescribeInstances",
                    "ec2:DescribeAddresses",
                    "ec2:ModifyNetworkInterfaceAttribute",
                    “ec2:AssociateAddress”,
                    "sts:AssumeRole"
            ],
                "Resource": "*"
            }
        ]
    }
    注記:
    AssumeRoleを使用すると 、NetScaler VPXインスタンスは、VPC所有者アカウントによって作成されたクロスアカウントIAMロールを引き継ぐことができます。
  • VPC 所有者アカウントが、クロスアカウント IAM ロールを使用して、参加者アカウントに次の IAM アクセス権限を付与していることを確認します。
    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "VisualEditor0",
                "Effect": "Allow",
                "Action": [
                    "ec2:CreateRoute",
                    "ec2:DeleteRoute",
                    "ec2:DescribeRouteTables"
                ],
                "Resource": "*"
            }
        ]
    }

クロスアカウント IAM ロールの作成

  1. AWS ウェブコンソールにログインします。
  2. タブで に移動し、 を選択します。
  3. を選択します。
    共有 VPC 作成ロール
  4. 管理者アクセス権を付与する参加者アカウントの 12 桁のアカウント ID 番号を入力します。

NetScaler CLIを使用してクロスアカウントIAMロールを設定する

次のコマンドを実行すると、NetScaler VPXインスタンスがVPC所有者アカウントに存在するクロスアカウントIAMロールを引き継ぐことができます。
set cloud awsParam -roleARN <string>

NetScaler GUIを使用してクロスアカウントIAMロールを設定

  1. NetScalerアプライアンスにサインインし、 > > に移動します。
    クラウドパラメーターの変更
  2. AWS クラウドパラメータの設定ページで 、 RolLearn フィールドの値を入力します。
    AWS クラウドパラメータの設定

シナリオ

このシナリオでは、1 つの VPC が作成されます。その VPC では、2 つのアベイラビリティーゾーンに 2 つの VPX インスタンスが作成されます。各インスタンスには、管理用、クライアント用、バックエンドサーバー用の 3 つのサブネットがあります。
次の図は、AWS上のINCモードでのNetScaler VPX高可用性セットアップを示しています。VPC の一部ではないカスタムサブネット 10.10.10.10 が VIP として使用されます。したがって、10.10.10.10 サブネットはアベイラビリティーゾーン全体で使用できます。
INCモードでのフェイルオーバー前の高可用性セットアップ
このシナリオでは、CLI を使用して高可用性を設定します。
  1. 両方のインスタンスで INC モードで高可用性をセットアップします。
    プライマリノードとセカンダリノードで次のコマンドを入力します。
    プライマリノードで、次の操作を行います。
    add ha node 1 192.168.4.10 -inc enabled
    ここで、192.168.4.10 は、セカンダリノードの管理 NIC のプライベート IP アドレスを指します。
    セカンダリノード:
    add ha node 1 192.168.1.10 -inc enabled
    ここで、192.168.1.10 は、プライマリノードの管理 NIC のプライベート IP アドレスを指します。
  2. プライマリ・インスタンスに仮想サーバを追加します。
    次のコマンドを入力します。
    add lbvserver vserver1 http 10.10.10.10 80
  3. 構成を保存します。
  4. 強制フェールオーバーの後:
    • セカンダリインスタンスが新しいプライマリインスタンスになります。
    • プライマリ ENI を指す VPC ルートは、セカンダリクライアント ENI に移行します。
    • クライアントトラフィックは、新しいプライマリインスタンスに再開されます。

HA プライベート IP ソリューションの AWS Transit Gateway の設定

AWS Transit Gateway は、AWS VPC、リージョン、およびオンプレミスネットワーク全体で、内部ネットワーク内でプライベート VIP サブネットをルーティング可能にする必要があります。VPC は AWS Transit Gateway に接続する必要があります。AWS Transit Gateway ルートテーブル内の VIP サブネットまたは IP プールの静的ルートが作成され、VPC をポイントします。
AWS Transit Gateway
AWS Transit Gateway を設定するには、次の手順に従います。
  1. ナビゲーションペインで、 を選択します。
  2. タブを選択し、 をクリックします。
    AWS Transit Gateway ートテーブル
  3. CIDRがプライベートVIPSサブネットを指し、アタッチメントがNetScaler VPXのあるVPCを指す静的ルートを作成します。
    スタティックルートの作成
  4. をクリックし、 を選択します。

トラブルシューティング

マルチゾーン HA で HA プライベート IP ソリューションを設定する際に問題が発生した場合は、トラブルシューティングのために次の重要なポイントを確認してください。
  • プライマリノードとセカンダリノードの両方に同じ IAM 権限セットがあります。
  • INC モードは、プライマリノードとセカンダリノードの両方で有効になっています。
  • プライマリノードとセカンダリノードの両方に同じ数のインターフェイスがあります。
  • インスタンスを作成するときは、デバイスインデックス番号に基づいてプライマリノードとセカンダリノードの両方にインターフェイスをアタッチする同じ手順に従います。プライマリノードで、クライアントインターフェイスが最初に接続され、サーバーインターフェイスが 2 番目に接続されているとします。セカンダリノードでも同じ手順に従います。不一致がある場合は、正しい順序でインターフェイスを取り外して再接続します。
  • インターフェイスの順序を確認するには、 > > > **のナビゲーションパスをたどります。 デフォルトでは、これらのインターフェイスには次のデバイスインデックス番号が割り当てられます。 \- 管理インターフェイス — 0 \- クライアントインターフェイス — 1 \- サーバーインターフェイス — 2
  • プライマリ ENI のデバイスインデックス番号の順序が 0、1、2 の場合。セカンダリ ENI も、デバイスインデックス番号と同じシーケンス(0、1、2)に従う必要があります。
    デバイスインデックス番号の順序に不一致がある場合、ルートが失われないように、一致しないすべてのルートが管理インターフェイスであるインデックス 0 に転送されます。ただし、管理インターフェイスへのルートの移動は、トラフィックの輻輳を引き起こす可能性があるため、インターフェイスを切り離してから正しい順序で接続し直す必要があります。
  • トラフィックが流れない場合は、「送信元/宛先」を確認してください。プライマリノードのクライアントインターフェイスで「Check」が初めて無効になります。
  • cloudhadaemon コマンド (ps -aux | grep cloudha) がシェルで実行されていることを確認します。
  • NetScalerファームウェアのバージョンが13.0ビルド70.x以降であることを確認してください。
  • フェイルオーバープロセスの問題については、/var/log/cloud-ha-daemon.log にあるログファイルを確認してください。