Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

排除配置 Junos 设备时的 Ansible 错误

以下各节概述了使用集合中的模块或juniper_junos_config角色中的Juniper.junosjuniper.device模块配置 config Junos 设备时可能遇到的错误。这些部分还介绍了每个错误的潜在原因和解决方案。

排查配置超时错误

问题

描述

模块生成错误消息 TimeoutExpiredError ,无法更新设备配置。

原因

NETCONF RPC 超时的默认时间为 30 秒。大型配置更改可能会超过此值,从而导致操作在上载和提交配置之前超时。

解决 方案

若要适应可能需要提交时间长于默认 RPC 超时间隔的配置更改,请将模块的 timeout 参数设置为适当的值,然后重新运行 playbook。

排查配置锁定错误

问题

描述

模块将生成一条错误消息,指示无法锁定配置数据库。例如:

原因

发生配置锁定错误的原因如下:

  • 另一个用户对配置具有独占锁定。

  • 另一个用户对配置数据库进行了更改,但尚未提交更改。

  • 执行 Ansible 模块的用户无权配置设备。

解决 方案

LockError消息字符串通常指示问题的根本原因。如果其他用户对配置具有独占锁或修改了配置,请等待锁定释放或更改提交,然后再次执行 playbook。如果问题的原因是用户没有配置设备的权限,请与具有必要权限的用户一起执行 playbook,或者在适当的情况下配置 Junos 设备以向当前用户授予进行更改所需的权限。

排查配置加载错误

问题

描述

模块将生成一条 ConfigLoadError 错误消息,指示无法修改配置,因为权限被拒绝。

原因

当执行 Ansible 模块的用户有权修改配置,但无权更改所请求的配置部分时,将生成此错误消息。

解决 方案

要解决此问题,请与具有必要权限的用户一起执行 playbook,或者在适当的情况下,配置 Junos 设备以授予当前用户进行更改所需的权限。

排查提交错误

问题

描述

模块会生成一条 CommitError 错误消息,指示提交操作由于配置锁定错误而失败。

原因

由于排查配置锁定错误中所述的原因,可能会发生配置锁定错误。但是,如果任务请求提交检查和提交操作,并且设备在提交检查操作释放配置锁之前启动提交操作,则可能会将配置锁定失败消息生成为 的一部分CommitErrorLockError,而不是 。

解决 方案

若要使设备有足够的时间完成提交检查操作并在启动提交操作之前释放配置锁定,请将模块的 check_commit_wait 参数设置为适当的值并重新运行 playbook。该 check_commit_wait 值是在提交检查和提交操作之间等待的秒数。

以下示例任务在提交检查和提交操作之间等待五秒钟: