一、準備CentOS環境web
yum update && yum upgrade
二、控制服務器與被管理服務器要求shell
Master:Python 2.6+ Slave:Python 2.4+,最好也是2.6+(CentOS 6.7自帶)
三、配置SSH自動登陸服務器
配置Master向每一臺Slave的SSH無密碼登陸(在Master上使用ssh-keygen生成密鑰對,並將id_rsa.pub加入到每個Slave的authorized_keys中)ssh
四、使用yum安裝ansible測試
yum install ansible
若是提示沒有此安裝包,能夠加入EPEL擴展包:spa
yum install epel-release yum install ansible
五、配置hostcode
默認在/etc/ansible/hosts,加入Slave的ip地址,例如blog
[Web] 192.168.1.101 192.168.1.102 192.168.1.103
六、測試ip
ansible all -m ping
成功ping同後顯示get
192.168.1.101 | success >> { "changed": false, "ping": "pong" } 192.168.1.102 | success >> { "changed": false, "ping": "pong" } 192.168.1.103 | success >> { "changed": false, "ping": "pong" }
基本查看命令:
ansible all -a 'uptime' ansible all -a 'free -m'
七、使用模塊(-m)
command 模塊不支持 shell 變量,也不支持管道等,若是須要使用這些功能,能夠藉助模塊
ansible web -m shell -a 'echo $TERM'
拷貝文件模塊(-m copy)
ansible web -m copy -a "src=/etc/hosts dest=/tmp/hosts"
文件屬性模塊
ansible web -m file -a "dest=/srv/foo/b.txt mode=600 owner=mdehaan group=mdehaan"
服務模塊
ansible web -m service -a "name=httpd state=started"
具體用法能夠參考: