junipernetworks.junos.junos_rpc 模块 – 在 Juniper JUNOS 设备上通过 NetConf 运行任意 RPC

注意

此模块是 junipernetworks.junos 集合 (版本 9.1.0) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install junipernetworks.junos。您需要其他要求才能使用此模块,有关详细信息,请参见 要求

要在 playbook 中使用它,请指定:junipernetworks.junos.junos_rpc

junipernetworks.junos 1.0.0 中的新增功能

概要

  • 向运行 JUNOS 的远程设备发送请求,以使用 NetConf 传输执行指定的 RPC。然后,回复将返回到 playbook 的 xml 密钥中。如果请求了备用输出格式,则回复将转换为请求的输出。

要求

执行此模块的主机需要以下要求。

  • ncclient (>=v0.5.2)

参数

参数

注释

args

字典

args 参数提供一组用于 RPC 调用的参数,并编码在请求消息中。此参数接受一组 key=value 参数。

attrs

字典

attrs 参数定义一组属性及其值,以设置用于 RPC 调用的属性。这接受键值对字典。

output

字符串

output 参数指定返回数据的所需输出。此参数接受 xmltextjson 之一。对于 json,JUNOS 设备必须运行支持原生 JSON 输出的软件版本。

选项

  • "xml" ← (默认)

  • "json"

  • "text"

rpc

字符串 / 必需

rpc 参数指定要发送到远程设备以执行的 RPC 调用。RPC 回复消息将被解析,其内容将返回到 playbook。

备注

注意

  • 此模块要求在被管理的远程设备上启用 netconf 系统服务。

  • 针对 vSRX JUNOS 版本 15.1X49-D15.4、vqfx-10000 JUNOS 版本 15.1X53-D60.4 进行了测试。

  • 推荐的连接是 netconf。请参阅 Junos OS 平台选项

  • 此模块也适用于旧版 playbook 的 local 连接。

  • 有关使用 CLI 和 netconf 的信息,请参见:ref:`Junos OS 平台选项指南 <junos_platform_options>`

  • 有关使用 Ansible 管理网络设备的更多信息,请参见:ref:`Ansible 网络指南 <network_guide>`

  • 有关使用 Ansible 管理 Juniper 网络设备的更多信息,请参见 https://ansible.org.cn/ansible-juniper

示例

- name: collect interface information using rpc
  junipernetworks.junos.junos_rpc:
    rpc: get-interface-information
    args:
      interface-name: em0
      media: true

- name: get system information
  junipernetworks.junos.junos_rpc:
    rpc: get-system-information

- name: load configuration
  junipernetworks.junos.junos_rpc:
    rpc: load-configuration
    attrs:
      action: override
      url: /tmp/config.conf

返回值

常见的返回值已在 此处 记录,以下是此模块特有的字段

描述

output

字符串

转换为输出格式的 rpc 依赖项。

返回:始终

output_lines

列表 / 元素=字符串

为方便阅读而将文本输出分成多行。

返回:始终

xml

字符串

来自 rpc 请求的 xml 返回字符串。

返回:始终

作者

  • Peter Sprygada (@privateip)