4ノードおよび3ノードマルチノードの高可用性
4ノードおよび3ノードのマルチノード高可用性ソリューションの詳細をご覧ください。
Junos OSの4ノードマルチノード高可用性機能は、サービスの中断に対する堅牢な保護を提供します。既存のMNHAインフラストラクチャは、2台のファイアウォールがペアとして機能することで冗長性をサポートしています。4ノードMNHAは、ドメイン全体で2組のMNHAデバイス間のさらなる冗長性をサポートすることで、冗長性とフェイルオーバー機能を強化します。つまり、デバイスの一方のペアに障害が発生したりオフラインになったりすると、もう一方のペアが障害が発生したペアが提供するサービスを自動的に引き継ぎます。2組のデバイスを別々のデータセンターなど、異なる場所に配置できるため、1つの場所で問題が発生してもサービスを継続して運用できます。
4ノードMNHAの機能:
- SRG0サポート:4ノードMNHAサポートSRG0は、ファイアウォールやNATなど、コントロールプレーン状態のないサービスに適しています。コントロールプレーン状態とは、ネットワーク運用を管理および制御するために必要な情報を指します。
- SRG1+ の制限: 現在、4 ノード MNHA は、IPsec VPN などのコントロールプレーン状態を伴う SRG1+ サービスをサポートしていません。
- 動作モード:4ノードMNHAは、MNHAのルーティングモードのみをサポートします。ネットワークトラフィックと冗長性を処理するためのさまざまな運用構成であるスイッチングモード、ハイブリッドモード、またはクラウドモードのサポートは含まれません。
-
ルーティングの制限: 4ノードMNHAインフラストラクチャは、同じドメイン内または2つのドメイン間での非対称ルーティングをサポートしていません。そのため、外部ルーターは、同じ双方向フローのパケットを同じノードに一貫して送信する必要があります。
4ノードMNHAのメリット:
-
強化されたサービス継続性を提供します。ノード間でサービスのシームレスなフェイルオーバーを可能にし、コントロールプレーンの状態を損なうことなく、ファイアウォールやNATなどの重要なネットワーク機能の中断のない稼働時間を確保します。
-
地理的に分散したデータセンター全体で高可用性をサポートし、局所的な中断に対する耐障害性を提供します。
導入シナリオ
4ノードMNHAの設定には、同じハードウェア構成を持つ4つの同一のSRXシリーズファイアウォールが含まれます。これらのデバイスは 2 つの MNHA ドメインに編成され、各ドメインには 2 つのファイアウォールが含まれています。
トポロジー内:
- ドメイン1は、ノード1.1(ドメイン1ノード1)とノード1.2(ドメイン1ノード2)の2つのファイアウォールで構成されています。
- ドメイン2は、ノード2.1(ドメイン2ノード1)とノード2.2(ドメイン2ノード2)の2つのファイアウォールで構成されています。
各ドメイン内では、2つのノードがシャーシ間リンク(ICL)を介して通信します。これは、高速で効率的な通信を可能にする直接接続です。2つのドメイン間で、ノードはドメイン間リンク(IDL)を介して通信します。ICLとIDLはどちらも論理リンクであり、専用インターフェイスまたは帯域内トラフィックインターフェイス上で動作できます。ICLとIDLの両方をルーティングし、IPsec暗号化を使用できます。
IDLは、異なるドメインのノード間の通信を可能にするレイヤー3のルーティング可能なリンクです。各IDLは、ノードのインターフェイス上で構成され、プライベートルーティングインスタンスの一部です。この設定により、ドメイン全体の MNHA ノード間の内部通信パケットのみがこれらのリンクを通過できるようになり、セキュリティと整合性が維持されます。
4つのノードはすべて、パブリックネットワークとプライベートネットワークの両方からのトラフィックを処理する外部レイヤー3ルーターに接続されています。この設定により、ファイアウォールはネットワークトラフィックを効率的に管理できます。
4ノードMNHAを設定するには、まずICL経由で2つのノードを接続して、各ドメイン内にMNHAペアを確立することをお勧めします。次に、これらのペアを(異なるドメインから)IDL経由で接続し、完全なMNHA構造を完成させます。
4ノードマルチノード高可用性の仕組み
4ノードMNHAアーキテクチャは、2つのドメインに分かれており、それぞれが2つのノードで構成されています。この設定により、ドメイン内とドメイン間の2つのレベルで冗長性が可能になります。
-
ドメイン内冗長性:
- 各ドメインには、互いにバックアップする2つのピアノードがあります。ドメイン内の1つのノードに障害が発生したり、サービス停止になったりした場合は、もう一方のノードがその責任を引き継ぎます。
- ドメイン内のノードは、次の2つのモードで動作できます。
- アクティブバックアップモード:1つのノードはアクティブですべてのタスクを処理し、もう1つのノードはスタンバイ状態で、アクティブノードに障害が発生した場合に引き継ぐ準備ができています。
- アクティブ/アクティブモード:両ノードがタスクを積極的に処理し、負荷を共有し、即時フェイルオーバー機能を提供します。
-
ドメイン間の冗長性:
- 1つのドメインのノードは、もう一方のドメインのノードによってバックアップされます。1つのドメインのすべてのノードに障害が発生した場合、もう一方のドメインのノードがサービスを引き継ぎます。
- また、この冗長性は、ドメイン内冗長性と同様に、アクティブ/バックアップモードとアクティブ/アクティブモードの両方をサポートします。
-
通信と同期:
- ICL: これは、同じドメイン内の2つのノード間の通信リンクです。これにより、彼らは自分の状態を同期し、自分のステータスについてお互いに最新の状態に保つことができます。
- IDL: この新しく導入されたリンクにより、異なるドメイン間のノード間の通信が容易になり、状態の同期やステータス情報の共有が可能になります。
-
状態の同期:
- 各ノードは、ICLを介して同じドメイン内のピアと状態を同期します。
- また、ノードは、IDL を介して他のドメインのノードの 1 つと状態を同期します。
- ノードがIDLを介して別のドメインから状態情報を受信すると、その情報をICLを介して同じドメイン内のピアノードに中継します。
例:トポロジーに示されているセットアップには、ノード1.1、ノード1.2、ノード2.1、ノード2.2というラベルの付いた4つのノードが含まれています。
- ノード 1.1 は、ローカル ドメイン内の ICL を介してノード 1.2 と状態を同期します。
- また、ノード1.1はIDLを介してリモートドメインのノード2.1と同期します。
- ノード2.1は、この状態を受け取ると、ICLを介して同じドメインのノード2.2に転送します。
4ノードMNHAにおけるコールド同期
状態のコールド同期は、相互接続されたノードのネットワークで使用されるメカニズムで、すべてのノードが状態の最新かつ一貫性のあるレプリカを保持できるようにします。すべてのノードが起動すると、ノードはドメイン内の状態を同期し、ドメイン間での同期に進みます。1 つのノードが再起動すると、まず同じドメイン内の隣接ノードと状態を同期し、次にリモート ドメインのノードと同期を続行して、必要な状態がすべて揃っていることを確認します。
MNHA設定のコールド同期プロセスには、以下のシーケンスが含まれます。
コールド同期の開始:
コールド同期は、以下のシナリオでノードが隣接ノードから状態のレプリカを作成または更新する必要がある場合に開始されます。
- ノードが起動し、他のノードに接続します。
- ノードは、一時的な切断(ICLフラップ)の後、同じドメイン内のピアノードと再接続します。
- ノードは、一時的な切断(IDLフラップ)の後に、リモートドメイン内のピアノードと再接続します。
コールドシンクプロセス:
- ノードは、ドメインIDとノードIDで識別されます。ID の小さいノードは、ID の高いノードに状態を要求してコールド同期を開始します。
- 状態には、アクティブな状態とリモートドメインから受信した状態が含まれます。
- 同じドメイン内: ノードは、ノードIDに基づいてICLを介して相互に状態を交換します。IDの低いノードが最初に状態を要求します。
- 異なるドメイン間: 同じドメイン内でコールド同期を完了すると、ノードは IDL を介してドメイン間での同期を開始します。
このプロセスにより、最終的にすべてのノードが完全で一貫性のある一連の状態を持つようになります。
4ノードMNHAセットアップにおけるソフトウェアアップグレード
4ノードMNHAのソフトウェアをアップグレードするには、以下の手順に従います
- マルチノード高可用性の設定が正常で機能していること、およびシャーシ間リンク(ICL)が稼働していることを確認します。この手順は、同じドメイン内の別のノードが、アップグレードするノードの責任を引き継ぐ準備ができていることを確認するために必要です。
ドメイン間リンク(IDL)を切断してノードをネットワークの残りの部分から分離し、アップグレード中の中断の可能性を防ぎます。
- ドメイン1のバックアップノード(ノード1.2)でソフトウェアアップグレードプロセスを開始し、
set chassis high-availability software-upgradeステートメントを使用して設定をコミットします。 - もう一方のデバイス(ノード1.1)がアクティブなロールであり、正常に機能していることを確認します。
- ノード1.2にJunos OSソフトウェアをインストールし、再起動を実行して更新を適用します。
- インストールが成功したら、
request system rebootまたはrequest vmhost rebootコマンド(プラットフォームによって異なります)を使用してデバイスを再起動します。 を使用して、再起動後にノードが正しいソフトウェアバージョンを実行していることを確認します。show versioncommand.- デバイス上のマルチノード高可用性のステータスを確認します。
- ノード1.2の
software-upgradeステートメントを削除し、設定をコミットします。この手順により、システムを通常の動作モードに戻すことができます。 - ドメイン間リンクを再確立して、アップグレードしたノードをネットワークに再統合します。
- 同じドメイン内の次のノード(ノード1.1)についても手順を繰り返し、各ノードが順次アップグレードされ、ネットワークの安定性が維持されるようにします。
- 現在のドメインのアップグレードを完了したら、別のドメイン(ドメイン2)に移動し、同じ手順に従って、ネットワーク全体で一貫した整然としたアップグレードプロセスを確保します。
ライセンスとトポロジーに関する考慮事項
4ノードMNHAのセットアップには、特定の4ノードMNHA機能ライセンスが必要です。ライセンスがない場合、コミット中およびsyslogに次の警告が表示されます。
License needed for the feature 4-node MNHA.
ライセンスはSRXシリーズごとに固有であり、マルチノード高可用性セットアップのノード間で共有することはできません。また、4つのファイアウォールすべてでAppID、IDP、コンテンツセキュリティなどのLayrer 7機能に同一のライセンスを使用するようにしてください。4つのSRXシリーズファイアウォールすべてに同じライセンスがない場合、システムは導入の準備ができていません。
4ノードMNHAの設定要件
マルチノード高可用性(MNHA)ネットワーク設定では、シームレスなネットワーク運用とフェイルオーバー機能を維持するためには、複数のノード間でセッションの一貫性を維持することが重要です。以前は、MNHA設定内のすべてのノードが、特定のセッションに対して同じイングレスおよびエグレスインターフェイス名、ゾーン名、ポリシー名を使用する必要がありました。特に4ノードMNHA構成では、すべてのノードにわたって綿密な構成管理が必要となるため、この要件を満たすのは困難です。
4ノードMNHAは、これらの制限の一部を緩和します。具体的には、MNHAドメイン内のすべてのノードでイングレスインターフェイスとエグレスインターフェイスが同じ名前を持つ必要がなくなります。この変更により、以前は異なるノード上の同じセッションで同じ名前のインターフェイス(すべてのノードでge-0/0/0など)を使用する必要がありましたが、新しい設定により、これらのインターフェイスは各ノードで異なる名前を付けることができます。
例:ノード1.1のセッションには、イングレスインターフェイスge-0/0/0とエグレスインターフェイスge-0/0/1がありますが、ノード2.1で同じセッションがアクティブな場合、イングレスインターフェイスge-0/0/2とエグレスインターフェイスge-0/0/3を持つことができます。ただし、ge-0/0/0 と ge-0/0/2 は同じゾーンにある必要があり、同様に ge-0/0/1 と ge-0/0/3 は同じゾーンにある必要があります。
安全で信頼性の高いセッション処理を確保するには、次の要件を満たす必要があります
ゾーンの一貫性:異なるノード上の同じセッションに使用されるインターフェイスは、同じゾーンに属している必要があります(前のセクションで説明したとおり)。
ポリシーの一貫性: これらのゾーンに適用されるポリシーは、すべてのノードで一貫性を維持する必要があります。この設定により、物理インターフェイスが異なっていても、セキュリティとルーティングの動作が同じままになります。
ルーティングインスタンス/VRFの一貫性:同様に、一貫したルーティング動作を確保するには、VR名をノード間で同じに保つ必要があります。
構成の概要
以下の設定スニペットは、4ノードMNHAシステムを設定するために必要な大まかな手順の概要を示しています
- ローカルドメインとノードIDの設定:
ローカルドメインIDとサイズを設定します。
user@host# set chassis high-availability local-domain-id <domain-id> domain-size <size>
domain-id:ローカルドメインの一意の識別子(1または2)。size:ドメイン内のノードの数(1または2)。4ノードMNHAの場合、ドメインサイズは2です。
ローカル ノード ID を設定します。
user@host# set chassis high-availability local-id <local-node-id>
local-node-id:ドメイン内のローカルノードの一意の識別子(1から10)。
- シャーシ間リンク(ICL)の設定:
この設定は、ローカルノードを同じドメイン内のピアノードに接続するためのものです。
ローカルノードIPを設定します。
[edit] user@host# set chassis high-availability local-id local-ip <ip-address>
ピアノード設定:
[edit] user@host# set chassis high-availability peer-id <peer-node-id> peer-ip <ip-address> user@host# set chassis high-availability peer-id <peer-node-id> interface <logical-interface-name> user@host# set chassis high-availability peer-id <peer-node-id> liveness-detection minimum-interval <interval-in-ms> user@host# set chassis high-availability peer-id <peer-node-id> liveness-detection multiplier <multiplier-value> user@host# set chassis high-availability peer-id <peer-node-id> vpn-profile IPSEC_VPN_ICL
- ドメイン間リンク(IDL)設定:この設定は、異なるドメイン間でノードを接続するためのものです。
user@host# set chassis high-availability peer-domain-id <domain-id> domain-size <size> user@host# set chassis high-availability peer-domain-id <domain-id> peer-id <peer-node-id> local-ip <ip-address> user@host# set chassis high-availability peer-domain-id <domain-id> peer-id <peer-node-id> peer-ip <ip-address> user@host# set chassis high-availability peer-domain-id <domain-id> peer-id <peer-node-id> interface <logical-interface-name> user@host# set chassis high-availability peer-domain-id <domain-id> peer-id <peer-node-id> liveness-detection minimum-interval <interval-in-ms> user@host# set chassis high-availability peer-domain-id <domain-id> peer-id <peer-node-id> liveness-detection multiplier <multiplier-value> user@host# set chassis high-availability peer-domain-id <domain-id> peer-id <peer-node-id> vpn-profile profile-name
- サービス冗長性グループ(SRG0)の設定:
同じドメイン((1〜10)にピアノードを設定します。
user@host# set chassis high-availability services-redundancy-group 0 peer-id 2
別のドメインにピアノードを設定します。
user@host# set chassis high-availability services-redundancy-group 0 peer-domain-id <domain-id> peer-id <peer-node-id>
注:以下の基準が満たされていることを確認します。- 各ドメインIDは一意である必要があり、IDは1または2のみです。
- ノードIDは、同じドメイン内で一意です。
- MNHAインフラストラクチャは、
peer-domain-idが設定されている場合にのみ、SRG0の4ノード構成をサポートします。これがない場合、セットアップは2ノード構成をサポートします。 - ローカルドメインID、ローカルノードID、ピアドメインID、ピアノードID、ドメインサイズを設定したら、デバイスを再起動します。
show chassis high-availability informationやshow chassis high-availability peer-infoなどのコマンドを使用して、設定が期待どおりに機能していることを確認します。
ドメイン間リンク(IDL)暗号化
ドメイン間リンク(IDL)を備えた4ノードマルチノード高可用性(MNHA)は、データセンタードメイン全体に拡張することで高可用性を強化します。IDLは、異なるドメイン間のノード間の通信を容易にし、ノードが状態を同期し、ステータス情報を共有できるようにします。
IDLは論理IPリンクであり、ネットワーク内でルーティング可能なIPアドレスを使用して確立されます。
ドメイン全体のノードは、IDLを使用してコントロールプレーンとデータプレーンの状態を同期します。IDL 通信は共有ネットワークや信頼できないネットワークを経由する可能性があり、IDL を介して送信されたパケットは、必ずしも信頼されるとは限らないパスを通過する可能性があります。そのため、IPsec標準を使用してトラフィックを暗号化し、IDLを通過するパケットを保護する必要があります。
IPsecは、IDL用の暗号化トンネルを確立することでトラフィックを保護します。HAリンク暗号化を適用すると、HAトラフィックは、セキュアで暗号化されたトンネルを介してのみドメイン間のノード間をフローします。HAリンク暗号化を使用しないと、ノード間の通信が安全でない可能性があります。
IDLはIKEv2とカスタムMulti-SA実装をサポートしており、IPsec VPNを介してドメイン間で暗号化されたデータを安全に交換できます。このシステムは、堅牢なAES-GCM-256暗号化とPSKおよびPKIの両方の認証をサポートしており、セキュアなドメイン間通信を保証します。
構成の概要
ICLのHAリンクを暗号化するには:
- 以下のコマンドを使用して、SRXシリーズファイアウォールにJunos IKEパッケージをインストールします。
user@host> request system software add optional://junos-ike.tgz
- HAトラフィック用のVPNプロファイルを設定し、両方のノードにプロファイルを適用します。SRXシリーズファイアウォール間でネゴシエートされたIPsecトンネルは、IKEv2プロトコルを使用します。
user@host# set chassis high-availability peer-domain-id domain-id peer-id peer-node-id vpn-profile
- IPsec VPN設定にha-link-encryptionステートメントが含まれていることを確認してください。例:
user@host# set security ipsec vpn vpn-name ha-link-encryption.
user@host> show security ipsec statistics ha-link-encryptionコマンドを使用して詳細を確認し、トンネルタイプ(ICLまたはIDL)を表示します。
IDLには、以下の設定を行うことをお勧めします。
- 飽和状態になりにくいポートとネットワークを使用します。
- 専用のHAポート(SRXシリーズファイアウォールで利用可能な場合は、コントロールポートとファブリックポート)を使用しないでください。
- SRXシリーズファイアウォールの収益イーサネットポートを使用して、IDL接続を設定できます。収益インターフェイスのトランジットトラフィックを、高可用性(HA)トラフィックから分離してください。
3ノードマルチノードの高可用性
3ノードMNHAの設定には、同じハードウェア設定を持つ3台の同一のSRXシリーズファイアウォールが含まれます。これらのデバイスは 2 つの MNHA ドメインに編成されており、1 つのドメインには 2 つのファイアウォールが含まれ、もう 1 つのドメインには 1 つのファイアウォールが含まれます。
3ノードMNHA設定では、ノード1.1とノード1.2はドメイン1に属し、ノード2.1はドメイン2に属しています。4ノードMNHA構成の場合、各ノードには1つのクラスター間リンク(ICL)と1つのドメイン間リンク(IDL)が装備されています。3ノードMNHA構成では、ドメイン1の2つのノードがそれぞれ1つのICLと1つのIDLを持っていますが、ドメイン2のノードには2つのIDLがあり、ICLはありません。
状態の同期:
- ドメイン1では、ノード1.1はICLを介してその状態をピア(ノード1.2)と同期します。
- また、ノード1.1は、IDLを介して他のドメインのノード2.1と状態を同期します。
- ノード 2.1 は、IDL を介してノード 01.1 とノード 1.2 に状態を同期します。
- ノードがIDLを介して別のドメインから状態情報を受信しても、この情報をICLを介して同じドメイン内のピアノードに中継することはありません。このアプローチにより、ドメイン内でのデータ転送が不要に重複するのを防ぎます。
単一のIDL障害が発生した場合、特にノード1.1とノード2.1の間の直接リンクがダウンしている場合、ルーティングを使用して接続が維持されます。ノード 1.1 は、Nnode 1.2 を介した定義済みルートを使用してノード 2.1 と通信できます。このルーティングにより、ノード1.1とノード2.1の間のIDLが動作し続けるようになり、ホット同期プロセスでもコールド同期プロセスでも、IDLからICLピアにパケットを転送する必要がなくなります。
3ノードMNHAの設定概要
3ノードMNHA(マルチノード高可用性)設定では、デバイスは2つのドメインに分割されます。1つのドメインは2つのファイアウォールをホストし、もう1つは単一のファイアウォールをホストします。以下の設定スニペットは、ローカルノードとピアノードの設定に焦点を当てて、単一ノードでドメインのMNHAを設定する方法を示しています。単一ノードドメインにはシャーシ間リンク(ICL)設定は必要ありません。もう一方のドメイン(2ノードを持つドメイン)の設定は、4ノードMNHAドメインの設定と似ています。
- ローカルID、ローカルドメインID、ドメインサイズを設定します。
[edit] user@host# set chassis high-availability local-id <local-node-id> user@host# set chassis high-availability local-id local-ip <local-ip> user@host# set chassis high-availability local-domain-id <domain-id> user@host# set chassis high-availability local-domain-id domain-size 1
ドメインサイズ1は、3ノードMNHAに1つのノードのみを含むドメインを示します。
- ピアノードを設定します。
[edit] user@host# set chassis high-availability peer-domain-id 1 domain-size 2
- ピアノード1のIDLを設定します。
[edit] user@host# set chassis high-availability peer-domain-id 1 peer-id 1 local-ip <local-ip-address> user@host# set chassis high-availability peer-domain-id 1 peer-id 1 peer-ip <peer-ip-address> user@host# set chassis high-availability peer-domain-id 1 peer-id 1 interface <interface> user@host# set chassis high-availability peer-domain-id 1 peer-id 1 vpn-profile <profile-name> user@host# set chassis high-availability peer-domain-id 1 peer-id 1 liveness-detection minimum-interval <interval-in-ms> user@host# set chassis high-availability peer-domain-id 1 peer-id 1 liveness-detection multiplier <multiplier-value>
- ピアノード2のIDLを設定します。
[edit] user@host# set chassis high-availability peer-domain-id 1 peer-id 2 local-ip <local-ip-address> user@host# set chassis high-availability peer-domain-id 1 peer-id 2 peer-ip <peer-ip-address> user@host# set chassis high-availability peer-domain-id 1 peer-id 2 interface <interface> user@host# set chassis high-availability peer-domain-id 1 peer-id 2 vpn-profile <profile-name> user@host# set chassis high-availability peer-domain-id 1 peer-id 2 liveness-detection minimum-interval <interval-in-ms> user@host# set chassis high-availability peer-domain-id 1 peer-id 2 liveness-detection multiplier <multiplier-value>
- サービス冗長性グループを設定します。
[edit] user@host# set chassis high-availability services-redundancy-group 0 peer-domain-id 1 peer-id 1 user@host# set chassis high-availability services-redundancy-group 0 peer-domain-id 1 peer-id 2
show chassis high-availability informationやshow chassis high-availability peer-infoなどのコマンドを使用して、設定が期待どおりに機能していることを確認します。