Ansible
如何並行執行 ansibe playbook
網站.yml
--- - import_playbook: common.yml - import_playbook: redis.yml - import_playbook: riak.yml - import_playbook: webserver.yml - import_playbook: haproxy.yml
我想並行執行這些劇本。
像
- import_playbook: common.yml # after common.yml run these 4 in parallel parallel { - import_playbook: redis.yml - import_playbook: riak.yml - import_playbook: webserver.yml - import_playbook: haproxy.yml }
我怎樣才能做到這一點?
一個選項是在後台執行其他劇本
> cat project.bash #!/bin/bash ansible-playbook common.yml # Run the other playbooks in the background ansible-playbook redis.yml > ansible-redis.log & ansible-playbook riak.yml > ansible-riak.log & ansible-playbook webserver.yml > ansible-webster.log & ansible-playbook haproxy.yml > ansible-haproxy.log &
要監控項目,請打開其他四個終端並使用“ tail -f ansible- … ”查看日誌
我是ansible-parallel的作者,所以你可以試試:
pip install ansible-parallel ansible-parallel *.yml
它顯示進度的實時更新,並在最後顯示報告。