サービス冗長デーモン
サービス冗長デーモンの概要
サービス冗長性デーモンの概要
サービス冗長デーモン(srd)は、MS-MPCおよびMS-MICを搭載したMXシリーズルーター上の複数のゲートウェイで冗長性が発生するタイミングを決定できる設定可能なイベントを提供します。これにより、監視対象のイベントに基づいてプライマリロールのスイッチオーバーを管理できます。監視対象イベントに基づいて、以下のような冗長性を設定できます。
リンクダウンイベント。
FPCとPICを再起動します。
ルーティングプロトコルデーモン(rpd)が終了し、再起動します。
ピア ゲートウェイ イベント(プライマリ ロールの取得または解放の要求、警告のブロードキャストの要求など)。
サービス冗長デーモンのコンポーネント
次の構成可能なコンポーネントが srd 処理を制御します。
Redundancy Event- 監視対象のクリティカル イベントで、SRD が冗長ピアのプライマリ ロールを取得または解放したり、警告専用イベントをトリガーしたり、信号ルートを追加または削除したりします。監視対象のイベントには、インターフェイスまたはリンクダウンイベント、rpd イベント、ピアからのプライマリロールの獲得または解放イベントなどがあります。
Redundancy Policy- 冗長性イベントが発生したときに実行する一連のアクションを定義するポリシー。利用可能なアクションには、プライマリロールの取得または解放、および信号ルートの追加または削除が含まれます。
Redundancy Set- 共通の冗長性ポリシーを持つ 1 つ以上のサービス セットの集合。冗長セットは、2 つ以上のシステム・ゲートウェイに適用されます。ゲートウェイの 1 つだけがプライマリで、ピアは常にスタンバイ状態です。冗長性ポリシーは、srdがトリガーイベントを検出したときに、冗長性セットに対して実行するアクションを定義します。
Redundancy Group- 冗長セットと冗長グループの間には、1 対 1 の関係が存在します。1つの冗長性セットは、1つの冗長性グループのみに含めることができます。
Signal routes- プライマリ ロールの状態の変化に基づいて srd によって追加または削除されるスタティック ルート。
Routing Policies- 条件を使用して
if-route-exists
、信号ルートの有無に基づいてルートをアドバタイズするように設定されたポリシー。VRRP (Virtual Router Redundancy Protocol) route tracking- TA標準のJunos OS VRRP機能(オプションのSRDコンポーネント)。設定に含まれるルーティングインスタンスのルーティングテーブルに到達可能なルートが存在するかどうかを追跡し、追跡されたルートの到達可能性に基づいてVRRPグループの優先度を動的に変更して、新しいプライマリルーター選出をトリガーします。追跡するルートは信号ルートです。
サービス冗長性デーモンの制約
srd 処理設定には、以下の制約が適用されます。
冗長性セットと冗長性グループの間には、1 対 1 の関係が存在します。1つの冗長性セットは、1つの冗長性グループのみに含めることができます。
1 つの冗長性ポリシーは 1 つの冗長性セットにのみ含めることができますが、1 つの冗長性セットに複数の冗長性ポリシーを含めることができます。例えば、冗長セットRS1は、冗長性ポリシーRP1およびRP2を含むことができる。冗長性ポリシー RP1 および RP2 は、RS1 以外の冗長性セットに含めることはできません。
1つの冗長性イベントを1つの冗長性ポリシーの一部にし得るものは限られていますが、1つの冗長性ポリシーは複数の冗長性イベントを持つことができます。例えば、冗長性ポリシーRP1は、冗長性イベントRE1およびRE2を含むことができる。冗長性イベント RE1 および RE2 は、RP1 以外の冗長性ポリシーに含めることはできません。
1 つの監視対象インターフェイスまたはリンクは 1 つの冗長性イベントにのみ属すことができますが、1 つの冗長性イベントに複数の監視対象インターフェイスを含めることができます。
1 つのサービス セットは 1 つの冗長セットにのみ含めることができますが、1 つの冗長セットに複数のサービス セットを含めることができます。
下位のIPアドレスで設定されているシャーシであるゲートウェイ1がプライマリシャーシの場合、SRDを非アクティブ化すると、ゲートウェイ2へのスイッチオーバーが発生します。ゲートウェイ2(上位のIPアドレスで設定されたシャーシ)がプライマリシャーシの場合、SRDを非アクティブ化すると、スイッチオーバーは発生しません。
特定の冗長性セットは 1 つのゲートウェイでのみアクティブにできますが、すべての冗長性セットを同じゲートウェイでアクティブにする必要はありません。例えば、冗長性セットAをゲートウェイ1でアクティブにし、冗長性セットBをゲートウェイ2でアクティブにすることができます。
サービス冗長デーモンの操作
srd は次のように動作します。
srdはルーティングエンジンで実行されます。設定された冗長性イベントを継続的に監視します。
冗長性イベントが検出されると、srdは次の処理を行います。
冗長性ポリシーで指定された信号ルートを追加または削除します。
次に優先されるスタンバイ ゲートウェイにサービスを切り替えます。
必要に応じてステートフル同期の役割を更新します。
結果として生じるルート変更の原因:
このルートに接続されたルーティング ポリシーは、ルートを異なる方法でアドバタイズします。
VRRP を使用して、アドバタイズされた優先度を変更します。
スイッチオーバープロセスを要約すると、
重大なイベントが発生します。
SRDは信号ルートを追加または削除します。
ルーティング ポリシーは、ルートを異なる方法でアドバタイズします。VRRP は、アドバタイズされた優先順位を変更します。
サービスは、次に優先されるスタンバイ ゲートウェイに切り替わります。
ステートフル同期はそれに応じて更新されます。
ルーティング優先度の順序は、サービスプライマリロールの順序と一致している必要があります。
サービス冗長性デーモンの設定
SRD処理を設定する前に、プライマリとスタンバイの役割を交換できるゲートウェイ間のピア関係について説明する、 MC-LAGのICCPの設定について理解しておくことをお勧めします。
以下の設定ステートメントを使用します。
-
redundancy-policy
[edit policy-options]
階層レベルで -
redundancy-event
[edit event-options]
階層レベルで -
redundancy-set
[edit services]
階層レベルで
設定された冗長性イベントが発生したときに実行するアクションは、冗長性ポリシーで定義されます。冗長性ポリシーは冗長性セットに関連付けられています。これらは、サービス セットに関連付けられたルールに似ています。冗長性セットは、冗長グループ ID によって冗長グループに関連付けられます。冗長性グループの詳細は、基盤となるシャーシ間通信プロトコルデーモン(iccpd)設定によって定義されます。サービスセットと冗長セットは、サービスセット設定の ステートメントを通じて redundancy-sets
関連付けられます。
以降の手順では、冗長性ポリシーに設定および関連付けられている冗長性イベント。冗長性ポリシーは、プライマリロールの解放またはプライマリロールの取得の適切なアクションを実行するために、冗長セットに関連付けられています。プライマリロールリリースアクションを実行するポリシーにイベントが関連付けられている場合、srdは冗長ピアの状態が準備完了か警告かをチェックします。スタンバイが警告状態の場合、プライマリ ロール解放アクションは失敗します。ヘルスチェックを復元し、プライマリロールのリリースアクションを手動で実行できます。
どのような場合でもプライマリロールを解放するには、ポリシーアクション release-mastership-force
を として設定するか、運用CLIで コマンドを使用します request services redundancy-set redundancy-set redundancy-event redundancy-event trigger force
。設定で オプションが指定されている release-mastership-force
場合でも、CLI コマンドの使用 request services redundancy-set redundancy-set redundancy-event redundancy-event trigger force
が優先され、プライマリ ロールが解放されます。同様に、冗長性イベントがプライマリロールの取得アクションを持つポリシーで設定されている場合、srdはローカル冗長性セットの状態をチェックします。待機状態の場合、CLI コマンドを使用しない限り、 request services redundancy-set redundancy-set redundancy-event redundancy-event trigger force
アクションは失敗します。ヘルスチェックが失敗する理由を特定し、失敗を修正するためのアクションを実行することをお勧めします。その後、冗長セットの状態が STANDBY に戻ると、このプライマリロール変更アクションは成功します。
特定の冗長性セットは 1 つのゲートウェイでのみアクティブにできますが、すべての冗長性セットを同じゲートウェイでアクティブにする必要はありません。例えば、冗長性セットAをゲートウェイ1でアクティブにし、冗長性セットBをゲートウェイ2でアクティブにすることができます。
srdを設定するには、次の構成タスクを推奨される順序で実行します。プライマリ ロールが変更される可能性がある 2 つのゲートウェイの構成が表示されます。
冗長性イベントの設定
冗長性イベントを設定するには:
冗長性ポリシーの設定
サービス冗長性ポリシーは、監視対象の冗長性イベントによってトリガーされるアクションを指定します。
冗長性ポリシーを設定するには:
次に、2 つのピア ゲートウェイの冗長性ポリシーを設定する例を示します。
user@gateway1# edit policy-options redundancy-policy ACQU_MSHIP_POL redundancy-events ACQU_MSHIP_MANUAL_EV then [edit policy-options redundancy-policy ACQU_MSHIP_POL redundancy-event ACQU_MSHIP_MANUAL_EV then] user@gateway1# set acquire-mastership add-static-route 10.45.45.0/24 receive routing-instance SGI-PRIVATE user@gateway1# top user@gateway1# edit policy-options redundancy-policy RELS_MSHIP_POL redundancy-events PEER_MSHIP_ACQU_EV then [edit policy-options redundancy-policy RELS_MSHIP_POL redundancy-events PEER_MSHIP_ACQU_EV then] user@gateway1# set release-mastership-force delete-static-route 10.45.45.0/24 receive routing-instance SGI-PRIVATE
user@gateway2# edit policy-options redundancy-policy RELS_MSHIP_POL redundancy-events PEER_MSHIP_ACQU_EV then [edit policy-options redundancy-policy ACQU_MSHIP_POL redundancy-events ACQU_MSHIP_MANUAL_EV then] user@gateway2# set release-mastership-force add-static-route 10.45.45.0/24 receive routing-instance SGI-PRIVATE user@gateway2# top user@gateway2# edit policy-options redundancy-policy ACQU_MSHIP_POL redundancy-events PEER_MSHIP_RELS_EV then [edit policy-options redundancy-policy ACQU_MSHIP_POL redundancy-events PEER_MSHIP_RELS_EV then] user@gateway2# set acquire-mastership delete-static-route 10.45.45.0/24 receive routing-instance SGI-PRIVATE user@gateway2# top user@gateway2# edit policy-options redundancy-policy WARN_POL redundancy-events WARN_EV then [edit policy-options redundancy-policy WARN_POL redundancy-events WARN_EV then] user@gateway2# set broadcast-warning
冗長セットとグループの設定
srd が使用する冗長グループ ID は、サービス冗長グループの設定で同じ冗長グループ ID を使用することにより、既存の ICCP 設定階層を通じて ICCPD デーモン(iccpd)用に設定されたグループ ID に関連付けられます。
iccp { local-ip-addr 10.1.1.1; peer 10.2.2.2 { redundancy-group-id-list 1; liveness-detection { minimum-interval 1000; } } }
冗長性セットを設定するには:
冗長性をサポートするルーティング ポリシーの設定
冗長性をサポートするルーティング ポリシーを設定するには:
サービスセットの設定
サービスセットのサービスのステートフル同期を指定します。
[edit] user@gateway1# set services service-set service-set-name redundancy-set-id redundancy-set
例えば:
[edit] user@gateway1# set services service-set CGN4_SP-7-0-0 redundancy-set-id 1
サービス冗長性デーモンスクリプトを使用したゲートウェイのステータスの表示および変更
サービス冗長性デーモン(SRD)スクリプトを実行して、ゲートウェイの状態の確認、ゲートウェイ上のすべてのインターフェイスの無効化または有効化、ゲートウェイからのサービス関連の MIB 情報の引き出しを行うことができます。
これらのスクリプトを使用する前に、有効にする必要があります。
srdスクリプトを有効にします。
[edit] user@host# set system scripts op file sdg-inservice.slax user@host# set system scripts op file sdg-oos.slax user@host# set system scripts op file services-oids.slax user@host# set system scripts op file srd-status.slax user@host# set system scripts op max-datasize 512m
root ユーザーとして srd スクリプトを使用します。