このページで
例:ルーティング エンジン間でスクリプトを同期する
この例では、Junos OSを実行するデュアルルーティングエンジンでデバイスを設定し、操作を実行 commit synchronize
するたびにルーティングエンジン間ですべてのコミット、イベント、lib、op、SNMPスクリプトを同期する方法を示します。
要件
Junos OS リリース 13.2(SNMP スクリプトの場合は 15.1)以降を実行するデュアル ルーティング エンジンを搭載したルーティング、スイッチング、またはセキュリティ デバイスが必要です。
概要
この例では、Junos OSを実行するデュアルルーティングエンジンを搭載したデバイスを設定し、コミットして設定を同期するコマンドを実行 commit synchronize
するたびに、要求するルーティングエンジンから他のルーティングエンジンにすべてのコミット、イベント、lib、op、SNMPスクリプトを同期します。設定されている場合、デバイスは設定で有効になっているかどうかに関係なく、すべてのスクリプトを同期します。
この例では、 load-scripts-from-flash
ステートメントは要求するルーティングエンジンで設定されていません。これにより、デバイスは、要求するルーティング エンジンのハード ディスク上にあるスクリプトを、応答するルーティング エンジンのハード ディスクに同期させます。
ハード ディスクでは、スクリプトはスクリプト タイプに適したサブディレクトリの /var/db/scripts ディレクトリに保存されます。フラッシュ メモリでは、スクリプトは、スクリプト タイプに適したサブディレクトリの /config/scripts ディレクトリに保存されます。EX シリーズ スイッチは、デフォルトディレクトリを使用します /config/db/scripts
。
構成
CLI クイックコンフィギュレーション
この例を迅速に設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、 階層レベルのCLIにコマンドを [edit]
コピーアンドペーストします。
set system scripts synchronize
コミット同期操作のためのスクリプト同期の設定
手順
操作中にルーティング エンジン間でスクリプトを自動的に commit synchronize
同期するには、
synchronize
階層レベルで ステートメントを[edit system scripts]
設定します。[edit system scripts] user@host# set synchronize
設定をコミットして同期します。
[edit system scripts] user@host# commit synchronize re0: configuration check succeeds re1: commit complete re0: commit complete
最初と以降
commit synchronize
のコマンドを発行すると、デバイスは要求するルーティング エンジンでコミット チェックを実行し、すべてのスクリプトを他のルーティング エンジンに同期し、コミット チェックを実行して、応答するルーティング エンジンで設定をコミットし、最後に要求するルーティング エンジンで設定をコミットします。
結果
その結果、構成は次のようになります。
system { scripts { synchronize; } }
検証
設定が正常に機能し、同期に成功したことを確認します。
スクリプト同期の検証
目的
要求するルーティング エンジンに存在するスクリプトが、もう一方のルーティング エンジンに同期されていることを確認します。
この例では、 load-scripts-from-flash
ステートメントは要求するルーティングエンジンに対して設定されていません。そのため、デバイスは、要求するルーティング エンジンの /var/db/scripts ディレクトリの /var/db/scripts ディレクトリのスクリプトを、応答するルーティング エンジンの /var/db/scripts ディレクトリに同期します。
アクション
運用モード コマンドを file list
使用して、各ルーティング エンジンの /var/db/scripts ディレクトリ内のファイルを表示します。
要求するルーティングエンジンで、 /var/db/scripts/ ディレクトリにファイルをリストします。
user@host> file list /var/db/scripts/* detail /var/db/scripts/commit: -rw-r--r-- 1 remote wheel 1014 Jul 17 16:18 vpn-commit.slax /var/db/scripts/event: /var/db/scripts/lib: /var/db/scripts/op: -rw-r--r-- 1 root wheel 11485 Sep 21 2010 jcs-load-config-op.slax
応答するルーティング エンジンにログインし、ファイルが同期されていることを確認します。
user@host> request routing-engine login other-routing-engine user@host1> file list /var/db/scripts/* detail /var/db/scripts/commit: -rw-r--r-- 1 remote wheel 1014 Jul 17 16:18 vpn-commit.slax /var/db/scripts/event: /var/db/scripts/lib: /var/db/scripts/op: -rw-r--r-- 1 root wheel 11485 Sep 21 2010 jcs-load-config-op.slax
意味
各ルーティング エンジンに存在するスクリプトは同一であり、デバイスが要求するルーティング エンジンから応答するルーティング エンジンにスクリプトを正常に同期したことを示しています。
トラブルシューティング
スクリプト同期エラーのトラブルシューティング
問題
デバイスは、要求するルーティングエンジンに存在するスクリプトを他のルーティングエンジンに同期しません。
ソリューション
以下を確認します。
階層レベルで ステートメントを設定
synchronize
しました[edit system scripts]
。各ルーティング エンジン上の正しいディレクトリを表示しています。
ステートメントが
load-scripts-from-flash
要求するルーティングエンジンに設定されている場合、デバイスは要求するルーティングエンジンのフラッシュメモリから応答するルーティングエンジンのフラッシュ メモリにスクリプトを同期します。設定を
commit synchronize
コミットするときに コマンドを実行しました。デバイスは、操作に対してのみ
commit synchronize
スクリプトをcommit
同期しません。要求するルーティングエンジンのコミットチェックとコミット操作が成功します。
要求するルーティングエンジンのコミットチェック操作に失敗した場合、プロセスは停止し、スクリプトは応答するルーティングエンジンにコピーされません。