如何在 Ansible 中的一个变量中使用来自多个主机的 hostvars?

How use hostvars from multiple hosts in one variable in Ansible?

我想向 Aerospike 集群添加更多服务器。为此,我想使用 gather_facts 中的事实。这是我如何为一台服务器做的例子。 我如何添加所有适用于我的剧本的主机?我不想使用清单中组中的主机 - 因为我使用的是动态清单。

heartbeat {
    mode mesh
    port 3002
    mesh-seed-address-port {{ hostvars[inventory_hostname]['ansible_default_ipv4']['address'] }} 3002
    interval 150
    timeout 10
}

Thank you.

你的问题有点含糊。我建议编写一个动态清单脚本 (https://docs.ansible.com/ansible/developing_inventory.html)

也就是说,如果您坚持使用事实动态生成库存,您可以在 with_items(或其他循环类型)循环中使用 add host 模块。