FRR 平台选项
FRR 集合支持 ansible.netcommon.network_cli
连接。本节详细介绍了如何将此连接用于 Free Range Routing (FRR)。
可用连接
CLI |
|
---|---|
协议 |
SSH |
凭据 |
如果存在,则使用 SSH 密钥/SSH-agent 如果使用密码,则接受 |
间接访问 |
通过堡垒机(跳转主机) |
连接设置 |
|
启用模式 |
不支持 |
返回数据格式 |
|
在 Ansible 中使用 CLI
示例 CLI group_vars/frr.yml
ansible_connection: ansible.netcommon.network_cli
ansible_network_os: frr.frr.frr
ansible_user: frruser
ansible_password: !vault...
ansible_ssh_common_args: '-o ProxyCommand="ssh -W %h:%p -q bastion01"'
ansible_user
应该是frrvty
组的一部分,并且默认 shell 应设置为/bin/vtysh
。如果您正在使用 SSH 密钥(包括 ssh-agent),则可以删除
ansible_password
配置。如果您正在直接访问主机(而不是通过堡垒机/跳转主机),则可以删除
ansible_ssh_common_args
配置。如果您正在通过堡垒机/跳转主机访问主机,则不能将 SSH 密码包含在
ProxyCommand
指令中。为了防止机密信息泄露(例如在ps
输出中),SSH 不支持通过环境变量提供密码。
示例 CLI 任务
- name: Gather FRR facts
frr.frr.frr_facts:
gather_subset:
- config
- hardware
警告
切勿以纯文本形式存储密码。我们建议使用 SSH 密钥来验证 SSH 连接。Ansible 支持 ssh-agent 来管理您的 SSH 密钥。如果您必须使用密码验证 SSH 连接,我们建议使用 Ansible Vault 对其进行加密。
另请参阅