如何在调试时在Ansible中指定临时目标?
我应该重新写问题,所以我做了。>“不太清楚你想在这里做什么。” 我正在尝试调试任务。在调试中,我的目标是临时主机(一个由lxd创建的主机),我希望目标是这个主机 上一篇: 标题:如何在Ansible中以现代方式动态设定特定目标如何在调试时在Ansible中指定临时目标?,ansible,Ansible,我应该重新写问题,所以我做了。>“不太清楚你想在这里做什么。” 我正在尝试调试任务。在调试中,我的目标是临时主机(一个由lxd创建的主机),我希望目标是这个主机 上一篇: 标题:如何在Ansible中以现代方式动态设定特定目标 我似乎认为Ansible清单的目的是提供固定的目标主机,但我想在调试时动态地指定目标主机。这是存在的,但情况并非如此。我想知道如何在Ansible中以现代方式动态设定目标?不太清楚您想在这里做什么。如果您试图与拥有临时主机的云提供商打交道,您可以使用云提供商模块加上“添加
我似乎认为Ansible清单的目的是提供固定的目标主机,但我想在调试时动态地指定目标主机。这是存在的,但情况并非如此。我想知道如何在Ansible中以现代方式动态设定目标?不太清楚您想在这里做什么。如果您试图与拥有临时主机的云提供商打交道,您可以使用云提供商模块加上“添加主机”模块在运行时基本上构建资源清册(这可以确保您在销毁和重建主机时不必每次都重建资源清册)。这就是您链接的“DynamicInventory”文章要解决的问题,它不需要任何额外的脚本来运行 如果您试图将一个或两个主机作为调试的目标(这是“在调试的情况下”注释所建议的),那么ansible中的“limit”选项就是您想要的。它允许您在运行playbook时限制为单个组或主机
如果您提供更多信息,我可以提供这两种方法的一些示例。当运行
ansible playbook
时,使用--limit
或-l
为特定组或主机运行
如果您想在播放过程中创建一个临时主机,您可以在剧本中使用添加主机
模块:
- add_host:
hostname: "{{ new_ip }}"
ansible_ssh_host: "{{ inventory_hostname }}"
ansible_ssh_port: "{{ new_port }}"
我似乎很容易在飞行中编辑我的库存。我前面的问题太混乱了,所以我已经澄清了这个问题。我想调试我的任务,并将lxd设为主机。如果您所做的只是尝试在临时主机上运行整个playbook,只需创建一个单独的清单文件(或在同一清单文件中创建一个单独的组)。