安装 Puppet Junos OS
随着 Puppet 中针对受支持平台指示Junos OS Puppet 的支持也移除。
设置 Puppet Master
瞻博网络支持使用 Puppet 管理运行网络的某些Junos OS。Puppet 主设备必须运行 Puppet 开源版本。 表 1 概括了必须安装在 Puppet 主设备上的 Puppet 版本,以便管理客户端上Junos OS Puppet 的不同 Junos OS 变体和Junos OS版本。
Junos OS变体 |
适用于 Junos OS 版本的 Puppet |
Puppet 版本 |
---|---|---|
Junos OS自动化Junos OS或解决方案 |
1.0 |
Puppet 2.7.19 或更高版本 |
2.0 |
Puppet 3.6.1 或更高版本 |
|
Junos OS不断演进 |
– |
Puppet 3.8.7 或更高版本 |
Puppet 主设备还必须安装以下软件,以便使用 Puppet 管理运行Junos OS:
瞻博网络 NETCONF Ruby ruby 瞻博网络 — Ruby ruby,使用 NETCONF 协议实现设备管理。
netdevops/netdev_stdlib Puppet 模块 — 包括 netdev 资源的 Puppet 类型定义。
瞻博网络/netdev_stdlib_junos Puppet 模块 — 包括Junos OS类型的特定代码。在 Puppet 主设备中安装此模块时,会自动 安装 netdev_stdlib 模块 。
要配置 Puppet 主设备,将其与运行 Junos OS:
Puppet 代理使用 SSL 使用 Puppet 主设备标识。默认情况下,puppet Master 服务不会对客户端证书请求进行签名。因此,Puppet 主设备必须在代理第一次尝试连接到主设备时批准代理证书。配置并运行 Puppet 代理节点之后,使用适用于您的安装的命令(例如,使用 命令或 命令)批准 Puppet master puppet cert sign host
puppetserver ca sign --certname host
上的客户端证书。
配置 Puppet 代理节点
瞻博网络支持使用 Puppet 管理运行网络的某些Junos OS。代理节点上的设置取决于设备上运行的设备和Junos OS变体。某些设备需要在设备上安装 Puppet 代理包,其他设备将 Puppet 代理集成到软件映像中,有些设备支持将 Puppet 代理作为 Docker 容器运行。要验证对特定平台的支持,并确定要使用给定设备和版本Junos OS,请参阅 Puppet Junos OS支持的平台。
表 2 概括了为不同类型的设置配置 Puppet 代理节点所需的任务。要配置节点,请在每个已链接的任务中执行步骤。
Puppet 代理设置 |
任务 |
---|---|
Puppet 代理必须使用 jpuppet 软件包安装 |
执行以下步骤: |
Puppet 代理集成在设备上 |
执行以下步骤: |
Puppet 代理将作为 Docker 容器运行 |
执行以下步骤: |
OCX1100,QFX 系列使用增强型自动化Junos OS运行的交换机,以及运行 Junos OS Evolved 的设备将 Puppet 代理与软件集成。如果设备还支持使用 Puppet 代理 Docker 容器,则您可以选择将 Puppet 代理作为 Docker 容器运行,而不是使用集成的 Puppet 代理。
安装 Puppet 代理包
要向运行未集成Junos OS的设备上安装 Puppet 代理:
配置 Junos OS 用户帐户
您必须配置用户帐户以运行 Puppet 代理。用户必须拥有配置、控制和查看权限。您可以为帐户配置任何用户名和认证方法。
要配置 Junos OS以运行 Puppet 代理:
配置环境设置
在安装 Puppet 代理包或使用与软件映像集成的 Puppet 代理的任何代理节点上设置目录结构和环境设置。
要配置必要的目录结构和环境设置以运行 Puppet 代理,
启动 Puppet 代理进程
将 Puppet 代理集成到软件中的设备需要在设备上启动 Puppet 代理进程。配置应用程序用户帐户和环境设置Junos OS启动 Puppet 代理进程。
要启动 Puppet 代理进程:
使用 Puppet Agent Docker 容器
运行 Junos OS Evolved 支持以 Docker 容器运行 Puppet 代理的某些设备。Docker 是一个软件容器平台,用于将应用程序及其依赖项打包在隔离容器中并运行。瞻博网络为 Docker 中心上的 Puppet 代理提供 Docker 映像。
使用 Docker 容器运行 Puppet 代理时,容器:
共享主机的主机名和网络命名空间
使用主机网络与 Puppet 服务器通信
使用基于密钥的 SSH 身份验证向主机进行身份验证
要使用受支持的设备上 Puppet 代理 Docker 容器:
在运行该配置文件的 Puppet Master 和 Puppet 代理上设置 Puppet 配置文件Junos OS
Puppet 配置文件 puppet.conf 用于定义 Puppet 主节点和代理节点的设置。这是一个 INI 格式的文件,其代码块包含缩进设置 = 值语句。主要代码块包括:
[master]
—Puppet 主设备的设置。[agent]
—代理节点的设置。[main]
—所有命令和服务均使用的全局设置。和 中的设置[master]
将[agent]
覆盖 中的设置[main]
。
在 Puppet master 上,配置文件驻留在 $confdir/puppet.conf 上。在运行 Junos OS 的代理节点上,位置取决于设置。 表 4 概括显示了在运行任何设备的给定设置时 Puppet 配置文件应驻留Junos OS。
Puppet 代理设置 |
puppet.conf 位置 |
---|---|
Puppet 代理使用 jpuppet 软件包 安装 |
$HOME/.puppet 目录, 用于Junos OS设置以运行 Puppet 代理 |
Puppet 代理集成在设备上 |
$HOME/.puppet 目录, 用于Junos OS设置以运行 Puppet 代理 |
Puppet 代理以 Docker 容器运行 |
/etc/puppet directory(容器内) |
本文档不介绍创建环境特定的 Puppet 配置文件。但是,使用 Puppet 管理运行 Junos OS 的设备时,Puppet 主节点和代理节点 puppet.conf 文件 [main]
必须在配置块中包含以下语句:
[main] pluginsync = true
此外,运行 Junos OS Evolved certname
的客户端设备必须将 语句包括在 puppet.conf 文件中,并指定节点的证书名称。Puppet 主设备使用证书名称(可以是主机名、IP 地址或任何以小写字符表示的用户定义名称)来识别客户端。
[main] certname = puppet-client pluginsync = true
以下示例显示运行新代码的代理节点的 puppet.conf 示例Junos OS:
[main] libdir = $vardir/lib logdir = $vardir/log/puppet rundir = $vardir/run/puppet ssldir = $vardir/ssl moduledir = $libdir factpath = $libdir/facter pluginsync = true [agent] server = puppetmaster.example.com classfile = $vardir/classes.txt localconfig = $vardir/localconfig
以下示例显示运行 Junos OS Evolved 的代理节点的 puppet.conf 文件示例:
[main] libdir = $vardir/lib logdir = $vardir/log/puppet rundir = $vardir/run/puppet ssldir = $vardir/ssl moduledir = $libdir factpath = $libdir/facter certname = agent01.example.com pluginsync = true [agent] server = puppetmaster.example.com classfile = $vardir/classes.txt localconfig = $vardir/localconfig
有关 Puppet 配置文件的信息,请参阅 Puppet https://puppet.com/。
为可地址存储Junos OS Puppet
在运行 Junos OS 的设备上,默认情况下 Puppet 可用内存量为 64 MB。您可以将可用内存扩展为表 5 中定义的系统 最大值。
装置 |
上内存限制 |
---|---|
EX4200、EX4500、EX4550 |
128 MB |
EX4300 |
64 MB |
MX5、MX10、MX40、MX80 |
64 MB |
MX104 |
64 MB |
MX240、MX480、MX960 |
2048 MB |
OCX1100 |
64 MB |
QFX3500,QFX3600 |
1024 MB |
QFX5100 |
64 MB |
QFX10002、QFX10008、QFX10016 |
1024 MB |
要扩展 Puppet 代理执行环境(包括 Puppet 代理和 Facter 进程)可用的内存量: