一、安装
注意:强烈建议升级python版本到2.6以上,不然运行会出错或者有些功能会没有,在编译安装其他包的时候也会因为兼容问题报错。
(1)、python2.7安装
https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz# tar xvzf Python-2.7.8.tgz# cd Python-2.7.8# ./configure --prefix=/usr/local# make# make install
## 将python头文件拷贝到标准目录,以避免编译ansible时,找不到所需的头文件
# cd /usr/local/include/python2.7# cp -a ./* /usr/local/include/
## 备份旧版本的python,并符号链接新版本的python
# cd /usr/bin# mv python python.old# ln -s /usr/local/bin/python2.7 /usr/local/bin/python# rm -f /usr/bin/python && cp /usr/local/bin/python2.7 /usr/bin/python
## 修改yum脚本,使其指向旧版本的python,已避免其无法运行
# vim /usr/bin/yum#!/usr/bin/python --> #!/usr/bin/python2.4
(2)、setuptools模块安装
https://pypi.python.org/packages/source/s/setuptools/setuptools-7.0.tar.gz# tar xvzf setuptools-7.0.tar.gz# cd setuptools-7.0# python setup.py install
安装好setuptools后就可以利用easy_install这个工具安装下面的python模块了,但本机是虚拟机,配置太低,所以基本无法安装,所以只好一个一个下载下来进行安装。
(3)、pycrypto模块安装
https://pypi.python.org/packages/source/p/pycrypto/pycrypto-2.6.1.tar.gz# tar xvzf pycrypto-2.6.1.tar.gz# cd pycrypto-2.6.1# python setup.py install
(4)、PyYAML模块安装
http://pyyaml.org/download/libyaml/yaml-0.1.5.tar.gz# tar xvzf yaml-0.1.5.tar.gz# cd yaml-0.1.5# ./configure --prefix=/usr/local# make --jobs=`grep processor/proc/cpuinfo | wc -l`# make install
https://pypi.python.org/packages/source/P/PyYAML/PyYAML-3.11.tar.gz# tar xvzf PyYAML-3.11.tar.gz# cd PyYAML-3.11# python setup.py install
(5)、Jinja2模块安装
https://pypi.python.org/packages/source/M/MarkupSafe/MarkupSafe-0.9.3.tar.gz# tar xvzf MarkupSafe-0.9.3.tar.gz# cd MarkupSafe-0.9.3# python setup.py install
https://pypi.python.org/packages/source/J/Jinja2/Jinja2-2.7.3.tar.gz# tar xvzf Jinja2-2.7.3.tar.gz# cd Jinja2-2.7.3# python setup.py install
(6)、paramiko模块安装
https://pypi.python.org/packages/source/e/ecdsa/ecdsa-0.11.tar.gz# tar xvzf ecdsa-0.11.tar.gz# cd ecdsa-0.11# python setup.py install
https://pypi.python.org/packages/source/p/paramiko/paramiko-1.15.1.tar.gz# tar xvzf paramiko-1.15.1.tar.gz# cd paramiko-1.15.1# python setup.py install
(7)、simplejson模块安装
https://pypi.python.org/packages/source/s/simplejson/simplejson-3.6.5.tar.gz# tar xvzf simplejson-3.6.5.tar.gz# cd simplejson-3.6.5# python setup.py install
(8)、ansible安装
https://github.com/ansible/ansible/archive/v1.7.2.tar.gz# tar xvzf ansible-1.7.2.tar.gz# cd ansible-1.7.2# python setup.py install
(9)、SSH免密钥登录设置
## 生成公钥/私钥# ssh-keygen -t rsa -P ''## 写入信任文件(将/root/.ssh/id_rsa_storm1.pub分发到其他服务器,并在所有服务器上执行如下指令):# cat /root/.ssh/id_rsa_storm1.pub >> /root/.ssh/authorized_keys# chmod 600 /root/.ssh/authorized_keys
(10)、拷贝,生成ansible配置文件
a 配置文件/etc/ansible/ansible.cfg# mkdir -p /etc/ansible#cp ansible-1.7.2/examples/ansible.cfg /etc/ansible/b 配置文件/etc/ansible/hosts# vim /etc/ansible/hosts[test]192.168.110.20192.168.110.30
测试
# ansible test -m command -a 'uptime'## 用来测试远程主机的运行状态# ansible test -m ping
参看所有的参数
ansible-doc -l