Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

了解 Junos PyEZ 表和视图

Junos PyEZ 表和视图是简单的 YAML 定义,使您能够:

  • 从 Junos 设备提取操作信息

  • 检索 Junos 设备的配置数据

  • 配置 Junos 设备

表和视图提供了一种简单而高效的方法,可从复杂的操作命令输出或配置数据中提取信息,并将其映射到 Python 数据结构。表和视图使用 YAML 定义,因此无需复杂的编码来创建自己的代码。要提取信息,请使用预定义表或自定义表将命令输出或配置数据映射到由一组物品组成的表。每个表项目表示数据记录,并具有唯一密钥。表还会引用特定视图,该视图用于将数据中的标记名称或字段映射到 Python 数据结构中的可变名称。

表 1 概述了不同类型的表,并注明了首先支持每个类型的 Junos PyEZ 版本。Junos PyEZ 操作 (op) 表从操作命令输出中选择项目。Op 表可以执行 RPC 和解析结构化输出 (XML),或者可以执行命令和解析非结构化输出(CLI 格式的文本)。Junos PyEZ 配置表定义结构化配置资源,可在既定配置数据库的指定层次结构中选择或配置语句。

定义属性的 get 配置表只能检索配置数据。定义属性的 set 配置表既可以检索也可修改相应视图中定义的配置语句。将配置表添加至 Junos PyEZ 框架时,Junos PyEZ 会动态创建资源配置类,使您可以通过编程方式在设备上配置资源。

表 1:Junos PyEZ 表类型

表类型

子集

描述

Junos PyEZ 版本

操作表

具有结构化输出的 RPC

在设备上执行 RPC 并返回结构化 XML 输出

1.0

具有非结构化输出的命令

在设备上执行 CLI 命令或在 FPC 上执行 vty 命令并返回非结构化 CLI 格式的输出

2.3

配置表

get

检索配置数据

1.2

set

检索配置数据或配置在相应视图中定义的语句

2.0

例如,以下操作表将检索带有 选项的 RPC no-resolve 输出get-arp-table-information,该选项与 Junos OS CLI 中的命令对应show arp no-resolve。此表从 XML 输出中arp-table-entry提取元素。对应视图将用户定义的字段名称映射到 XPath 表达式,与 Junos XML 输出中的数据位置对应,从每个arp-table-entry项目中选择三个字段。在这个案例中,mac-addressip-address,和interface-name是儿童元素。arp-table-entry

有关创建和使用操作表和视图的信息,请参阅以下主题:

有关创建和使用配置表和视图的信息,请参阅以下主题:

有关在 Junos PyEZ 应用程序中加载或导入自定义表和视图的信息或将数据保存到文件中的信息,请参阅以下主题: