EVPNデュアルホーミングでのバックアップ稼働検知
デフォルトでは、EVPNネットワーク内のスパインアンドリーフデバイスはコア分離機能を実装します。デバイスがすべてのEVPN BGPピアリングセッションを失うと、コア分離機能がトリガーされます。LACPを使用して、コア分離機能はすべてのL2 ESI LAGインターフェイスをシャットダウンします。
状況によっては、コア分離機能によって好ましい結果が得られることもあります。また、コア分離機能によって望ましくない結果が生じることもありますが、これを無効にすることで防止できます。ただし、デュアルホームアーキテクチャでは、片方または両方のピアでコア分離機能を無効にすると、他の問題が発生する可能性があります。これらの問題に対処するには、デフォルトのコア分離機能とともにノードライブネス検出を設定します。
EVPNデュアルホームピアのバックアップライブネス検出機能をサポートする製品の全リストについては、機能エクスプローラーを参照してください。
EVPNコア分離設定
図1は、コア分離のデフォルト設定で、2台のスパインデバイスを使用したEVPN-VXLANトポロジーを示しています。リーフデバイスとして動作するスイッチは、ESI-LAGインターフェイスを介してスパインデバイスに対してアクティブ/アクティブモードでマルチホームされます。
スパイン0とスパイン1の間のリンクがダウンすると、最後に確立されたBGPピアリングセッションもダウンします。デフォルトのコア分離機能は、LACPをトリガーして、スパイン0と1のリーフに面したインターフェイスをスタンバイモードに設定します。これにより、両方のリーフデバイスとの間のデータトラフィックがドロップされ、データセンター内のトラフィックが停止します。これは望ましくない結果です。
図2は、no-core-isolationを設定した2台のスパインデバイスを使用したEVPN VXLANトポロジーを示しています。リーフデバイスとして動作するスイッチは、ESI-LAGインターフェイスを介してスパインデバイスに対してアクティブ/アクティブモードでマルチホームされます。
コア分離機能を無効にすると、以下の問題が発生する可能性があります。
-
両方のスパインデバイスに
no-core-isolationを設定すると、BGPがダウンしていてもリーフデバイスへのリンクはアップしたままになります。ただし、ARP/ND解決に失敗するため、L3トラフィックは失敗する可能性があります。スパイン0がARP/NDリクエストを生成すると、ARP/ND応答がスパイン1にロードバランシングされる可能性があります。しかし、BGPがダウンしているため、コントロールプレーンは同期せず、ARP解決に失敗します。
-
no-core-isolationがスパイン0にのみ設定されている場合、BGPがダウンするとスパイン1のみがリーフに面したインターフェイスをシャットダウンします。ただし、スパイン0がダウンした場合でも、スパイン1はリーフに面したインターフェイスをダウンさせ、両方のリーフデバイスとの間のデータトラフィックを停止します。
図3は、node-detection(バックアップライブネス検出)を設定した2台のスパインデバイスを使用したEVPN-VXLANトポロジーを示しています。リーフデバイスとして動作するスイッチは、ESI-LAGインターフェイスを介してスパインデバイスに対してアクティブ/アクティブモードでマルチホームされます。
ノードライブネス検出では、EVPNピア間に設定されたBFDが使用され、片側はBFDおよびBGPステータスに基づいてアクションを実行するように設定されています。このアクションにより、トラフィック転送がネットワークを通じて継続されます。BFDライブネスセッションは、標準インターフェイス上、またはEVPN BGPピアデバイス間の管理インターフェイス上で実行できます。スパイン間のリンクがダウンしている場合でも、ノードの稼働状況を検出する必要があります。そのため、ノードの稼働状況の検出は、別のネットワークで実行する必要があります。
Junos OS Evolvedプラットフォームは、管理ポートを介したBFDをサポートしていません。
Backup Liveness Detectionのメリット
-
コア分離イベント中に、デュアルホーム環境のデバイスのいずれかでリーフに面したリンクをアップ状態に維持できます。
-
スパインデバイスでBGP障害が発生しても、内部トラフィックが継続することを保証します。
行動
ノードのライブネス機能は、次のように動作します。BGPセッションがアップしているとき、両方のピアはリーフに面したESI-LAGインターフェイスをアップした状態を維持します。BGPセッションがダウンしているが、BFDセッションが稼働している場合。 action を設定したスパインでは、リーフに面したESI-LAGインターフェイスがダウンします。 action が設定されていないスパインは、ESI-LAGがリーフデバイスを上に向いた状態に保ちます。ノードの稼働を追跡するBGPセッションとBFDセッションがダウンしている場合は、スパインデバイスの1つがダウンしたことを示しています。その後、 action が設定されたスパインは、リーフに面したESI-LAGインターフェイスがアクティブであれば、それを起動したままにします。BFDセッションが復旧すると、 action が設定されたスパインは、リーフに面したESI-LAGインターフェイスを再びダウンさせます。
表1は、異なるシナリオにおける各スパインデバイスの状態をまとめたものです。設定されるアクションは、 laser-off または trigger-node-isolationのいずれかになります。アクションとして laser-off を使用すると、ESI-LAGに面したリーフは、コア絶縁時にレーザーオフ信号を受信します。設定されたアクションが trigger-node-isolation の場合、L2プロセスはリーフに面したESI-LAGリンクをリンクダウン状態にします。
laser-off設定は、QFXシリーズデバイスではサポートされていません。ただし、Junosリリースによっては、設定エラーや、これらのプラットフォームではサポートされていないという警告をトリガーせずに
laser-offステートメントを設定できます。
| BGPの状態 |
ノードライブネスBFD状態 |
|
|
コメント |
|---|---|---|---|---|
| 上->下 |
ダウン |
ESI-LAGが稼働のままになる |
ESI-LAGが稼働のままになる |
例えば、スパイン0では、BGPとライブネスの両方がダウンしているため、スパイン1は利用できません。アクション設定に関係なくESILAGを維持 |
| 上->下 |
アップ |
ESI-LAGをダウンさせる |
ESI-LAGが稼働のままになる |
BGPの状態はダウンしています。しかし、BFDは立ち上がっています。これは、スプリットブレインシナリオを示しています。ESI LAGは1つだけアップする必要があります。したがって、アクションを設定したデバイス上のESI LAGをシャットダウンします。 |
| ダウン->アップ |
ダウン |
ESI LAGがダウンしている場合は、起動します。 |
ESI-LAGが稼働のままになる |
BGPステータスが優先されます |
| ダウン->アップ |
アップ |
ESI LAGがダウンしている場合は、起動します。 |
ESI-LAGが稼働のままになる |
BGPステータスが優先されます |
制限事項
-
Junos OS Evolvedプラットフォームは、管理ポート経由でプロトコルパケットを送信できないJunos OS Evolvedの制限により、管理ポートを介したBFDをサポートしていません。
-
EVPNノードのライブネス検出は、マルチホップBFDをサポートしていません。直接接続されたインターフェイス上のノードライブネス検出を設定します。
-
no-core-isolationの設定は、設定node-detection上書きします。
EVPNバックアップライブネス検出の設定
EVPNピアのバックアップライブネス検出機能を有効にするには、以下の要素を設定します。
1. 1つのピアにのみactionを設定し、両方のEVPNピアでノード検出を設定します。
-
actionが設定されたピア1[edit] set protocols evpn node-detection next-hop interface; set protocols evpn node-detection action (laser-off | trigger-node-isolation); set protocols evpn node-detection bfd-liveness-detection minimum-interval interval; set protocols evpn node-detection bfd-liveness-detection multiplier number; set protocols evpn node-detection bfd-liveness-detection neighbor ip address;
-
actionが設定されていないピア2 -
[edit] set protocols evpn node-detection next-hop interface; set protocols evpn node-detection bfd-liveness-detection minimum-interval interval; set protocols evpn node-detection bfd-liveness-detection multiplier number; set protocols evpn node-detection bfd-liveness-detection neighbor ip address;
2. laser-off ステートメントを使用する場合は、ESI LAGのメンバーに対して asychronous-notification を設定する必要があります。
[edit] set interfaces interface gigether-options asynchronous-notification;
3. trigger-node-isolation ステートメントを使用する場合、リンクダウンアクションで ネットワーク分離 を設定し、コア分離で必要なインターフェイスをダウンさせる必要があります。
[edit] set protocols network-isolation group name detection hold-time up milliseconds; set protocols network-isolation group name detection service-tracking core-isolation; set protocols network-isolation group name service-tracking-action (link-down | lacp-oos);
ステータスの確認
show bfd session コマンドを使用して、ピアデバイスからBFDを表示することができます。
> show bfd session
Detect Transmit
Address State Interface Time Interval Multiplier
1.0.0.2 Up ge-0/0/3.0 0.300 0.100 3
1 sessions, 1 clients
Cumulative transmit rate 10.0 pps, cumulative receive rate 10.0 pps
actionセットがlaser-offされている場合、システムログメッセージで状態情報を調べることができます。
> show log messages | match isolat Sep 6 17:48:55 Core1 18956[EVPN_CORE_ISOLATED]: Sep 6 17:48:55 Core1 18956[EVPN_vmm _ISOLATED]: Sep 6 17:48:59 Core1 18956[EVPN_CORE_ISOLATED]: Sep 6 17:48:59 Core1 18956[EVPN_CORE_ISOLATED]: Sep 6 17:49:55 Core1 18956[EVPN_CORE_ISOLATION_CLEARED]: Sep 6 17:50:05 Core1 18956[EVPN_CORE_ISOLATION_CLEARED]: Sep 6 17:50:05 Core1 18956[EVPN_CORE_ISOLATION_CLEARED]: