Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

在 Paragon Automation GUI 中配置自定义规则

使用 Paragon Automation GUI 创建新规则

要使用 Paragon Automation GUI 创建新规则,您需要首先填写有关规则的一般描述性信息,然后在“规则”页面中浏览多个规则定义块,以提供 Paragon Automation 规则的特定配置。

要开始创建新的 Paragon Automation 规则,请执行以下操作:

  1. 单击左侧导航栏中的配置>规则图标。Paragon Automation 规则列表显示在“规则”页面的左侧。
  2. 单击添加规则按钮(+ 添加规则)。
  3. 使用以下输入参数输入有关规则的一般描述性信息:

    参数

    描述

    统治

    对于新规则,此参数预填充 external / user_rule_random characters,例如 external / user_rule_2p0ghk。用斜杠 (/) 分隔的字段分别表示 Paragon Automation 主题名称和 Paragon Automation 规则名称。

    外部 是用于用户定义主题的主题名称。对于瞻博网络预定义的 Paragon Automation 规则,瞻博网络精心整理了一组基于设备组件的预定义主题名称。有关 Paragon Automation 主题的更多信息,请参阅 了解 Paragon Insights 主题

    user_rule_random characters 规则名称替换为能够恰当地表示规则说明的名称,例如 数据包输入数据包输出system_memory等。

    规则频率

    (仅限网络规则)指定 Paragon Automation 收集网络规则数据的频率。如果规则包含在应用于网络组的频率配置文件中,则会覆盖此设置。

    描述

    (可选)输入规则的详细说明。

    概要

    (可选)输入规则的简要说明。当您将鼠标悬停在“规则”页面左侧列出的规则名称上时,将显示概要。

    字段聚合时间范围

    此可选值定义 Paragon Automation 聚合传感器接收的数据的频率。这有助于减少时序数据库中的数据点条目数。

  4. (仅限网络规则)如果新规则是网络规则,请将“网络规则”开关切换至右侧。
  5. 根据需要配置规则定义块。

    位于 Synopsis 输入参数的正下方,您将找到指向以下规则定义块的链接: 传感器字段向量变量函数触发器规则属性。以下各节介绍每个规则定义块的输入参数。

  6. 选择以下选项之一以保存新规则:

    将规则保存在定义的主题区域中,但不部署更新的配置。例如,当您进行多项更改并希望同时部署所有更新时,可以使用此选项。

    保存和部署

    立即部署配置并将规则保存在定义的主题区域中。

规则过滤

您可以筛选“规则”页面左侧显示的主题和规则。这使您可以快速找到所需的规则。搜索功能适用于主题、规则、传感器类型和其他类别;不仅要处理标题,还要处理规则的定义内容。

以下过程说明此筛选功能。

  1. 导航到左侧导航栏中的“配置>规则”。

    将显示 “规则 ”页。规则定义区域的左侧是一个新部分,如下 图 1 所示。

    图 1:规则过滤 Rule Filtering
  2. 从下拉菜单中,选择要执行的搜索类型。
  3. 在搜索字段中,开始输入搜索文本。

    下面的主题列表缩小以仅显示与您的搜索条件匹配的主题和规则。

传感器

开始使用 传感器 块配置新规则。 图 2 显示了 OpenConfig 传感器 pppoe-error-statistics的传感器定义。

图2:传感器定义 A Sensor Definition
  1. 单击添加传感器按钮(+添加传感器)。

    此时将显示一个新的传感器定义,并将其命名为 Sensor_random characters,如 Sensor_2kgf04

    可以为一个规则配置多个传感器。

  2. 将传感器名称更改为对要定义的规则有意义的名称。
  3. 从下拉列表中,选择传感器类型。您可以选择以下选项之一: OpenConfigNative GPB iAgentSNMPSyslogNetFlow

    定义 “传感器类型 ”所需的元素会根据所做的选择而变化。频率以 #s、#m、#h、#d、#w、#y 或 #o 表示,其中 # 是数字,s、m、h、d、w、y 分别指定秒、分钟、小时、天、周、年和偏移量。o 表达式用于定义用于公式、引用、触发器、学习周期和保持时间的偏移乘数。

    以下列表描述了根据您选择的 传感器类型而更改的元素。其他规则元素不会因“ 传感器类型 ”选择而更改。

    • OpenConfig

      传感器路径 是从可用 OpenConfig 传感器的下拉列表中定义的。 频率 是指传感器向 Paragon Automation 报告的频率(以秒为单位)。如果传感器包含在频率曲线中,则可以覆盖频率。

    • Native GPB

      传感器路径 是指本机 GPB 传感器的路径。 端口 是指传感器与 Paragon Automation 通信的 GPB 端口。

    • iAgent

      文件 是定义 NETCONF 可访问传感器的 YAML 格式文件的名称。 是从 YAML 文件中可用 PyEZ 表和视图的下拉列表中定义的。 频率 是指 Paragon Automation 轮询传感器的频率,可以通过将传感器包含在频率配置文件中来覆盖频率。

      根据您选择的表,可能还会提供目标参数或动态参数的输入字段。对于这些附加字段,您可以执行以下操作之一:

      • 将输入字段留空。不会应用默认值。

      • 输入将保持不变的固定值。

      • 输入用双花括号/花括号括起来的变量名称(例如, {{test-variable}}) 变量名称必须属于之前在 Paragon Automation 规则中定义的变量,并且该变量的 “类型” 选项必须设置为 “传感器参数”。

    • SNMP

      是从可用 SNMP 表的下拉列表中定义的。 频率 是指 Paragon Automation 轮询设备以获取数据的频率(以秒为单位),可以通过将传感器包含在频率配置文件中来覆盖。

    • Syslog

      模式集 是用户配置的元素,其中包含一个或多个模式(您可以为要监视的每个事件配置模式)。 最长保持期 用于高级情况,是指在使用模式集中的多个模式关联事件时系统等待的最长时间。

      注意:

      系统日志传感器需要一些预配置。有关更多详细信息,请参阅 系统日志摄取

    • Flow

      模板名称 是瞻博网络提供的 NetFlow v9 和 IPFIX 模板的内置列表。

领域

传感器通常会携带一些信息,例如有关设备上接口的所有信息、机箱相关信息、系统进程和内存相关信息等。配置传感器后,必须提及处理传感器信息以满足特定需求的字段。例如,您可以定义字段来捕获接口的管理或操作状态,或者设置流量计数阈值。

要添加字段:

  1. 单击字段链接。

    屏幕将更新并显示定义的字段对象。

  2. 单击添加字段按钮 (+添加字段)。
  3. 将随机字段名称替换为对要定义的规则有意义的名称,例如接口名称配置阈值等。
  4. (可选)为新字段添加描述性文本。
  5. 设置适当的字段类型。字段类型的选项包括:字符串、整数、浮点数和无符号整数。字符串是默认字段类型。

    您还可以选择无符号整数作为字段类型。无符号整数是一种数据类型,可以包含 0 到 4,294,967,295 之间的值。

  6. (可选)切换“添加到规则”键开关。

    按键开关的添加规则告诉 Paragon Automation 此字段应编制索引且可搜索。例如,启用此开关时,字段名称将列在“设备”页上的 “密钥 ”列下。

  7. 从下拉菜单中选择适当的采集类型(字段源)。

    以下列表显示了可用于 “引入类型(字段源) ”菜单的选项。

    • 传感器 - 使用此或其他传感器定义。

      • 路径 - 遵循传感器定义中的此开放配置或 Netconf 路径,以收集接口名称等特定数据。对于 iAgent 传感器, 路径 是指在 YAML 文件中定义的路径。

      • 其中 – 过滤可用数据以收集有关其中特定元素(如特定接口)的信息。此字段可以引用规则中其他位置定义的 变量 。引用变量时,请使用用斜杠括起来的 moustache 表示法,例如: {{interface_name}}。

      • 零抑制 - 对于与运行 Junos OS 的设备关联的某些传感器(如 Junos 遥测接口开放配置和本机 GPB 传感器),当数据值为零时,传感器不会发送任何现场数据。启用零抑制开关,以便在传感器不发送字段数据时将字段数据值设置为零。

      • 缺少数据 - 每当传感器不发送任何数据时,指定一个值作为默认数据值。指定值的格式应与定义的字段类型(字符串、整数或浮点数)匹配。如果还启用了零抑制开关,则忽略指定的“如果缺失数据”值,并将默认传感器数据值设置为零。

    • 引用 - 对来自其他规则的字段或触发器值的引用。

      • 缺少数据 - 指定一个值作为默认数据值,只要没有提取引用数据。指定值的格式应与定义的字段类型(字符串、整数或浮点数)匹配。

    • 常量 – 在引用规则中定义的变量时使用常量,该 变量 的值不会更改,例如 IO_Drops_Threshold 常量也可以是不会更改且不是对变量的引用的字符串或数值。

      • 常量值 – 使用 moustache 表示法来引用变量,如下所示: {{IO_Drops_Threshold}}

    • 公式 – 从 公式 下拉菜单中选择所需的数学公式。

  8. (可选)设置字段聚合时间范围。此定期聚合设置位于具有常规规则参数的“字段”选项卡上方,有助于减少在数据库中输入的数据点数。例如,如果传感器设置指定 Paragon Automation 每 10 秒摄取一次数据,则可以将此设置配置为聚合并记录相关现场数据,比如每 60 秒一次。请注意,使用此设置时,任何特定于字段的时间范围都必须使用相同的值。
注意:

您可以根据传入数据是否满足标记配置文件中定义的用户定义条件向规则添加字段和键。标记配置文件在 Paragon Automation 中左侧导航栏的 “管理>摄取设置 ”下定义。有关详细信息,请参阅Paragon Insights 标记

向量

(可选)现在,您已经为规则定义了传感器和字段,可以定义向量了。

当单个字段具有多个值或从另一个字段接收值时,将使用向量。

向量的语法为:

  1. 单击矢量链接。图 3 显示了新添加的矢量的“向量”块。
    图 3:矢量块 Vectors Block
  2. 单击添加矢量按钮(+添加矢量
  3. 将随机向量名称替换为对您的规则有意义的名称。
  4. 从下拉列表中选择引入类型。其他输入字段将根据您所做的选择而有所不同。

    对于路径:

    参数

    描述

    字段列表

    从下拉列表中选择一个字段。字段列表派生自此规则中的所有已定义字段。

    时间范围

    指定应从中收集数据的时间范围。时间范围以 #s、#m、#h、#d、#w 表示 #y,其中 # 是一个数字,s、m、h、d、w、y 分别指定秒、分钟、小时、天、周和年。例如,输入 7 天作为 7d。

    对于公式:

    参数

    描述

    矢量名称

    (仅限唯一配方类型)从下拉列表中选择矢量名称。向量列表派生自此规则中所有定义的向量。

    公式类型

    从下拉列表中选择公式类型:

    unique

    使用来自另一个向量的唯一元素创建向量。

    and

    比较两个向量,并返回一个向量,其中包含两个向量共有的元素。

    or

    比较两个向量,并返回一个包含两个向量的元素的向量。

    unless

    比较两个向量,并返回一个向量,其中包含来自左向量的元素,而不是右向量的元素。

    左向量

    从下拉列表中选择矢量名称。向量列表派生自此规则中所有定义的向量。

    右向量

    从下拉列表中选择矢量名称。向量列表派生自此规则中所有定义的向量。

变量

(可选) 变量 块用于定义传感器中感兴趣的部分。例如,监视接口吞吐量的规则需要能够从设备上的可用接口列表中识别特定接口。下面将讨论字段详细信息。

  1. 单击变量选项卡。
  2. 单击添加变量按钮(+ 添加变量
  3. 将随机变量名称替换为对您的规则有意义的变量名称,例如 pem-power-usage-threshold
    最佳实践:

    瞻博网络在 Paragon Automation 中元素命名的公认惯例是始终以小写字母开头,并使用连字符分隔单词。确保您的变量名称是唯一的、名称清晰的,并遵循可识别的模式,以便其他人可以理解变量的用途。任何缩写都应始终一致地使用。

  4. 在默认值字段中设置适当的默认值。

    默认值因字段类型而异。整型字段类型使用数值默认值,而字符串字段类型使用字符串设置精确默认值,并使用正则表达式允许您从列表中设置默认值。规则定义期间设置的任何默认值都可以在应用时在设备或设备组级别覆盖。

  5. “类型”下拉列表中选择适当的变量类型。

    可用的字段类型包括:整数、浮点、字符串、布尔值、设备、设备组和无符号整数。

    也可以选择无符号整数作为变量类型。无符号整数是一种数据类型,可以包含 0 到 4,294,967,295 之间的值。

功能

(可选)定义任何需要的功能。

函数块允许用户在 python 文件中创建函数并引用该文件中可用的方法。Python 文件必须在 Paragon Automation 之外创建。您必须了解方法名称和任何参数,因为在定义函数时将需要它们。

在 Paragon Automation 中,您可以使用 Python 用户定义的函数返回多个值。这些值存储在数据库的多个字段中。

例如,假设您有一个具有三个返回值的函数example_function.py。在规则中调用example_function.py时,用户定义函数 (UDF) 中的第一个返回值存储在调用该函数的规则字段中。您只需为其余两个返回值配置返回字段,例如 r2r3。您可以在“函数”选项卡的“返回列表”中为返回值配置这些字段。

在时间序列数据库中,返回列表字段的名称以使用 UDF 的规则字段的名称为前缀。例如, rule_field_name-r2

图 4 显示了 Functions 块中的示例配置。

图 4:功能块 The Functions Block

要配置函数:

  1. 单击“功能”链接。
  2. 单击 + 添加函数
  3. 输入函数名称。例如,used-percentage.
  4. 函数路径 字段中,输入包含函数的 python 文件的名称。这些文件必须存储在 /var/local/healthbot/input/hb-default 目录中。该列表中填充了该目录中的所有 Python (.py) 文件。
  5. Method Name字段中,输入 python 文件中定义的方法的名称。例如,used_percentage.
  6. (可选)在说明框中输入函数的说明。
  7. (可选)对于 python 函数可以采用的每个参数,单击“+ 添加参数”。

    每次单击添加参数按钮时,都需要输入参数的名称,并将切换开关设置为参数是否为必填参数。默认情况下,所有参数都不是必需的。

  8. (可选)如果函数中有多个参数具有返回值,请单击“+添加返回列表”。
  9. 输入返回值的名称和数据类型,例如整数。

触发器

需要设置的规则定义必需元素是触发器元素。图 5 显示了该system.memory/check-system-memory规则的触发器块。下面将讨论字段详细信息。

图 5:触发器块 The Triggers Block

设置触发器涉及创建用于设置策略的术语。如果触发器中的字词匹配,则会执行某些操作。术语可以相互评估规则中定义的字段、函数、变量等,或搜索特定值。术语按从术语列表顶部到底部的顺序进行评估。如果未找到匹配项,则评估下一个术语(如果有),直到找到匹配项或到达术语堆栈的底部。

  1. 单击触发器链接。
  2. 单击添加触发器按钮(+添加触发器)。
  3. 将随机触发器名称替换为对要定义的触发器有意义的名称,例如 foo-link-operation-state。建议使用规则和触发器非常唯一的名称,以避免在两个或多个规则中使用相同的触发器名称。
  4. (可选)在“频率”字段中输入一个值。此值告知 Paragon Automation 查询和评估字段数据和触发器的频率。如果未在此处输入,则传感器频率将应用于此值。此处输入的频率可以输入为传感器频率的倍数或偏移量,例如 2o。例如,如果传感器频率为 10s,触发频率为 2o,则触发频率为 20s (2*10s)。
  5. 单击添加术语按钮 (+添加术语)。

    “术语”区域将展开并显示“时间部分中的“添加条件”按钮(+ 添加条件),并在“然后”部分中显示“颜色”和“消息”字段。

  6. 要定义术语将计算的条件,请单击 + 添加条件按钮。

    “时间”部分将展开以显示“左操作数”、“运算符”和时间范围”字段。

    注意:

    不需要设置条件。如果要保证 术语 执行特定操作,请不要设置条件。例如,如果您希望指示触发器中的任何术语都不匹配,这可能很有用,例如,在术语堆栈的底部。

  7. 从下拉菜单中为每个字段选择值。

    根据选择的 运算符 ,新字段 “右操作数 ”可能会出现在 “运算符 ”和 “时间范围 ”字段之间。

    左操作数和右操作数下拉菜单填充了规则中定义的字段和变量。运算符字段确定要执行的比较类型。时间范围字段允许触发器评估诸如最后一分钟是否有任何丢弃的数据包等内容。

  8. (可选)设置“颜色”和“消息”字段的值,并在“然后”部分添加操作引擎信息。

    这些字段是操作字段。如果在同一项内设置的条件中进行匹配,则会执行您在此处定义的任何操作。可以将颜色值设置为绿色、黄色或红色。也可以设置消息,并且不依赖于是否设置了任何颜色。

    您可以在设置触发器时将操作工作流(操作引擎)链接到规则。您还可以在链接操作工作流时添加输入参数。 “操作引擎 ”部分仅使用 PIN 高级许可证启用。有关更多信息,请参阅 Action Engine 工作流概述Paragon Insights 许可概述

    如果设置了颜色或消息,则标记为 “评估下一个术语 ”的切换按钮将显示在 “然后” 部分的底部。此按钮的默认值为关闭(非活动)。

    注意:

    如果在术语的 “时间” 部分中未进行匹配,则忽略 “然后 ”部分。如果发生这种情况,将评估下一个术语(如果有)。

    如果在 “时间” 部分中进行了匹配,则会执行“ 然后 ”部分中的操作(如果有),并且除非 “评估下一个术语 ”按钮设置为“开(活动)”,否则将停止处理术语。

    通过设置 评估下学期 按钮,您可以让 Paragon Automation 进行更复杂的评估,例如“如果一个条件和另一个条件都为真,则执行此操作”。

规则属性

(可选)在 规则属性 块中指定 Paragon Automation 规则的元数据。可用选项包括:

属性

描述

版本

输入 Paragon Automation 规则的版本。

贡献

从下拉列表中选择一个选项。

作者

指定有效的电子邮件地址。

日期

从弹出式日历中选择一个日期。

支持的 Paragon 自动化版本

指定规则有效的最早的 Paragon Automation 版本。

瞻博网络设备>支持的设备

选择 Junos 或 Junos Evolved。设备元数据包括产品名称、版本名称、版本支持(下拉列表)和平台。您可以为多个设备添加元数据,为每个设备添加多个产品,为每个产品添加多个版本。

您可以选择要应用于所有受支持设备的默认传感器。您还可以选择要应用于瞻博网络设备和运行特定操作系统的瞻博网络设备的默认传感器。

支持的设备>其他供应商设备

您可以为非瞻博网络供应商添加供应商标识符、供应商名称、产品、平台、版本和操作系统相关信息。

您可以选择要应用于所有非瞻博网络设备的默认传感器。

帮助程序文件

指定 Paragon Automation 规则所需的文件。