问题标签 [junos-automation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ansible - junos_l2_interface 删除描述,不是吗?
junos_l2_interface 模块删除了预设的接口描述,我不希望它这样做。有没有办法,或者我应该使用 junos_config 模块重做这个?
在 JUNOS 14.1X53-D47.3 上运行 Ansible 2.8.1 并使用 Juniper.junos 角色和 junos_l2_interface 模块
我的任务配置:
输出:
说明:null 移除预设说明
由于我没有在模块中包含描述参数,我希望模块保持原样。
variables - 从 Junos 节点获取事实并使用它们形成将在其他戏剧中使用的变量
我有一个关于使用 Ansible 自动化网络节点的问题。
我想获取涉及vlan的网络节点的配置(实际上我只是想查看节点中使用的最后一个vlan,以便我可以自动创建下一个)。
当我登录到 Junos 路由器时,我编写了以下命令:
show configuration | display set | match interfaces | match ae0 | match description
我得到了 17 行配置,都涉及 vlan(最后一行是创建的最后一个 vlan)
我想我会junos_command
为相同的命令使用模块,注册输出然后在 msg 中显示它(更大计划的第一部分)。
但事实证明,junos_command
这只能让我使用show configuration
2500 行配置。
有没有办法让junos_command
我得到想要的输出,或者我应该只使用给定的输出,尝试以某种方式解析它?有什么建议么?
我看到的唯一缺点是获取和解析该输出需要时间,因为它会非常大,并且能够最小化输出将提高效率。
也许还有一些关于解析输出的建议?除了正则表达式过滤器还有其他方法吗?
ansible - 收集已配置 IP 地址的列表
我想提取将 IPv6 地址分配给接口的 Juniper 配置行,并将该输出保存到文件中。
我所追求的输出是使用命令“show configuration |”生成的。展示套装| 匹配 "inet6 地址" '
我正在构建一个 Ansible 剧本并排除错误以完成以下任务。它基本上为我提供了完整的界面配置,我只想将其缩小到适合手动命令中“匹配”行的行。注释掉的过滤器不起作用,我找不到以我理解的方式解释过滤器的文档。
输出:
我只想要这样的行:
设置接口单元 X 系列 inet6 地址 XXXX:YYYY:ZZZZ:1234::1/127
但我似乎无法插入正确的过滤器。
我还会提到,如果有更好的方法来收集它,我愿意探索它。看起来这就是 Ansible 被创建来执行的任务。
ansible - ansible junos UnicodeDecodeError: 'utf8' codec can't decode byte 0xff in position 0:
我试图为 Junos 路由器获取 ansible。当我执行以下代码时,出现以下错误:
“任务执行期间发生异常。要查看完整的回溯,请使用 -vvv。错误是:UnicodeDecodeError: 'utf8' codec can't decode byte 0xff in position 0: invalid start by”
我厌倦了在终端设备上启用 netconf,但仍然没有运气。我不能使用任何星系模块,因为我们有那个......
我错过了什么吗?
谢谢
networking - 基于文件名的主机特定目标
我正在使用 ansible 使用“junos_install_config”模块将配置“.set”文件发送到 Junos OS 设备。我想根据名称将特定文件发送到特定主机。
例如。我想将文件“vMX1.set”发送到主机 vMX1,将文件“vMX2.set”发送到主机 vMX2 等。
目前我正在这样做:
然而,这种方法非常耗时且不合逻辑。例如,如果我有 50 个配置文件和 50 个设备,我将不得不编写 50 个不同的任务。有什么方法可以自动执行此操作,以便剧本检查任务的名称并为文件分配相应的名称?
主机文件看起来像这样
ansible - junos_install_config 替换模块是什么?
在剧本中使用角色中的junos_instal_config
模块时,Juniper.junos
例如:
运行 playbook 会返回以下弃用警告:
但是阅读有关该模块的文档,我似乎无法找到取代它的内容。谁能告诉我现在可以在以后的版本中使用哪个模块将“.set”文件发送和安装到 Junos 设备?
authentication - 使用 Ansible 设置新的 Junos OS 用户
我正在尝试为运行 Junos OS 的 vMX 路由器创建一个新用户。用户需要是具有以下凭据的超级用户:
用户名:管理员
密码:admin123
直接从命令行执行此操作很容易,我只需更改为编辑模式并键入以下命令
控制台然后提示你输入密码然后确认,所以我输入密码如下
然后我可以提交更改并创建用户。问题在于,当我尝试使用 ansible 对 8 个不同的 vmx 路由器重复此过程时。我已经设置了以下剧本:
但这返回了以下错误:
我假设这与命令的最后一部分有关,因为直接在机器上执行此操作时,会提示用户输入密码,所以当这些行由 ansible 传递时,操作系统不知道该怎么做仅包含密码的行。
我还尝试了以下剧本:
但这会导致下面的语法错误。所以这不是一次成功的尝试。
那么有什么方法可以传递这个命令来创建一个新用户并使用 ansible 为新用户设置一个密码来加快对多个设备重复它的过程?
xpath - JSNAPY:有没有办法测试 xpath 节点属性
我正在尝试确定如何测试 junos 偶尔使用的节点属性。在这种特殊情况下,我想查找在 20w 和 1y 之间关闭的所有 BGP 会话。秒值包含在节点属性中,但我无法弄清楚如何访问它以进行测试。
我已经尝试了使用整个显式 xpath 的各种方法,一直到我在代码下面的内容。
这是我试图访问的 xpath(为简洁而编辑):
xml - 如何获取提取 xml 数据并打印调试消息
我正在尝试通过 xpath 提取 2 个元素(l2-mac-address
和l2-mac-logical-interface
)并将它们打印为“ mac-address:interface ”
XML:
剧本:
当前结果:
我如何获得mac地址和它的界面显示在同一个debug: msg
?
编辑:
我如何将 mac 和接口字符串列表放入变量中?我尝试将其添加到剧本中:
但只获取最后一个 mac 和 interface 添加到变量中:
python - 正则表达式包括匹配瞻博网络 srx 输出的变量
使用 python 作为我的第一语言进行编程的新手。
我正在尝试创建一个匹配的正则表达式'lo0.0'
或从下面的字符串中显示在该位置的任何其他接口。我需要将 ip 地址'192.168.50.5'
作为变量输入,以便正则表达式可以作为循环的一部分动态重用,这将确保检索到的接口是该路由的正确传出接口。
我尝试使用积极的后向断言,但在让脚本在正则表达式的开头但在后向断言中使用dotall
or 或multiline
.
'\n\ninet.0: 13 destinations, 14 routes (13 active, 0 holddown, 0 hidden)\n+ = Active Route, - = Last Active, * = Both\n\n192.168.50.5/32 *[Direct/0] 1w2d 02:39:35\n > via lo0.0\n'