适用于 Junos OS 的 Salt 概述
Salt或SaltStack平台是一个基于Python的开源远程执行和配置管理工具。您可以使用 Salt 定义和强制实施系统状态,或在设备上执行即席命令。Salt 具有高度可扩展性,可以管理数千台设备,包括运行 Junos OS 的设备。
Salt 主 节点是管理一个或多个节点或 Salt 工作节点的主控制服务器。Salt 主节点可以通过 Salt 代理工作节点管理运行 Junos OS 的设备。代理工作节点使您能够管理不直接运行 Salt 工作节点但可以通过其他协议(例如网络配置协议 (NETCONF))管理的设备。
Salt 安装包括以下组件和模块,使您能够使用 Salt 管理运行 Junos OS 的设备:
Junos 代理 — 将 Salt 操作转换为特定于 Junos OS 的说明,并使 Salt 系统能够连接到运行 Junos OS 的设备并对其进行管理。
Junos 执行模块 — 定义执行功能,使您能够从 Salt master 命令行在运行 Junos OS 的设备上执行临时任务。
Junos 状态模块 — 定义状态函数,使您能够声明和实施运行 Junos OS 的设备的所需状态。
Junos 系统日志引擎 — 监控从运行 Junos OS 的设备发送的系统日志消息,提取事件信息,并以 Salt 格式将其发布到 Salt 事件总线上。
Junos 代理使用 ZeroMQ 事件总线连接到 Salt 主站,并使用瞻博网络 Junos PyEZ 库通过 SSH 与运行 Junos OS 的设备建立 NETCONF 会话。 Junos PyEZ 是一个适用于 Python 的微框架,可用于管理和自动化运行 Junos OS 的设备。 图 1 显示了运行 Junos OS 的设备的典型 Salt 设置。