3

我在主机清单中有 100 台主机。主机清单如下所示:

[workstations-new]
de001pc[100:201] ansible_connection=ssh ansible_ssh_user=root

当我运行 ansible-playbook 命令时:

ansible-playbook playbooks/linux/uptime.yml -i hosts-inventory --extra-vars "hosts=workstations-new" -k

正在所有主机上运行它,但它不会按升序排列主机。它以非顺序(103、14、102、100,...)

例子:

TASK: [uptime machine] ******************************************************** 
changed: [de001pc103]
changed: [de001pc104]
changed: [de001pc102]
changed: [de001pc100]
changed: [de001pc101]
changed: [de001pc107]
changed: [de001pc106]
changed: [de001pc108]
changed: [de001pc109]
changed: [de001pc110]
changed: [de001pc116]
changed: [de001pc112]
................................................

如何运行命令以升序获取主机?

4

1 回答 1

5

默认情况下,Ansible 将尝试并行管理一个 play 中引用的许多机器。有些机器的回复速度可能比其他机器稍快。这就是为什么你在 101 之前看到 103。

如果您希望您的托管机器严格按顺序处理,您应该使用serial: 1参数。但是,请记住,您将显着减慢 playbook 的执行速度。如果我的数学计算正确,那么在 100 台机器上会慢 20 倍。

于 2014-08-29T05:24:40.050 回答