示例:在路由引擎之间同步脚本
此示例说明如何配置具有运行 Junos OS 的双路由引擎的设备,以便每次执行 commit synchronize
操作时在路由引擎之间同步所有提交、事件、lib、op 和 SNMP 脚本。
要求
需要具有双路由引擎运行 Junos OS 版本 13.2(SNMP 脚本为 15.1)或更高版本的路由、交换或安全设备。
概述
在此示例中,当您执行 commit synchronize
提交和同步配置的命令时,您可配置具有运行 Junos OS 的双路由引擎的设备,以便将所有提交、事件、lib、op 和 SNMP 脚本从请求路由引擎同步到其他路由引擎。配置后,设备将同步所有脚本,而不管这些脚本是否在配置中启用。
在此示例中, load-scripts-from-flash
语句不会在请求路由引擎上配置。因此,设备会将请求路由引擎硬盘上的脚本同步到响应路由引擎的硬盘。
在硬盘上,脚本存储在适合脚本类型的子方向的 /var/db/scripts 目录下。在闪存内存中,脚本存储在适合脚本类型的子方向的 /config/脚本 目录下。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 目录。
行动
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
脚本,只用于commit synchronize
操作。请求路由引擎的提交检查和提交操作成功。
如果请求路由引擎的提交检查操作失败,进程将停止,并且脚本不会复制到响应的路由引擎。