Ansible 性能优化
优化前的准备:收集数据
cd /etc/ansible
mkdir callback_plugins
cd callback_plugins
wget https://raw.githubusercontent.com/jlafon/ansible-profile/master/callback_plugins/profile_tasks.py
修改callback_plugins/profile_tasks.py文件解决编码问题
...
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
...
关闭 gathering facts
---
- hosts: 192.168.1.100
gather_facts: no // 添加此行
remote_user: testuser
sudo: yes
roles:
- {role: profile_test}
配置 SSH PIPElinING
SSH pipelining 是一个加速 Ansible 执行速度的简单方法。ssh pipelining 默认是关闭,之所以默认关闭是为了兼容不同的 sudo 配置,主要是 requiretty 选项。如果不使用 sudo,建议开启。打开此选项可以减少 ansible 执行没有传输时 ssh 在被控机器上执行任务的连接数。不过,如果使用 sudo,必须关闭 requiretty 选项。修改 /etc/ansible/ansible.cfg 文件可以开启 pipelining。
pipelining = True