我想在 EC2 实例列表上运行 ansible adhoc 命令。我希望 ansible 按顺序运行它,但 ansible 随机运行它们。例如:
13:42:21 @cnayak ansible :► ansible aws -a "hostname"
ec2 | SUCCESS | rc=0 >>
ip-172-31-36-255
ec3 | SUCCESS | rc=0 >>
ip-172-31-45-174
13:42:26 @cnayak ansible :► ansible aws -a "hostname"
ec3 | SUCCESS | rc=0 >>
ip-172-31-45-174
ec2 | SUCCESS | rc=0 >>
ip-172-31-36-255
有什么办法可以让它们按顺序运行?
最佳答案
默认情况下,ansible 并行运行任务。如果您希望它们连续执行,那么您可以使用“--forks”选项限制同时运行的 worker 数量。
将“--forks 1”添加到您的 ansible 调用应该在所有主机上按顺序运行您的命令(按 list 定义的顺序)。
关于Ansible 临时命令按顺序排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37408042/