マルチノードの高可用性
マルチノード高可用性ソリューションの概要と、シンプルで信頼性の高い導入モデルで使用する方法について説明します。現在、すべてのマルチノード高可用性展開で 2 つのノードをサポートしています。
概要
ビジネス継続性は、最新ネットワークの重要な要件です。数秒でもダウンタイムが発生すると、OpExやCapExに影響を与える以外にも、混乱や不便が生じる可能性があります。また、最新のネットワークでは、データ センターが複数の地理的領域に分散しています。このようなシナリオでは、高可用性の実現は非常に困難な場合があります。
ジュニパーネットワーク® スのSRXシリーズファイアウォールは、新しいソリューション、マルチノード高可用性をサポートし、最新のデータセンターの高可用性要件に対処します。このソリューションでは、参加デバイス(ノード)のコントロールプレーンとデータプレーンの両方が同時にアクティブになります。したがって、このソリューションはシャーシ間に耐障害性を提供します。
参加するデバイスは、地理的なエリアや、異なる部屋や建物などの他の場所で、同じ場所に配置することも、物理的に分離することもできます。地理的に分散した拠点にノードを分散させることで、サービスの耐障害性を高めます。災害が1つの物理的な場所に影響した場合、マルチノード高可用性は別の物理的な場所にあるノードにフェイルオーバーできるため、継続性を確保できます。
マルチノード高可用性のメリット
-
CapExとOpExの削減—ファイアウォール複合体を囲むスイッチドネットワークや、ノード間の直接レイヤー2(L2)接続が不要になります
-
ネットワークの柔軟性 - レイヤー 3(L3)とスイッチ ネットワーク セグメント全体で高可用性をサポートすることで、ネットワークの柔軟性を向上させます。
-
ステートフルで耐障害性の高いソリューション:両方のノードでアクティブコントロールプレーンとデータプレーンを同時にサポートします。
-
ビジネス継続性と災害復旧:可用性を最大限に高め、データセンターや地域間における冗長性を高めます。
-
スムーズなアップグレード — 2 つのノードで異なるバージョンの Junos OS をサポートし、Junos OS リリース間のスムーズなアップグレードを確保します。また、2 つの異なるバージョンの Junos を実行することもできます。
ジュニパーでは、アクティブ/バックアップモードとアクティブ/アクティブモード(複数のSRG(サービス冗長グループ)をサポート)で、マルチノード高可用性をサポートします。サポートされている機能とプラットフォームの完全なリストについては、Feature Explorer でのマルチノードの高可用性を参照してください。
サポートされている機能
マルチノード高可用性を備えたSRXシリーズファイアウォールは、ファイアウォールと、アプリケーションセキュリティ、コンテンツセキュリティ、侵入防御システム(IPS)、ファイアウォールユーザー認証、NAT、ALGなどの高度なセキュリティサービスをサポートします。
マルチノード高可用性でサポートされている機能の完全なリストについては、 Feature Explorerを参照してください。
マルチノード高可用性は、透過モード高可用性(HA)をサポートしていません
論理システムとテナントシステムのサポート
SRXシリーズファイアウォールの論理システムでは、単一のデバイスを安全なコンテキストにパーティション化でき、テナントシステムでは、物理ファイアウォールを独立した独立した論理ファイアウォールに論理的に分割できます。
テナント システムは、物理ファイアウォールを分離された個別の論理ファイアウォールに論理的に分割します。論理システムと似ていますが、テナントシステムの方が拡張性ははるかに高く、ルーティング機能は少なくなります。
マルチノード高可用性セットアップのSRXシリーズファイアウォールは、サービス冗長グループ0(SRG0)上の論理システムとテナントシステムをサポートします。
論理システムを実行しているSRXシリーズファイアウォールを使用したマルチノード高可用性セットアップの動作は、SRXシリーズノードが論理システムを実行しないセットアップの動作と同じです。ノードのフェイルオーバーをトリガーするイベントに違いはありません。具体的には、SRG0 でインターフェイス監視が有効になっていて、単一の論理システムに関連付けられたリンク(監視中のリンク)に障害が発生した場合、デバイスは別のノードにフェイルオーバーします。このフェイルオーバーは、マルチノード高可用性セットアップのルート優先アドバタイズメントを介して発生します。
論理システムまたはテナントシステムを設定する前に、マルチノード高可用性を設定する必要があります。高可用性セットアップの各ノードは、同じ構成である必要があります。論理システムまたはテナント システムの名前、プロファイル、および対応するセキュリティ機能、または論理システムまたはテナント システム内のインターフェイスが同じであることを確認します。すべての論理システムまたはテナントシステム設定は、2つのノード間で同期され、複製されます。
Junos設定グループを使用して機能を設定し、マルチノード高可用性設定で[edit system commit peers-synchronize]オプションを使用して設定を同期します。マルチノード高可用性ノード間の設定の同期を参照してください。
マルチノード高可用性の論理システムでSRXシリーズファイアウォールを使用する場合、セットアップの各ノードに同じ数のライセンスを購入してインストールする必要があります。
詳細については、 セキュリティ デバイス向け論理システムおよびテナント システム ユーザー ガイドを参照してください。
導入シナリオ
マルチノード高可用性は、2台のSRXシリーズファイアウォールをサポートし、ネットワークの残りの部分に対して独立したノードとして自身を提示します。ノードは、導入モードに応じて、同じネットワークまたは異なるネットワークに属する隣接するインフラストラクチャに接続されます。これらのノードは、地域間で併置することも、分離することもできます。参加ノードは互いにバックアップし合い、システムやハードウェアに障害が発生した場合に、同期されたフェイルオーバーを迅速に行います。
ジュニパーでは、マルチノード高可用性向けに、以下のタイプのネットワーク導入モデルをサポートしています。
- ルートモード(レイヤー3トポロジーを使用して接続されたすべてのインターフェイス)
図 1:レイヤー 3 モード
- 従来の環境で使用されていたデフォルトゲートウェイモード(レイヤー2トポロジーを使用して接続されたすべてのインターフェイス)。ファイアウォールデバイスが、同じセグメント上のホストとアプリケーションのデフォルトゲートウェイとして機能する、DMZネットワークの一般的な導入。
図2:デフォルトゲートウェイモード
- ハイブリッドモード(1つ以上のインターフェイスがレイヤー3トポロジーを使用して接続され、1つ以上のインターフェイスがレイヤー2トポロジーを使用して接続されます)
図 3:ハイブリッド モード
- パブリッククラウドの導入
図4:パブリッククラウドの導入(例:AWS)
マルチノードの高可用性とシャーシクラスターの違い
シャーシ クラスタはレイヤー 2 ネットワーク環境で動作し、ノード間に 2 つのリンク(制御リンクとファブリック リンク)が必要です。これらのリンクは、バックツーバックケーブルまたはダークファイバーを使用して専用VLANで両方のノードを接続します。コントロールリンクとファブリックリンクは、SRXシリーズファイアウォール上の専用の物理ポートを使用します。
マルチノード高可用性は、暗号化された論理シャーシ間リンク(ICL)を使用します。ICLは、専用のレイヤー2ネットワークではなく、ルーティングされたパスを介してノードを接続します。このルーテッドパスは、耐障害性を最大限に高めるために1つ以上の収益ポートを使用できます。さらに、独自のルーティング インスタンスをこれらのポートとパス専用にして完全な分離を確保し、ソリューションの耐障害性を最大限に高めることも可能です。
のシャーシ クラスター トポロジー
におけるマルチノードの高可用性
表 1 に、2 つのアーキテクチャの違いを示します
| パラメータ | シャーシ クラスタ | マルチノードの高可用性 |
|---|---|---|
| ネットワークトポロジー | ノードはブロードキャスト ドメインに接続します | ノードは、ルーター、ブロードキャスト ドメイン、またはその両方の組み合わせに接続します。
|
| ネットワーク環境 | レイヤー2 |
|
| トラフィックスイッチオーバーのアプローチ | SRXシリーズファイアウォールがGARPをスイッチに送信 | ピアレイヤー3ルーターまたはレイヤー2 GARPによる、SRXシリーズファイアウォールからピアレイヤー2スイッチへのIPパス選択を使用したスイッチオーバー
|
| パブリッククラウド | 未対応 | サポート |
| ダイナミックルーティング機能 | コントロールプレーン(RG0)がアクティブなSRXシリーズでアクティブなルーティングプロセス | マルチノード高可用性に参加している各SRXシリーズファイアウォールでアクティブなルーティングプロセス |
| SRXシリーズファイアウォール間の接続 |
|
シャーシ間リンク(レイヤー 3 パス) |
| 接続性 / 地理的冗長性 | 制御リンクとファブリックリンク用に、SRXシリーズノード間に専用のレイヤー2ストレッチが必要です。 | シャーシ間リンクのノード間のルーテッドパスを使用します。 |
| IP監視によるネットワーク障害の検知 |
|
|
マルチノード高可用性用語集
まず、このドキュメントで使用されているマルチノード高可用性の用語について理解しましょう。
| 用語の説明 | |
|---|---|
| アクティブ/アクティブ状態(SRG0) | すべてのセキュリティサービス/フローは、各ノードで検査され、もう一方のノードでバックアップされます。セキュリティフローは対称でなければなりません。 |
| アクティブ/バックアップ状態(SRG1+) | SRG1+ は、常に 1 つのノード上でアクティブな状態を維持し、もう 1 つのノードではバックアップされた状態を維持します。バックアップ状態のSRG1+は、障害発生時にアクティブなSRG1からトラフィックを引き継ぐ準備ができています。 |
| デバイスの優先度 | 優先度値は、ノードがマルチノード高可用性セットアップでアクティブノードとして機能できるかどうかを決定します。数値の小さいノードは優先度が高いため、アクティブノードとして機能し、他のノードはバックアップノードとして機能します。 |
| デバイスプリエンプション | プリエンプティブ動作により、優先度の高い(数値の小さい)デバイスは、障害から回復した後、アクティブノードとして再開できます。マルチノード高可用性の特定のデバイスをアクティブノードとして使用する必要がある場合は、両方のデバイスでプリエンプティブ動作を有効にし、各デバイスにデバイス優先度値を割り当てる必要があります。 |
| フェイルオーバー | フェイルオーバーは、一方のノードが障害(ハードウェア/ソフトウェアなど)を検出し、トラフィックがステートフルな方法でもう一方のノードに移行したときに発生します。その結果、高可用性システムのバックアップノードは、アクティブノードに障害が発生したときにアクティブノードのタスクを引き継ぎます。 |
| フローティング IP アドレスまたはアクティブ性プローブ IP アドレス | マルチノード高可用性セットアップのフェイルオーバー中にアクティブノードからバックアップノードに移動するIPアドレス。このメカニズムにより、クライアントは単一の IP アドレスを使用してノードと通信できます。 |
| 高可用性/耐障害性 |
単一障害点を排除して、長期間にわたる継続的な運用を保証するシステムの機能。 |
| シャーシ間リンク | マルチノード高可用性導入でルーテッドネットワークを介してノードを接続するIPベースのリンク(論理リンク)。ICLリンクは、通常、ほとんどの柔軟な導入においてループバックインターフェイスにバインドされています。接続は、2つのIPアドレス間で接続が到達可能である限り、任意のルーテッドまたはスイッチドパスにすることができます。 セキュリティ デバイスは ICL を使用して、状態情報を同期および維持し、デバイスのフェールオーバー シナリオを処理します。 |
| シャーシ間リンクの暗号化 | リンク暗号化により、ネットワーク上を通過するメッセージのデータプライバシーが確保されます。ICLリンクは個人データを送信するため、リンクを暗号化することが重要です。IPSec VPN を使用して ICL を暗号化する必要があります。 |
| モニタリング(BFD) | BFD(双方向フォワーディング検出)を使用した1つ以上のリンクの監視。BFD監視は、システム設定に応じて、ルーティングパスの変更またはシステムフェイルオーバーをトリガーします。 |
| モニタリング (IP) (monitoring (IP)) | ピアノードとの通信が失われた場合の、信頼性の高いIPアドレスとシステム状態の監視。 |
| 監視(パス) | ICMP を使用して IP アドレスの到達可能性を確認する方法。ICMP ping プローブのデフォルトの間隔は 1 秒です。 |
| 監視(システム) | ノードで障害が検出されたときにフェイルオーバーをトリガーすることで、主要なハードウェアおよびソフトウェアリソースとインフラストラクチャを監視します。 |
| プロービング | 高可用性セットアップでアクティブ ノードとバックアップ ノード間でメッセージを交換するために使用されるメカニズム。メッセージは、個々のノード上のアプリケーションのステータスと正常性を判別します。 |
| リアルタイムオブジェクト (RTO) (real-time object (RTO)) | 1 つのノードから別のノードにデータを同期するために必要な情報を含む特別なペイロード パケット。 |
| スプリットブレイン検出(コントロールプレーン検出またはアクティブ性競合検出とも呼ばれます) | 2 つのマルチノード高可用性ノード間の ICL がダウンし、両方のノードがアクティブ性判別プローブ(スプリットブレインプローブ)を開始するイベント。プローブへの応答に基づいて、新しいロールへの後続のフェイルオーバーがトリガーされます |
| サービス冗長グループ(SRG) | 参加ノード上のオブジェクトのコレクションを含み、管理するフェールオーバー ユニット。フェイルオーバーが検出されると、一方のノードのSRGがもう一方のノードに切り替わります。 |
| SRG0 | ファイアウォール、NAT、ALGなどのすべてのコントロールプレーンステートレスサービスを管理します。 SRG0は、すべての参加ノードでアクティブであり、対称的なセキュリティフローを処理します。 |
| SRG1+ | コントロールプレーンのステートフルサービス(IPSec VPN、またはハイブリッドまたはデフォルトゲートウェイモードの仮想IP)を管理します。 |
| 同期 | 制御とデータプレーンの状態がノード間で同期されるプロセス。 |
| 仮想 IP (VIP) アドレス | ハイブリッドモードまたはデフォルトゲートウェイモードの仮想IPアドレスは、マルチノード高可用性セットアップのスイッチング側でのアクティブ性の判断と実施に使用されます。仮想IPはSRG1+によって制御されます。 |
| 仮想 MAC (VMAC) アドレス | (ハイブリッドおよびデフォルトゲートウェイ展開の場合)。スイッチング側を向いたアクティブノードのインターフェイスに動的に割り当てられた仮想MACアドレス。 |
ここまでマルチノード高可用性の機能と用語について理解できたので、次はマルチノード高可用性の仕組みを理解しましょう。
マルチノード高可用性の仕組み
マルチノード高可用性ソリューションでは、2ノード構成をサポートしています。
マルチノード高可用性設定では、収益インターフェイスを使用して、2つのSRXシリーズファイアウォールを隣接するアップストリームおよびダウンストリームルーター(レイヤー3導入の場合)、ルーターとスイッチ(ハイブリッド導入)、またはスイッチ(デフォルトゲートウェイ導入)に接続します。
ノードは、ICL(シャーシ間リンク)を使用して相互に通信します。ICLリンクは、レイヤー3接続を使用して相互に通信します。この通信は、ルーティングされたネットワーク(レイヤー3)または直接接続されたレイヤー2パスを介して実行できます。ICLをループバックインターフェイスにバインドし、複数の物理リンク(LAG/LACP)を持つことで、パスの多様性を確保し、最高の耐障害性を実現することを推奨します。
マルチノード高可用性は、データプレーンはアクティブ/アクティブモード、コントロールプレーンサービスはアクティブ/バックアップモードで動作します。アクティブなSRXシリーズファイアウォールは、フローティングIPアドレスをホストし、フローティングIPアドレスを使用してトラフィックを誘導します
マルチノード高可用性は、次で動作します。
- セキュリティサービス向けアクティブ/アクティブモード(SRG0)
- セキュリティおよびシステムサービス用のアクティブ/バックアップモード(SRG1以降)
SRG1 以上で制御されるフローティング IP アドレスは、ノード間を移動します。アクティブ SRG1+ は、フローティング IP アドレスをホストおよび制御します。フェイルオーバーのシナリオでは、この IP アドレスは、設定、システムの健全性、またはパス監視の決定に基づいて、別のアクティブな SRG1 に「フロート」します。新しくアクティブになった SRG1+ は、スタンバイ状態の SRG1 の機能を引き継ぎ、着信要求への応答を開始します。
図7、図8、および図9は、レイヤー3、ハイブリッド、およびデフォルトゲートウェイモードでの導入を示しています。
このトポロジーでは、2台のSRXシリーズファイアウォールがマルチノード高可用性設定の一部となっています。このセットアップでは、SRXシリーズファイアウォールと隣接するルーター間のレイヤー3接続が可能です。これらのデバイスは、別々の物理レイヤー3ネットワークで動作し、2つの独立したノードとして動作しています。図に示されているノードは、トポロジー内で同じ場所に配置されています。ノードは地理的に分離することもできます。
一般的なデフォルト ゲートウェイの導入では、LAN 内のホストとサーバは、セキュリティ デバイスのデフォルト ゲートウェイで設定されます。そのため、セキュリティ デバイスは、アクティブに基づいてノード間を移動する仮想 IP(VIP)アドレスをホストする必要があります。ホストの構成は静的なままで、ホストの観点からはセキュリティ デバイスのフェイルオーバーはシームレスです。
直接接続されていない他のネットワークに到達するには、SRXシリーズファイアウォールで静的ルートまたは動的ルーティングを作成する必要があります。
ハイブリッドモードの場合、SRXシリーズファイアウォールはレイヤー2側のVIPアドレスを使用して、トラフィックをレイヤー2側に引き寄せます。オプションで、VMAC アドレスを使用して VIP の静的 ARP を設定し、フェールオーバー中に IP アドレスが変更されないようにすることができます
それでは、マルチノード高可用性のコンポーネントと機能を詳細に理解しましょう。
サービス冗長グループ
サービス冗長グループ(SRG)は、マルチノード高可用性セットアップにおけるフェイルオーバーユニットです。SRG には 2 つのタイプがあります。
- SRG0—IPSec VPN サービスを除くレイヤー 4 からレイヤー 7 のセキュリティ サービスを管理します。SRG0 は、どの時点でも両方のノードでアクティブ モードで動作します。SRG0では、各セキュリティセッションは対称フローでノードを通過する必要があります。 これらのフローのバックアップは、他のノードに完全に状態同期されます。
- SRG1+—ハイブリッド モードとデフォルト ゲートウェイ モードの IPsec サービスと仮想 IP を管理し、他のノードにバックアップされます。SRG1 は、1 つのノード上ではアクティブ モードであり、別のノード上ではバックアップ ノードとして動作します。
図 10 は、マルチノード高可用性設定の SRG0 と SRG1 を示しています。
における単一 SRG サポート
図 11 は、マルチノード高可用性セットアップにおける SRG0 と SRG1+ を示しています。
におけるマルチ SRG サポート
Junos OS リリース 22.4R1 以降では、マルチ SRG1(SRG1+)をサポートするアクティブ/アクティブ モードで動作するようにマルチノード高可用性を設定できます。このモードでは、一部の SRG は 1 つのノードでアクティブなままになり、一部の SRG は別のノードでアクティブなままになります。特定の SRG は常にアクティブ バックアップ モードで動作します。1つのノードではアクティブモード、別のノードではバックアップモードで動作します。この場合、どちらのノードもアクティブなSRG1転送ステートフルサービスを持つことができます。各ノードには、SRG1+ に割り当てられた異なるフローティング IP アドレスのセットがあります。
Junos OS リリース 22.4R1 以降では、マルチノード高可用性設定で最大 20 の SRG を設定できます。
表 3 は、マルチノード高可用性設定における SRG の動作を示しています。
| 関連サービス 冗長グループ(SRG) | アクティブノードに障害が発生した場合、 | マネージドサービス | が同期タイプ | で動作 | 設定オプション |
|---|---|---|---|---|---|
| SRG0 | セキュリティサービス L4-L7 (IPSec VPN を除く) を管理します。 | アクティブ/アクティブ モード | セキュリティサービスのステートフル同期 | 障害が発生したノードで処理されたトラフィックは、ステートフルな方法で正常なノードに移行します。 |
|
| SRG1+ | IPsecおよび仮想IPアドレスを関連するセキュリティサービスとともに管理 | アクティブ/バックアップ モード | セキュリティサービスのステートフル同期 | 障害が発生したノードで処理されたトラフィックは、ステートフルな方法で正常なノードに移行します。 |
|
SRG1+ で監視(BFD、IP、またはインターフェイス)オプションを設定する場合、SRG0 で shutdown-on-failure オプションを設定しないことをお勧めします。
Junos OS リリース 23.4R1 以降、マルチノード高可用性設定は複合モードで動作します。SRG(SRG0またはSRG1+)設定を追加または削除する際に、システムを再起動する必要はありません。
積極性の決定と実施
マルチノード高可用性設定では、アクティブ性はノードレベルではなくサービスレベルで判断されます。アクティブ/バックアップの状態は SRG レベルであり、トラフィックはアクティブな SRG に誘導されます。SRG0 は両方のノードでアクティブなままですが、SRG1 は各ノードでアクティブまたはバックアップ状態を維持できます
起動時に特定のノードをアクティブノードとして引き継ぐ場合は、次のいずれかを実行できます。
- アップストリームルーターを設定して、ノードが配置されているパスの設定を含めます。
- アクティブ性の優先度を設定します。
- ノードIDが高いノード(上記の2つのオプションが設定されていない場合)にアクティブなロールを引き受けてもらいます。
マルチノード高可用性設定では、両方のSRXシリーズファイアウォールが最初にフローティングIPアドレスのルートをアップストリームルーターにアドバタイズします。SRXシリーズファイアウォールによってアドバタイズされる2つのパスの間に特定の優先順位はありません。ただし、ルーターは、設定されたメトリックに応じて、パスの1つに独自の設定を持つことができます。
図 12 は、アクティブ性の決定とアクティブ性の適用に関する一連のイベントを示しています。
- 起動すると、デバイスは保留状態になり、継続的にプローブを開始します。デバイスは、フローティングIPアドレス(activeness-probing source IP address)を送信元IPアドレスとして、アップストリームルーターのIPアドレスをIP アドレスとして、アクティブ性判定プローブとして使用します。
-
プローブのIP アドレスをホストしているルーターは、優先ルーティング パスで利用可能な SRXシリーズ ファイアウォールに応答します。次の例では、SRX-1 がアップストリーム ルーターから応答を取得します。
図 13: アクティブ性の決定と適用
-
SRX-1はプローブの応答を受信してから、自身をアクティブロールに昇格させます。SRX-1は、役割の変更を他のデバイスに通知し、アクティブな役割を引き継ぎます。
-
アクティブが判別された後、アクティブノード(SRX-1)は以下を実行します。
- 割り当てられた Floating IP アドレスをホストします。
- 隣接するBGPネイバーに高優先度パスをアドバタイズします。
- トラフィックを描画するために、すべてのリモートおよびローカルルートのアクティブな(より高い)優先パスをアドバタイズし続けます。
- ICLを介して他のノードにアクティブノードのステータスを通知します。
-
もう一方のデバイス(SRX-2)はプローブを停止し、バックアップの役割を引き継ぎます。バックアップノードは、デフォルト(低い)優先度をアドバタイズして、アップストリームルーターがバックアップノードにパケットを転送しないようにします。
マルチノード高可用性モジュールは、ノードがアクティブ ロールに移行すると、SRG のアクティブおよびバックアップの信号ルートをルーティングテーブルに追加します。ノードに障害が発生した場合、ICL はダウンし、現在のアクティブ ノードはアクティブ ロールを解放し、アクティブなシグナル ルートを削除します。これで、バックアップノードがプローブを介して状態を検出し、アクティブなロールに移行します。ルート優先度が入れ替わり、すべてのトラフィックを新しいアクティブノードに向けて駆動します。
ルート優先アドバタイズメント内のスイッチは、SRXシリーズファイアウォールで設定されたルーティングポリシーの一部です。 if-route-exists 条件のアクティブな信号ルートを含むように、ルーティングポリシーを構成する必要があります。
デフォルトゲートウェイの導入の場合
両方のノードが同時に起動する場合、マルチノード高可用性システムは、SRGの設定された優先度値を使用してアクティブ性を判断します。アクティブ性の適用は、アクティブなSRG1+を持つノードが仮想IP(VIP)アドレスと仮想MAC(VMAC)アドレスを所有している場合に行われます。このアクションにより、両側のスイッチに向けてGratuitous ARP(GARP)がトリガーされ、スイッチのMACテーブルが更新されます。
ハイブリッド展開の場合
アクティブ性の強制は、設定された信号ルートが対応するルートアドバタイズメントでアクティブ性を強制する場合、レイヤー3側で行われます。レイヤー2側では、SRXシリーズファイアウォールがスイッチ層へのGratuitous ARP(GARP)をトリガーし、VIPアドレスとVMACアドレスを所有します
フェイルオーバーが発生し、古いバックアップノードがアクティブロールに移行すると、ルート優先度が入れ替わり、すべてのトラフィックが新しいアクティブノードに駆動されます。
アクティブ性、優先度、プリエンプション
SRG1+のプリエンプション優先度(1-254)を設定します。両方のノードでプリエンプション値を設定する必要があります。preempt オプションにより、ノードがフェイルオーバーから回復したときに、トラフィックが常に指定されたノードにフォールバックすることが保証されます。
次のサンプルのように、SRG1+ のアクティブ性、優先度、およびプリエンプションを設定できます。
[edit]
user@host# show chassis high-availability
services-redundancy-group 1 {
preemption;
activeness-priority 200;
}
完全な設定例については、 レイヤー 3 ネットワークにおけるマルチノード高可用性の設定 を参照してください。
ノードが ICL を介して相互に通信できる限り、アクティブ性の優先順位が優先されます。
アクティブ性プローブ設定の構成
Junos OS 22.4R1以降、デフォルトゲートウェイ(スイッチング)、およびマルチノード高可用性のハイブリッド展開では、オプションで以下のステートメントを使用してアクティブ性プローブパラメータを設定できます。
[edit] user@host# set chassis high-availability services-redundancy-group 1 activeness-probe multiplier <> user@host# set chassis high-availability services-redundancy-group 1 activeness-probe minimal-interval <>
プローブ間隔は、プローブが宛先 IP アドレスに送信される間隔を設定します。プローブ間隔は 1000 ミリ秒に設定できます。
乗数の値は、バックアップノードがピアノードからのアクティブ性プローブへの応答を受信できない場合に、バックアップノードがアクティブ状態に移行するまでの期間を決定します。
既定値は 2 で、最小値は 2、最大値は 15 です。
例: 乗数の値を 2 に設定した場合、バックアップ ノードは、2 秒経過してもピア ノードからのアクティブ性プローブ要求への応答を受信しないと、アクティブ状態に移行します。
スイッチングおよびハイブリッド展開で multiplier と minimal-interval を設定できます。
ハイブリッドモード展開では、アクティブ性を判断するためのプローブの宛先 IP の詳細を ( activeness-probe dest-ip ステートメントを使用して) 構成した場合は、 multiplier と minimal-interval の値を構成しないでください。VIP ベースのアクティブ性プローブを使用する場合は、これらのパラメーターを設定します。
耐障害性とフェイルオーバー
マルチノード高可用性ソリューションは、サービスレベルで冗長性をサポートします。サービスレベルの冗長性により、ノード間でコントロールプレーンを同期させるために必要な労力が最小限に抑えられます。
マルチノード高可用性セットアップでアクティブ性が判断されると、ICL を介して後続の高可用性(HA)状態がネゴシエートされます。バックアップノードは、フローティングIPアドレスを使用してICMPプローブを送信します。ICL がアップしている場合、ノードはプローブに対する応答を受け取り、バックアップ ノードとして残ります。ICL がダウンし、プローブ応答がない場合、バックアップ ノードはアクティブ ノードに移行します。
これで、以前のバックアップ ノードの SRG1 がアクティブ状態に移行し、シームレスに動作し続けます。移行が発生すると、フローティング IP アドレスがアクティブな SRG1 に割り当てられます。このようにして、IPアドレスはアクティブノードとバックアップノードの間でフロートし、接続されたすべてのホストに到達可能な状態を維持します。したがって、トラフィックは中断されることなく流れ続けます。
IPSec VPNなど、コントロールプレーンとデータプレーンの両方の状態を必要とするサービスは、ノード間で同期されます。このサービス機能のアクティブノードに障害が発生すると、コントロールプレーンとデータプレーンの両方が同時にバックアップノードにフェイルオーバーします。
ノードは、次のメッセージを使用してデータを同期します。
- ルーティングエンジン - ルーティングエンジン制御アプリケーション メッセージ
- ルーティングエンジン設定関連メッセージ
- データプレーンRTOメッセージ
シャーシ間リンク(ICL)暗号化
マルチノード高可用性では、アクティブノードとバックアップノードは、ルーティングされたネットワークを介して接続された、または直接接続されたシャーシ間リンク(ICL)を使用して相互に通信します。ICL は論理 IP リンクであり、ネットワーク内でルーティング可能な IP アドレスを使用して確立されます。
ノードはICLを使用して、ノード間のコントロールプレーンとデータプレーンの状態を同期します。ICL通信は、共有ネットワークまたは信頼できないネットワークを経由する可能性があり、ICLを介して送信されたパケットは、常に信頼されているとは限らないパスを通過する可能性があります。そのため、IPsec 標準を使用してトラフィックを暗号化することにより、ICL を通過するパケットを保護する必要があります。
IPsec は、ICL の暗号化トンネルを確立することによってトラフィックを保護します。HA リンク暗号化を適用すると、HA トラフィックはセキュアで暗号化されたトンネルを通ってのみノード間を流れます。HAリンク暗号化を使用しないと、ノード間の通信が安全にならない可能性があります。
ICL の HA リンクを暗号化するには、次の手順に従います。
- 次のコマンドを使用して、SRXシリーズファイアウォールにJunos IKEパッケージをインストールします。
request system software add optional://junos-ike.tgz. - HAトラフィックのVPNプロファイルを設定し、両方のノードにプロファイルを適用します。SRXシリーズファイアウォール間でネゴシエートされたIPsec トンネルは、IKEv2プロトコルを使用します。
-
IPSec VPNの設定にha-link-encryptionステートメントが含まれていることを確認してください。例:user@host# set security ipsec vpn vpn-name ha-link-encryption。
ICLの設定には、次のことをお勧めします。
- 飽和状態になりにくいポートとネットワークを使用する
- 専用HAポート(SRXシリーズファイアウォールで利用可能な場合は、コントロールポートとファブリックポート)は使用しない
-
ICLをループバックインターフェイス(lo0)または集合型イーサネットインターフェイス(ae0)にバインドし、最高の耐障害性のためにパスの多様性を確保する複数の物理リンク(LAG/LACP)を持ちます。
-
SRXシリーズファイアウォールの収益イーサネットポートを使用して、ICL接続を設定できます。収益インターフェイスのトランジットトラフィックを高可用性(HA)トラフィックから分離してください。
詳細については、「 マルチノード高可用性の設定 」を参照してください。
ICLのPKIベースのリンク暗号化
Junos OS リリース 22.3R1 以降、マルチノード高可用性の ICL(シャーシ間リンク)で PKI ベースのリンク暗号化がサポートされています。このサポートの一環として、ローカル鍵ペア、ローカル証明書、証明書署名要求などのノード固有のPKIオブジェクトを両方のノードで生成して保存できるようになりました。オブジェクトはローカル ノードに固有であり、両方のノードの特定の場所に格納されます。
ノードローカルオブジェクトにより、ICL暗号化に使用されるPKIオブジェクトと、2つのエンドポイント間に作成されたIPSec VPNトンネルに使用されるPKIオブジェクトを区別できます。
ローカルノードで実行される以下のコマンドを使用して、ノード固有のPKIオブジェクトを操作できます。
| ローカルノードの秘密鍵と公開鍵のペアの生成 | |
| ローカル・デジタル証明書の生成とローカル・ノードへの登録 |
|
| ノード固有の証明書をクリアする | |
| ノード固有のローカル証明書と証明書要求を表示します。 |
マルチノード高可用性のセキュリティデバイスで、自動再登録オプションを設定し、再登録トリガー時にICLがダウンした場合、両方のデバイスがCAサーバへの同じ証明書の登録を個別に開始し、同じCRLファイルをダウンロードします。マルチノード高可用性が ICL を再確立すると、セットアップは 1 つのローカル証明書のみを使用します。バックアップ ノードで user@host> request security pki sync-from-peer コマンドを使用して、アクティブ ノードからバックアップ ノードに証明書を同期する必要があります。
証明書を同期しない場合、ピア ノード間の証明書の不一致の問題は、次の再登録まで続きます。
必要に応じて、ノードでキーペアを生成する前に、両方のノードで TPM(トラステッド プラットフォーム モジュール)を有効にすることができます。 トラステッド プラットフォーム モジュールを使用して SRXシリーズ デバイスでシークレットをバインドするを参照してください。
スプリットブレインの検出と防止
スプリットブレインの検出またはアクティブ性の競合は、2 つのマルチノード高可用性ノード間の ICL がダウンし、両方のノードがピアノードのステータスを収集するために相互に到達できない場合に発生します。
ICMPベースのスプリットブレインプロービング
2台のSRXシリーズデバイスがマルチノード高可用性セットアップの一部であるシナリオを考えてみましょう。SRX-1をローカルノード、SRX-2をリモートノードとみなします。ローカルノードは現在アクティブなロールであり、フローティング IP アドレスをホストしてトラフィックをローカルノードに誘導します。アップストリーム ルーターは、ローカル ノードのパスの優先度が高くなります。
ノード間の ICL がダウンすると、両方のノードがアクティブ性判定プローブ(ICMP プローブ)を開始します。ノードは、プローブの送信元 IP アドレスとしてフローティング IP アドレス(アクティブ性判定 IP アドレス)を、アップストリームルーターの IP アドレスをIP アドレスとして使用します。
ケース1:アクティブノードが稼働している場合
- プローブの宛先 IP アドレスをホストするアップストリーム ルーターは、両方のノードから ICMP プローブを受信します。
- アップストリームルーターは、アクティブノードにのみ応答します。構成のアクティブノードに対するパスの優先度が高くなっているためです
- アクティブ・ノードは、アクティブ・ロールを保持します。
アクティブノードがダウンしている場合:
- リモート・ノードは、アクティブ性判別プローブを再起動します。
- プローブのIP アドレスをホストしているルーターは、(以前のアクティブノードの)より高い優先パスを失い、リモートノードに応答します。
- プローブの結果はリモートノードにとって成功であり、リモートノードはアクティブ状態に移行します。
- 上記のケースで実証されたように、アクティブネス判定プローブとアップストリームルーターでのより高いパスプリファレンスの設定により、1つのノードが常にアクティブなロールを維持し、スプリットブレインが発生するのを防ぎます。
BFD ベースのスプリットブレイン プローブ
Junos OS リリース 23.4R1 では、デフォルトゲートウェイの BFD ベースのスプリットブレインプローブと、マルチノード高可用性のハイブリッドモード導入をサポートしています。
ICL(シャーシ間リンク)の障害は、多くの場合、ネットワークの中断と一貫性のない設定という2つの主な要因に起因します。アクティブネスプローブを使用して、各SRG1+に対してアクティブな役割を果たせるノードを決定できます。プローブ結果に基づいて、ノードの 1 つがアクティブ状態に移行し、このアクションにより、こぼれた頭脳シナリオが防止されます。
BFD ベースのスプリットブレインプローブでは、インターフェイス、最小間隔、および乗数を定義できるため、プローブをよりきめ細かく制御できるようになりました。BFD ベースのスプリットブレインのプローブでは、SRG が設定され、機能を開始した直後にプローブが開始されます。デフォルトのICMPベースのスプリットブレインプローブでは、プローブはICLリンクがダウンした後にのみ開始されます。
これに比べて、BFD ベースのプローブは、以下の点ではるかに事前対応型であり、スプリットブレインのシナリオを防ぐための迅速な応答を保証します。
-
プローブは、SRG 設定のポストを直接開始します。
-
ICL BFD とスプリット ブレイン プローブの両方が同時に壊れた場合、バックアップ ノードがただちにアクティブ ロールを引き継ぎ、VIP を引き継ぎます。
これにより、スプリットブレインシナリオを防ぐための迅速な対応が可能になります。
それはどのように機能しますか?
ICL がダウンし、両方のデバイスが起動している場合、ノードは最初に HOLD 状態になり、ピア ノードが立ち上がって接続されるのを待ちます。何らかの理由で他のノードが起動しない場合、システムはネットワーク内の別のデバイスでホストされているIPアドレスへのスプリットブレインプローブを開始します。プロセスが正常に完了すると、1 つのノードがアクティブに移行し、もう 1 つのノードがバックアップに移行します。プローブが成功する前に、パス監視の失敗/内部ハードウェアの監視の失敗が発生した場合、両方のノードが不適格になり、スプリットブレインのシナリオが防止されます。
スプリット・ブレイン・プローブが何らかの理由で失敗した場合、ノードは HOLD 状態のままで、プローブを続行します。スプリットブレインプローブIPは、ネットワーク上で常に利用可能でなければなりません。IPsecを除き、ルーティングが使用可能である限り、たとえHOLD状態であっても、SRX上で他のすべてのアプリケーショントラフィックが失われることはありません。
両方のノードが保留状態または不適格状態の場合、ノードが再びアクティブ/バックアップになるまで、トラフィックは転送されません。
手記:
- スプリットブレインは、パスモニタープローブとは異なるアクティブネスプローブに基づいています。これは、MNHAノードでICL/通信が切断された場合にのみトリガーされます
- ノード間のシャーシ間リンク(ICL)が切断されると、両方のノードがスプリット ブレイン プローブを開始します。アクティブノードは、プローブが失敗しない限りマスターシップを維持します。SRXシリーズノードが正常であれば、継続的な到達性を保証するパスでプローブIPをホストすることを推奨します。状態変化がトリガーされるのは、現在のアクティブ ノードからのプローブが失敗し、現在のバックアップ ノードからのプローブが成功した場合のみです。
- スイッチング モードおよびハイブリッド モードでは、トラフィック ステアリングは ACTIVE 状態でのみ機能する仮想 IP(VIP)を使用します。システムは、スプリット ブレインの状況を解決するために MNHA ピアをプローブするため、ホールド タイマーが切れた後も HOLD 状態にとどまらないでください。
ICMPベースとBFDベースのプローブの違い
次の表は、スプリットブレイン検出におけるICMPベースのプローブとBFDベースのプローブの違いを示しています。
| パラメーター |
ICMPベースのプローブ |
BFD ベースのプローブ |
|---|---|---|
| プローブタイプ | ICMP パケット | BFD パケット、シングル ホップ BFD |
| 最小間隔 | 1000ミリ秒 | SRXシリーズファイアウォールの最小BFD間隔は、プラットフォームによって異なります。 例えば: SPC3を使用したSRX5000ラインファイアウォール、間隔は100ミリ秒です。 SRX4200、間隔は300msです。 |
| SRGバックアップノードプローブ | はい | はい |
| SRGアクティブノードプローブ | いいえ | はい |
| ICLダウン時のSRGスプリットブレインの解決 | ICL がダウンした場合のみ。 | SRG を設定した後。 |
| 無理です | 可能 | |
| 構成オプション |
show chassis
high-availability services-redundancy-group 1
activeness-probe
dest-ip {
192.168.21.1;
src-ip 192.168.21.2;
} |
show chassis
high-availability services-redundancy-group 1
activeness-probe
bfd-liveliness {
source-ip 192.168.21.1; (inet address of the local SRX sub interface)
destination-ip 192.168.21.2; (inet address of the peers SRX sub interface)
interface xe-0/0/1.0;
} |
以下の図は、スプリットブレイン検出用のICMPベースプローブとBFDベースプローブの設定オプションを示しています。
のActiveness-Probes設定
ICMP ベースのプローブと BFD ベースのプローブは相互に排他的です。
ハイブリッドモードとデフォルトゲートウェイの導入では、次の 2 つのレベルで activeness-probe の間隔としきい値を設定できます。
-
グローバルレベル(ICMPベースのスプリットブレインプローブに適用可能)
-
BFD-LivelinessレベルはBFDスプリットブレインプローブに固有です。BFD ベースのプローブを設定する場合、
activeness-probeステートメントでグローバルminimum-intervalとmultiplierオプションを設定しないでください。
デフォルトゲートウェイ導入用にアクティブネスプローブを設定するには、両方のノード(ローカルとピア)でプライマリ仮想IP(VIP1)アドレスインターフェイスを使用して、アクティブネスプローブを設定します。宛先 IP はピアノードからのもので、送信元 IP はローカルノードからのものです。両方の VIP は、同じインデックス値を持つ必要があります。IPアドレスは、SRXシリーズファイアウォールのLANインターフェイスに割り当てられたinetアドレスである必要があります。
スプリットブレインプローブの設定
マルチノードの高可用性セットアップでスプリットブレインプローブを設定するには、以下の方法があります。-
ルーティングとハイブリッドモード—アクティブ性を判断するためのプローブの宛先 IP の詳細を(
activeness-probe dest-ipステートメントを使用して)設定した場合、乗数と最小間隔の値は設定しないでください。VIP ベースのアクティブ性プローブを使用する場合は、これらのパラメーターを設定します。[edit] [set chassis high-availability services-redundancy-group 1 activeness-probe dest-ip <neighbor_ip_address> src-ip <srx_anycast_IP>]
-
ハイブリッドおよびスイッチングモード—ICMPを使用したレイヤー2スプリットブレインプローブ。プローブタイプ ICMP を使用し、次のステートメントを使用して間隔とタイムアウトのしきい値を設定します。
[edit] [set chassis high-availability services-redundancy-group 1 activeness-probe minimum-interval <interval> multiplier <integer>
-
ハイブリッドおよびスイッチングモード—BFDを使用したレイヤー2スプリットブレインプローブ。プローブ タイプ BFD を使用し、設定された BFD 最小間隔に基づいて秒以下になることができるタイムアウトしきい値を設定します。
[edit] [set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness source-ip <ip-address> destination-ip <ip-address> interface <vip1_ifl_interface> minimum-interval <interval> multiplier <integer>
図 17 にトポロジーの例を示します。2つのSRXシリーズファイアウォールは、信頼側と信頼解除側で隣接するルーターに接続され、BGPネイバーシップを形成しています。暗号化された論理シャーシ間リンク(ICL)は、ルーティングされたネットワークを介してノードを接続します。ノードは、ネットワーク経由でルーティング可能な IP アドレス (フローティング IP アドレス) を使用して相互に通信します。
のためのマルチノード高可用性構成
SRX-1をローカルノード、SRX-2をリモートノードとみなします。ローカル ノードは現在アクティブなロールであり、アップストリーム ルーターにはローカル ノードのより高い優先度パスがあります。
activeness-probe の場合、以下のオプションを設定する必要があります。
-
元 IP アドレス:ローカル ノードの SRG1 の仮想 IP アドレス 1(VIP1)を使用します。
-
宛先 IP アドレス:ピア ノードの SRG1 の VIP1 を使用します。
-
インターフェイス:VIP1 に関連付けられたインターフェイス
この例では、BFD のライブ性のために、仮想 IP(VIP)アドレス(192.168.21.1)とインターフェイス xe-0/0/1.0 を割り当てます。ここでは、送信元と宛先のIPアドレスとインターフェイスを指定して、BFDベースのスプリットブレインプローブを設定します。
ノードは、SRG1の仮想IPアドレス(VIP1)に関連付けられたインターフェイスのファミリーinetアドレスを使用します。
どちらのノードも、SRG が動作を開始するとすぐに、アクティブネス決定プローブ(BFD ベースのプローブ)を開始します。
BFD ベースのスプリットブレインプローブでは、以下を行う必要があります。
- 両方のノードで同じSRGに対して、一致する送信元と宛先のIPアドレスを設定します。
- スプリットブレインのプローブの結果としてアクティブノードを決定するために、
activeness-priorityオプションを設定します。
次の表は、マルチノード高可用性セットアップにより、ICLがダウンした場合にBFDベースのプローブでスプリットブレイン状況がどのように解決されるかを示しています。ノードの状態とプローブの結果に応じて、マルチノード高可用性システムは、アクティブなロールを引き受けるノードを選択します。
表 6 は、ICL がダウンした場合に、マルチノード高可用性セットアップによって BFD ベースのプローブによるスプリット ブレインの状況がどのように解決されるかを示しています。ノードの状態とプローブの結果に応じて、マルチノード高可用性システムは、アクティブなロールを引き受けるノードを選択します。
この例では、ノード 1 の SRG1 のアクティブ優先度が高いと仮定しています。
| ノード 1 の状態 | ノード1の状態をプローブ | ノード 2 の状態 | ノード 2 の状態のプローブ | SRG1のアクティブ状態に遷移するノード |
| 能動 | 下 | 不適格 | プローブなし | ノード1 |
| 能動 | 上 | バックアップ | 上 | ノード1 |
| 能動 | 上 | 能動 | 上 | ノード 1 (タイ ブレーカー) |
| バックアップ | 下 | 不適格 | プローブなし | ノード1 |
| バックアップ | 上 | バックアップ | 上 | ノード 1 (タイ ブレーカー) |
| バックアップ | 上 | 能動 | 上 | ノード2 |
| 不適格 | プローブなし | 不適格 | プローブなし | どちらのノードも |
| 不適格 | プローブなし | バックアップ | 下 | ノード2 |
| 不適格 | プローブなし | 能動 | 下 | ノード2 |
サンプル構成
ノード1:
set chassis high-availability services-redundancy-group 1 activeness-priority 1 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness destination-ip 192.168.21.2 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness source-ip 192.168.21.1 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness interface xe-0/0/1.0 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness minimum-interval 300 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness multiplier 3
ノード2:
set chassis high-availability services-redundancy-group 1 activeness-priority 200 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness destination-ip 192.168.21.1 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness source-ip 192.168.21.2 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness interface xe-0/0/1.0 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness minimum-interval 300 set chassis high-availability services-redundancy-group 1 activeness-probe bfd-liveliness multiplier 3
検証
-
(BFDベースのプローブ)show chassis high-availability services-redundancy-group 1コマンドを使用して、デバイスに設定されているスプリットブレインプローブのタイプを確認します。 (ICMPベースのプローブ)user@host> show chassis high-availability services-redundancy-group 1 .. Split-brain Prevention Probe Info: DST-IP: 192.168.21.2 SRC-IP: N/A Routing Instance: default Type: BFD Probe Interval: 300ms Multiplier: 3 Status: RUNNING Result: REACHABLE Reason: N/A ..user@host> show chassis high-availability services-redundancy-group 1 .. Split-brain Prevention Probe Info: DST-IP: 192.168.21.2 SRC-IP: 192.168.21.1 Routing Instance: default Type: ICMP Probe Status: NOT RUNNING Result: N/A Reason: N/A .. -
show bfd sessionコマンドを使用して、BFD ベースのプローブ ステータスかどうかを確認します。user@host> show bfd session Detect Transmit Address State Interface Time Interval Multiplier 192.168.0.2 Up 0.300 0.100 3 192.168.21.2 Up xe-0/0/1.0 0.300 0.100 3 1 sessions, 1 clients Cumulative transmit rate 0.5 pps, cumulative receive rate 0.0 ppsこのサンプルでは、BFD ベースのスプリットブレインプローブがインターフェイス xe-0/0/1.0 に対して実行されていることがわかります。
-
BFD ベースのプローブの詳細を取得するには、
show chassis high-availability services-redundancy-group 1コマンドを使用します。user@host> show chassis high-availability services-redundancy-group 1 SRG failure event codes: BF BFD monitoring IP IP monitoring IF Interface monitoring CP Control Plane monitoring Services Redundancy Group: 1 Deployment Type: ROUTING Status: ACTIVE Activeness Priority: 200 Preemption: ENABLED Process Packet In Backup State: NO Control Plane State: READY System Integrity Check: N/A Failure Events: NONE Peer Information: Peer Id: 1 Status : N/A Health Status: SRG NOT CONFIGURED Failover Readiness: UNKNOWN Activeness Remote Priority: 100
変更履歴
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer を使用します。