2.3. 从网络设备收集事实
gather_facts 关键字支持在标准化键/值对中收集网络设备事实。您可以将这些网络事实放到进一步的任务中,以管理网络设备。您也可以将 gather_network_resources 参数与网络 *_facts 模块(如 arista.eos.eos_facts)搭配使用,以返回设备配置的子集,如下所示。
- hosts: arista
gather_facts: True
gather_subset: interfaces
module_defaults:
arista.eos.eos_facts:
gather_network_resources: interfaces
playbook 返回以下接口事实:
"network_resources": {
"interfaces": [
{
"description": "test-interface",
"enabled": true,
"mtu": "512",
"name": "Ethernet1"
},
{
"enabled": true,
"mtu": "3000",
"name": "Ethernet2"
},
{
"enabled": true,
"name": "Ethernet3"
},
{
"enabled": true,
"name": "Ethernet4"
},
{
"enabled": true,
"name": "Ethernet5"
},
{
"enabled": true,
"name": "Ethernet6"
},
]
}
注意
gather_network_resources 将配置数据呈现为所有支持的资源的事实(interfaces/bgp/ospf/etc'),而 gather_subset 则主要用于获取操作数据。
您可以存储这些事实,并将它们直接在另一个任务中使用,如 eos_interfaces 资源模块。