Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

创建自定义遥测收集器

总结 本主题介绍创建自定义遥测收集器所需的步骤。

在本主题中,我们将引导你使用 BFD 创建自己的自定义遥测服务。在我们的示例中,遥测服务收集您刚刚配置的 BFD 会话的状态。我们的目标是提醒操作 BFD 会话已关闭。

执行 CLI 命令

从 Apstra 版本 4.2.0 开始,您可以直接从 Apstra GUI 运行适用于 Junos 设备的 CLI show 命令。尽管可以在不打开 CLI 会话的情况下运行 show 命令,但其主要目的是帮助你创建自己的自定义遥测收集器。

您可以从暂存或活动蓝图(如我们的示例中所示)中执行 CLI 命令,也可以从 设备>托管设备 页面执行 CLI 命令。

要执行 CLI 命令,请执行以下操作:

  1. 从已部署的蓝图中,选择“>分段物理拓扑 分析”(或“分段>物理>节点”),然后选择瞻博网络设备节点。
  2. 在右侧面板显示的选择部分的设备选项卡上,单击执行 CLI 命令
    在打开的对话框中,选择查看结果的方式:文本模式、XML 模式或 JSON 模式。下面是 文本模式XML 模式的示例。
    注意:

    CLI 仅支持 Junos show 命令。不能运行影响设备状态的命令,如 request system reboot。有关各种 show 命令的信息,请参阅 Junos OS CLI 用户指南

    现在,运行相同的 show 命令 (show route summary),但这次选择 XML 模式

    在 XML 输出中,将突出显示 XML 路径(BFD 会话)信息。我们将使用此会话信息来创建遥测收集服务。

从 CLI 输出中识别感兴趣的键和值

此示例说明如何使用 CLI show 命令查看 BFD 会话的邻居地址和状态信息( “向上 ”或 “向下”)。
  1. 输入 CLI show 命令(在本例中为 show bfd session)。
  2. 单击执行以查看 BFD 会话信息。

创建服务架构

若要创建自定义服务收集器,首先需要创建一个服务架构来定义数据的结构化和存储方式。
注意:

单个遥测服务架构可以有多个与之关联的收集器。

  1. 从左侧导航菜单中,导航到“设备>服务注册表”,然后单击“创建服务架构”。
  2. 在打开的对话框中,定义架构。架构确定您希望如何构建收集器输出。
  3. 映射遥测键值类型
    遥测键值类型是 Apstra 中 键值对 的集合,定义如下:
    • 遥测密钥:标识接口名称的字符串。

    • 值类型:探测对其执行的数据片段。值类型通常是字符串(文本),但也可以是整数(整数)。

    如步骤 2 中的示例所示,我们将 遥测密钥 定义为 邻居 ,将 值类型 定义为 字符串
  4. 单击更新以完成架构创建。

创建收集器

到目前为止,您已经定义了要收集的数据以及如何组织和构建数据。我们的最后一步是创建一个收集器。
注意:

单个遥测服务架构可以有多个与之关联的收集器。

要创建收集器:
  1. 从左侧导航窗格中,导航到“设备>收集器”>“创建收集器”。
  2. 选择在创建服务架构中创建的现有服务架构 (BFD),然后单击下一步
  3. 选择要作为遥测集合目标的平台(操作系统、操作系统变体、操作系统版本和型号)和设备。定义这些输入的组合可以使您变得非常广泛或非常精细。例如,你可能有一个用例,即只想在边界叶设备上应用遥测。
    1. 选择操作系统类型 junosjunos-evo
      有关 Junos-evo(也称为 Junos OS 演化版)的详细信息,请参阅 Junos OS 演化版文档
      注意:

      如果未为 Junos-evo 设备定义 Junos-evo 收集器,则收集器将使用相应的 Junos 定义。这意味着,如果在 Junos 和 Junos-evo 之间使用相同的命令,则可以为该服务创建单个 Junos 收集器定义。如果命令仅驻留在 Junos-evo 上,则需要为 Junos-evo 创建单个收集器定义。

    2. 选择设备所属的操作系统变体并确定给定设备的 CLI 架构。
    3. 选择设备必须运行的最低操作系统版本,以便收集器执行。如果同一服务存在多个具有不同操作系统版本的收集器定义,则收集器会自动选择最接近设备运行版本的收集器定义。
    4. (可选)指定要基于设备型号或系列筛选的模型或正则表达式。
      下表显示了当前在 Apstra 中管理的目标设备列表,并与应用的筛选器组合相匹配。
    5. 单击下一步
  4. 执行 CLI 命令。
    使用 show 命令收集要从设备收集的数据(在本例中为 show bfd session)。
  5. 映射键和值。
    到目前为止,我们已经定义了服务架构、目标平台以及自定义遥测收集器将执行的 CLI 命令。接下来,我们将映射之前在架构中定义的键和值类型。
    1. 若要映射键,请单击“全部展开”以搜索要映射的 RPC 值。
    2. 单击添加映射
    3. 会话邻居分配给密钥(在本例中为 邻居)。
    4. 若要映射值,请选择“字段”作为“值源”。在我们的示例中,我们根据 CLI 命令返回的动态session-state字段填充了值。
    5. 搜索会话状态字段,然后单击添加映射
    6. 分配session-state以映射值,然后单击提交

验证收集器是否正常工作

最后,在 “高级 ”视图中,验证收集器是否正常工作。验证查询和测试结果是否与预期结果匹配。

祝贺!您已成功创建收集器。

注意:

为收集器定义整数(数字)值时,可能需要输入值表达式才能使收集器正常工作。这是因为 Junos 偶尔会将数字数据报告为字符串。在处理收集器之前,您必须在 Apstra 端执行从 字符串整数 的转换。

要定义收集器的整数(数字)值,请在 值表达式字段中输入 int(值),然后单击 提交