ルーティングエンジン冗長性の設定
以下の手順と例に従って、ルーティングエンジンの冗長性を設定します。
次のセクションのタスクを完了するには、 re0 および re1 設定グループを定義する必要があります。設定グループの詳細については、 Junos OS CLIユーザーガイドを参照してください。
デフォルト ルーティングエンジン プライマリ ロールの変更
ルーティング エンジンを 2 つ搭載したルーターでは、どちらのルーティングエンジンをプライマリで、どちらをバックアップのルーティング エンジンにするかを設定できます。デフォルトでは、スロット0のルーティングエンジンがプライマリ(re0)で、スロット1のがバックアップ(re1)です。
ルーティングエンジンを2台搭載したシステムでは、両方のルーティングエンジンを同時にプライマリに設定することはできません。この設定では、コミット・チェックが失敗します。
デフォルトの設定を変更するには、[edit chassis redundancy]
階層レベルでrouting-engine
ステートメントを含めます。
[edit chassis redundancy] routing-engine slot-number (master | backup | disabled);
slot-number は 0 または 1 です。ルーティングエンジンをプライマリとして設定するには、 master オプションを指定します。バックアップとして設定するには、 バックアップ オプションを指定します。ルーティングエンジンを無効にするには、 disabled オプションを指定します。
プライマリとバックアップのルーティングエンジンを切り替えるには、 ルーティングエンジンのプライマリロールの手動切り替えを参照してください。
バックアップ ルーティングエンジンへの自動フェイルオーバーの設定
以下のセクションでは、プライマリ ルーティングエンジンで特定の障害が発生した場合に、バックアップ ルーティングエンジンへの自動フェイルオーバーを設定する方法について説明します。
- パケット転送を中断することなく
- プライマリ ルーティングエンジンのハード ディスク エラー検出時
- VMとRE間の壊れたLCMD接続の検出時
- プライマリ ルーティングエンジン からのキープアライブ信号損失の検出について
- プライマリルーティングエンジンのem0インタフェース障害検知時
- ソフトウェアのプロセスが失敗した場合
パケット転送を中断することなく
ルーティングエンジンを2つ搭載しているルーターでは、グレースフルルーティングエンジンスイッチオーバー(GRES)を設定できます。グレースフルスイッチオーバーが設定されている場合、ソケットの再接続はパケット転送を中断することなくシームレスに行われます。グレースフル ルーティングエンジン スイッチオーバーの設定方法については、「 グレースフル ルーティングエンジン スイッチオーバーの設定」を参照してください。
プライマリ ルーティングエンジンのハード ディスク エラー検出時
バックアップ ルーティングエンジンを構成した後に、プライマリ ルーティングエンジンからハード ディスク エラーが検出された場合、自動的にプライマリ ロールを担うように指示できます。この機能を有効にするには、[edit chassis redundancy failover]
階層レベルでon-disk-failure
ステートメントを含めます。
[edit chassis redundancy failover] on-disk-failure;
[edit chassis redundancy]
階層レベルのon-disk-failure
ステートメントは、Junos Evolvedを実行しているPTXプラットフォームではサポートされていません。これらのプラットフォームでは、ディスク障害が検出されると、デフォルトで切り替わります。
VMとRE間の壊れたLCMD接続の検出時
VM と RE 間の LCMD 接続が切断されたときに RE が自動的にスイッチオーバーされるように、次の構成を設定します。この機能を有効にするには、[edit chassis redundancy failover]
階層レベルでon-loss-of-vm-host-connection
ステートメントを含めます。
[edit chassis redundancy failover] on-loss-of-vm-host-connection;
LCMD プロセスがプライマリでクラッシュしている場合、バックアップ RE LCMD 接続が安定していれば、システムは 1 分後にスイッチオーバーします。バックアップRE LCMD接続が不安定な場合、または現在のプライマリがプライマリロールを取得したばかりの場合、システムはスイッチオーバーしません。プライマリがプライマリロールを取得したばかりの場合、スイッチオーバーは 4 分後にのみ行われます。
プライマリ ルーティングエンジン からのキープアライブ信号損失の検出について
バックアップ ルーティングエンジン を設定した後、プライマリ ルーティングエンジンからのキープアライブ信号の損失を検出した場合、自動的にプライマリ ロールを担うように指示できます。
キープアライブ損失信号の受信時にフェイルオーバーを有効にするには、[edit chassis redundancy failover]
階層レベルで on-loss-of-keepalives
ステートメントを含めます。
[edit chassis redundancy failover] on-loss-of-keepalives;
[edit chassis redundancy]
階層のon-loss-of-keepalives
ステートメントは、Junos Evolvedを実行しているPTXプラットフォームではサポートされていません。これらのプラットフォームでは、キープアライブ メッセージが検出されない場合のスイッチオーバーがデフォルトになります。
グレースフル ルーティングエンジン スイッチオーバーが設定されていない場合、デフォルトでは、フェイルオーバーは 300 秒(5 分)後に発生します。時間間隔を短くしたり長くしたりできます。
プライマリ ルーティングエンジンが手動で再起動または停止された場合、キープアライブ時間は 360 秒にリセットされます。
キープアライブ期間を変更するには、[edit chassis redundancy]
階層レベルでkeepalive-time
ステートメントを含めます。
[edit chassis redundancy] keepalive-time seconds;
キープアライブ時間の範囲は2〜10,000秒です。
次の例は、プライマリ ルーティングエンジンでキープアライブ信号の損失を検出するようにバックアップ ルーティングエンジンを設定した場合のイベントのシーケンスを示しています。
-
キー プアライブタイム を 25 秒に手動で設定します。
-
プライマリルーティングエンジンへのパケット転送エンジン接続が失われ、キープアライブタイマーが終了すると、パケット転送は中断されます。
-
キープアライブの損失が 25 秒間続くと、メッセージが記録され、バックアップ ルーティングエンジンが主要な役割を果たそうとします。バックアップ ルーティングエンジンがアクティブになるとアラームが発生し、表示がルーティングエンジンの現在のステータスに更新されます。
-
バックアップ ルーティングエンジンがプライマリの役割を引き継いだ後も、引き続きプライマリとして機能します。
グレースフル ルーティングエンジン スイッチオーバーが設定されている場合、キープアライブ信号が自動的に有効になり、フェイルオーバー時間が 2 秒(M20 ルーターでは 4 秒)に設定されます。キープアライブ時間を手動でリセットすることはできません。
プライマリ ルーティングエンジンを停止または再起動すると、Junos OS はキープアライブ時間を 360 秒にリセットし、360 秒のキープアライブ時間が終了するまで、バックアップ ルーティングエンジンはプライマリの役割を引き継ぎません。
以前のプライマリルーティングエンジンは、バックアップルーティングエンジンへのフェイルオーバー後にサービスに戻ると、バックアップルーティングエンジンになります。プライマリ ステータスを以前のプライマリ ルーティングエンジンに戻すには、運用モード コマンドを request chassis routing-engine master switch 使用できます。
ルーティング エンジンの 1 つが存在しない場合は、冗長性がどのように設定されていても、残りのルーティングエンジンが自動的にプライマリになります。
プライマリルーティングエンジンのem0インタフェース障害検知時
バックアップルーティングエンジンを設定した後、プライマリルーティングエンジンでem0インタフェースに障害が発生した場合、自動的にプライマリロールを担うように指示します。この機能を有効にするには、[edit chassis redundancy failover]
階層レベルでon-re-to-fpc-stale
ステートメントを含めます。
[edit chassis redundancy failover] on-re-to-fpc-stale;
ソフトウェアのプロセスが失敗した場合
ソフトウェア プロセスが失敗した場合にバックアップ ルーティングエンジンへの自動スイッチオーバーを設定するには、[edit system processes process-name]
階層レベルで failover other-routing-engine
ステートメントを含めます。
[edit system processes process-name] failover other-routing-engine;
process-name は、有効なプロセス名の 1 つです。このステートメントがプロセスに対して設定され、そのプロセスが30秒以内に4回失敗した場合、ルーターは他のルーティングエンジンから再起動します。 [edit system processes]
階層レベルで利用可能なもう一つのステートメントは、 フェイルオーバー代替メディアです。代替メディアオプションについては、 ルーティングデバイス用Junos OS運用管理ライブラリを参照してください。
ルーティングエンジンのプライマリ ロールの手動切り替え
ルーティングエンジンのプライマリ ロールを手動で切り替えるには、以下のコマンドのいずれかを使用します:
-
バックアップルーティングエンジンで、
request chassis routing-engine master acquire
コマンドを発行して、バックアップルーティングエンジンがプライマリロールを担うように要求します。 -
プライマリルーティングエンジンで、
request chassis routing-engine master release
コマンドを使用して、バックアップルーティングエンジンプライマリロールを引き受けるように要求します。 -
どちらのルーティングエンジンでも、
request chassis routing-engine master switch
コマンドを発行してプライマリ ロールを切り替えます。
ルーティングエンジン冗長性ステータスの検証
冗長性ログ用に、 /var/log/mastership に別のログファイルが用意されています。ログを表示するには、 file show /var/log/mastership
コマンドを使用します。 表 1 に、プライマリ ロールのログ イベントのコードと説明を示します。
イベントコード |
形容 |
---|---|
E_NULL = 0 |
イベントは null イベントです。 |
E_CFG_M |
ルーティングエンジンはプライマリとして構成されます。 |
E_CFG_B |
ルーティングエンジンはバックアップとして構成されます。 |
E_CFG_D |
ルーティングエンジンは無効に構成されています。 |
E_MAXTRY |
1 次ロールの獲得または解放の最大試行回数を超えました。 |
E_REQ_C |
要求プライマリ ロール要求が送信されました。 |
E_ACK_C |
要求のプライマリ ロールの確認応答を受信しました。 |
E_NAK_C |
要求のプライマリ ロール要求が確認されませんでした。 |
E_REQ_Y |
プライマリロールの確認が要求されます。 |
E_ACK_Y |
プライマリロールが確認されています。 |
E_NAK_Y |
プライマリロールは確認されません。 |
E_REQ_G |
プライマリロールのリリースリクエストがルーティングエンジンから送信されました。 |
E_ACK_G |
ルーティングエンジンは、プライマリ ロールのリリースを確認しました。 |
E_CMD_A |
コマンド request chassis routing-engine master acquire がバックアップ ルーティングエンジンから発行されました。 |
E_CMD_F |
コマンド request chassis routing-engine master acquire force がバックアップ ルーティングエンジンから発行されました。 |
E_CMD_R |
コマンドrequest chassis routing-engine master release がプライマリルーティングエンジンから発行されました。 |
E_CMD_S |
コマンド request chassis routing-engine master switch は、ルーティングエンジンから発行されました。 |
E_NO_ORE |
他のルーティングエンジンは検知されません。 |
E_TMOUT |
要求がタイムアウトしました。 |
E_NO_IPC |
ルーティングエンジンの接続が失われました。 |
E_ORE_M |
その他のルーティングエンジンの状態をプライマリに変更しました。 |
E_ORE_B |
その他のルーティングエンジンの状態をバックアップに変更しました。 |
E_ORE_D |
その他のルーティングエンジンの状態が無効に変更されました。 |
CPU とメモリの全体的な使用率を確認する
目的
ルーター上で実行され、制御端末を持つソフトウェア プロセスに関する網羅的なシステム プロセス情報を表示できます。このコマンドは、UNIXのtopコマンドと同じです。ただし、UNIXのtopコマンドは、メモリ値が絶えず変化するリアルタイムのメモリ使用量を示し、show system processes extensiveコマンドは、特定の瞬間のメモリ使用量のスナップショットを提供します。
アクション
CPU とメモリの全体的な使用状況を確認するには、以下の Junos OS CLI(コマンドライン インターフェイス)コマンドを入力します。
user@host> show system processes extensive
サンプル出力
user@R1> show system processes extensive
last pid: 5251; load averages: 0.00, 0.00, 0.00 up 4+20:22:16 10:44:41 58 processes: 1 running, 57 sleeping Mem: 57M Active, 54M Inact, 17M Wired, 184K Cache, 35M Buf, 118M Free Swap: 512M Total, 512M Free PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 4480 root 2 0 3728K 1908K select 231:17 2.34% 2.34% chassisd 4500 root 2 0 1896K 952K select 0:36 0.00% 0.00% fud 4505 root 2 0 1380K 736K select 0:35 0.00% 0.00% irsd 4481 root 2 0 1864K 872K select 0:32 0.00% 0.00% alarmd 4488 root 2 0 8464K 4600K kqread 0:28 0.00% 0.00% rpd 4501 root 2 -15 1560K 968K select 0:21 0.00% 0.00% ppmd 4510 root 2 0 1372K 812K select 0:13 0.00% 0.00% bfdd 5 root 18 0 0K 0K syncer 0:09 0.00% 0.00% syncer 4485 root 2 0 3056K 1776K select 0:07 0.00% 0.00% snmpd 4499 root 2 0 3688K 1676K select 0:05 0.00% 0.00% kmd 4486 root 2 0 3760K 1748K select 0:05 0.00% 0.00% mib2d 4493 root 2 0 1872K 928K select 0:03 0.00% 0.00% pfed 4507 root 2 0 1984K 1052K select 0:02 0.00% 0.00% fsad 4518 root 2 0 3780K 2400K select 0:02 0.00% 0.00% dcd 8 root -18 0 0K 0K psleep 0:02 0.00% 0.00% vmuncachedaemo 4 root -18 0 0K 0K psleep 0:02 0.00% 0.00% bufdaemon 4690 root 2 0 0K 0K peer_s 0:01 0.00% 0.00% peer proxy 4504 root 2 0 1836K 968K select 0:01 0.00% 0.00% dfwd 4477 root 2 0 992K 320K select 0:01 0.00% 0.00% watchdog 4354 root 2 0 1116K 604K select 0:01 0.00% 0.00% syslogd 4492 root 10 0 1004K 400K nanslp 0:01 0.00% 0.00% tnp.sntpd 4446 root 10 0 1108K 616K nanslp 0:01 0.00% 0.00% cron 4484 root 2 0 15716K 7468K select 0:01 0.00% 0.00% mgd 4494 root 2 15 2936K 2036K select 0:01 0.00% 0.00% sampled 5245 remote 2 0 8340K 3472K select 0:01 0.00% 0.00% cli 2 root -18 0 0K 0K psleep 0:00 0.00% 0.00% pagedaemon 4512 root 2 0 2840K 1400K select 0:00 0.00% 0.00% l2tpd 1 root 10 0 852K 580K wait 0:00 0.00% 0.00% init 5244 root 2 0 1376K 784K select 0:00 0.00% 0.00% telnetd 4509 root 10 0 1060K 528K nanslp 0:00 0.00% 0.00% eccd 4508 root 2 0 2264K 1108K select 0:00 0.00% 0.00% spd 2339 root 10 0 514M 17260K mfsidl 0:00 0.00% 0.00% newfs 4497 root 2 0 2432K 1152K select 0:00 0.00% 0.00% cosd 4490 root 2 -15 2356K 1020K select 0:00 0.00% 0.00% apsd 4496 root 2 0 2428K 1108K select 0:00 0.00% 0.00% rmopd 4491 root 2 0 2436K 1104K select 0:00 0.00% 0.00% vrrpd 4487 root 2 0 15756K 7648K sbwait 0:00 0.00% 0.00% mgd 5246 root 2 0 15776K 8336K select 0:00 0.00% 0.00% mgd 0 root -18 0 0K 0K sched 0:00 0.00% 0.00% swapper 5251 root 30 0 21732K 840K RUN 0:00 0.00% 0.00% top 4511 root 2 0 1964K 908K select 0:00 0.00% 0.00% pgmd 4502 root 2 0 1960K 956K select 0:00 0.00% 0.00% lmpd 4495 root 2 0 1884K 876K select 0:00 0.00% 0.00% ilmid 4482 root 2 0 1772K 776K select 0:00 0.00% 0.00% craftd 4503 root 10 0 1040K 492K nanslp 0:00 0.00% 0.00% smartd 6 root 28 0 0K 0K sleep 0:00 0.00% 0.00% netdaemon 4498 root 2 0 1736K 932K select 0:00 0.00% 0.00% nasd 4506 root 2 0 1348K 672K select 0:00 0.00% 0.00% rtspd 4489 root 2 0 1160K 668K select 0:00 0.00% 0.00% inetd 4478 root 2 0 1108K 608K select 0:00 0.00% 0.00% tnetd 4483 root 2 0 1296K 540K select 0:00 0.00% 0.00% ntpd 4514 root 3 0 1080K 540K ttyin 0:00 0.00% 0.00% getty 4331 root 2 0 416K 232K select 0:00 0.00% 0.00% pccardd 7 root 2 0 0K 0K pfeacc 0:00 0.00% 0.00% if_pfe_listen 11 root 2 0 0K 0K picacc 0:00 0.00% 0.00% if_pic_listen 3 root 18 0 0K 0K psleep 0:00 0.00% 0.00% vmdaemon 9 root 2 0 0K 0K scs_ho 0:00 0.00% 0.00% scs_housekeepi 10 root 2 0 0K 0K cb-pol 0:00 0.00% 0.00% cb_poll
意味
サンプル出力は、ルーティングエンジンとソフトウェアプロセスによって使用される仮想メモリの量を示しています。たとえば、118 MB の物理メモリが空きで、512 MB のスワップ ファイルが空きの場合、ルーターのメモリが不足していないことを示します。processes フィールドは、58 個のプロセスのほとんどがスリープ状態であり、1 個が実行状態であることを示しています。実行中のプロセスまたはコマンドが最上位のコマンドです。
コマンド列には、現在実行中のプロセスが一覧表示されます。たとえば、シャーシ プロセス(chassisd)のプロセス識別子(PID)は 4480 で、現在の優先度(PRI)は 2 です。優先度の数値が低いほど、優先度が高いことを示します。
プロセスはアクティビティのレベルに従って一覧表示され、最もアクティブなプロセスが出力の一番上に表示されます。たとえば、chassisd(chassisd)プロセスは 2.34 % と、最も大量の CPU リソースを消費しています。
メモリ フィールド(Mem)は、ルーティングエンジンによって管理され、プロセスによって使用される仮想メモリを示します。メモリ フィールドの値は KB と MB で、次のように分類されます。
-
[アクティブ(Active)]:割り当てられ、プログラムによって実際に使用されているメモリ。
-
Inact:割り当てられているが最近使用されていないメモリ、またはプログラムによって解放されたメモリ。非アクティブなメモリは、1 つ以上のプロセスのアドレス空間にマップされているため、それらのプロセスの常駐セット サイズにカウントされます。
-
有線—スワップの対象とならないメモリ。通常はルーティングエンジンのメモリ構造やプロセスによって物理的にロックされたメモリに使用されます。
-
キャッシュ:どのプログラムにも関連付けられておらず、再利用する前にスワップする必要のないメモリ。
-
Buf:最近ディスクから呼び出されたデータを保持するために使用されるメモリバッファのサイズ。
-
[Free]:どのプログラムにも関連付けられていないメモリ。プロセスによって解放されたメモリは、メモリを解放するためにプロセスが使用した方法に応じて、非アクティブ、キャッシュ、または解放になる場合があります。
システムがメモリ不足に陥っている場合、ページアウト処理は、空きページ、キャッシュページ、非アクティブページ、および必要に応じてアクティブページのメモリを再利用します。
「スワップ」フィールドには、使用可能なスワップ・スペースの合計と、未使用の量が表示されます。この例では、合計 512 MB のスワップ領域と 512 MB の空きスワップ領域が出力されています。
最後に、各プロセスのメモリ使用量が一覧表示されます。SIZE フィールドは仮想アドレス空間のサイズを示し、RES フィールドは物理メモリ内のプログラムの量 (RSS または常駐セット サイズとも呼ばれます) を示します。サンプル出力では、chassisd(chassisd)プロセスに 3728 KB の仮想アドレス空間と 1908 KB の物理メモリがあります。
ルーティングエンジンの初期設定の例
コンフィギュレーショングループを使用することで、各ルーティングエンジンに正しいIPアドレスが使用されるようにし、両方のルーティングエンジンで単一の構成ファイルを保持することができます。
次の例では、設定グループ re0 と re1 を別々の IP アドレスで定義しています。これらのよく知られたコンフィギュレーショングループ名は、適切なルーティングエンジンでのみ有効になります。
groups { re0 { system { host-name my-re0; } interfaces { fxp0 { description "10/100 Management interface"; unit 0 { family inet { address 10.255.2.40/24; } } } } } re1 { system { host-name my-re1; } interfaces { fxp0 { description "10/100 Management interface"; unit 0 { family inet { address 10.255.2.41/24; } } } } } }
両方のルーティング エンジンで、管理イーサネット インターフェイス(この例では fxp0 )に追加の IP アドレスを割り当てることができます。割り当てられたアドレスは master-only キーワードを使用し、両方のルーティング エンジンで同一であるため、プライマリ ルーティングエンジンの IP アドレスにいつでもアクセスできます。このアドレスは、プライマリー ルーティングエンジンの管理イーサネット インターフェイスでのみ有効です。ルーティングエンジンのスイッチオーバー時に、アドレスは新しいプライマリ ルーティングエンジンに移動します。
例えば、 re0 では、設定は次のようになります。
[edit groups re0 interfaces fxp0] unit 0 { family inet { address 10.17.40.131/25 { master-only; } address 10.17.40.132/25; } }
re1 では、設定は次のとおりです。
[edit groups re1 interfaces fxp0] unit 0 { family inet { address 10.17.40.131/25 { master-only; } address 10.17.40.133/25; } }
デュアル ルーティング エンジンの初期設定の詳細については、 Junos OS ソフトウェア インストールおよびアップグレード ガイドを参照してください。両方のルーティング エンジンで master-only キーワードを使用して、管理イーサネット インターフェイスに追加の IP アドレスを割り当てる方法については、 Junos OS CLI ユーザー ガイドを参照してください。
参照
コンフィギュレーション・ファイルを 1 つのルーティングエンジンからもう 1 つのにコピーする
コンソール ポートまたは管理イーサネット ポートのいずれかを使用して、2 つのルーティング エンジン間の接続を確立できます。その後、コピーするか FTP を使用してプライマリからバックアップに設定を転送し、ファイルをロードして通常の方法でコミットできます。
管理イーサネットポートを使って他のルーティングエンジンに接続するには、以下のコマンドを発行してください:
user@host> request routing-engine login (other-routing-engine | re0 | re1)
TXマトリクス ルーターで、管理イーサネット ポートを使用して他のルーティングエンジンに接続するには、次のコマンドを発行します。
user@host> request routing-engine login (backup | lcc number | master | other-routing-engine | re0 | re1)
request routing-engine login
コマンドの詳細については、CLIエクスプローラーを参照してください。
構成ファイルを 1 つのルーティングエンジンから別のにコピーするには、 file copy
コマンドを発行します。
user@host> file copy source destination
この場合、 source は構成ファイルの名前です。これらのファイルは、 ディレクトリ /config に保存されます。アクティブな設定は /config/juniper.conf で、それより古い設定は /config/juniper.conf {1...9} にあります。 destination は、もう一方のルーティングエンジン上のファイルです。
次の例では、ルーティングエンジン0からルーティングエンジン1に構成ファイルをコピーします。
user@host> file copy /config/juniper.conf re1:/var/tmp/copied-juniper.conf
次の例では、構成ファイル を ルーティングエンジン 0 から TX マトリクス ルーター上のルーティングエンジン 1 にコピーします。
user@host> file copy /config/juniper.conf scc-re1:/var/tmp/copied-juniper.conf
構成ファイルを読み込むには、[edit]
階層レベルで load replace
コマンドを入力します。
user@host> load replace /var/tmp/copied-juniper.conf
ルーティングエンジン0の管理イーサネットインターフェイス設定で指定されたIPアドレスを、ルーティングエンジン1に適したアドレスに変更してください。
参照
他のルーティングエンジンからソフトウェアパッケージを読み込む
既存の request system software add package-name
コマンドを使用して、他のルーティングエンジンからローカルルーティングエンジンにパッケージをロードできます。
user@host> request system software add re(0|1):/filename
URLの re 部分で、他のルーティングエンジンの番号を指定します。URL の filename 部分で、パッケージへのパスを指定します。通常、パッケージは /var/sw/pkg ディレクトリにあります。