这里使用的软件包为一下版本
Python-2.7.12.tgz
pip-9.0.1.tar.gz
ansible-2.2.0.0.tar.gz
其他依赖包使用pip方式安装
方便说明做以下设定:
控制机:192.168.254.131
被控机:192.168.254.134
具体步骤哦如下:
在控制机上做如下操作:
(1)安装依赖包
#yum install -y gcc zlib zlib-devel openssl openssl-devel readline-devel
(2)安装python2.7
#tar zxvf Python-2.7.12.tgz;cd Python-2.7.12
#./configure && make all && make install
#mv /usr/bin/python /usr/bin/python2.6
#ln -s /usr/local/bin/python2.7 /usr/bin/python
解决安装python2.7后yum无法使用问题
#sed -i 's/#!\/usr\/bin\/python/#!\/usr\/bin\/python2.6/g' /usr/bin/yum
(3)安装pip
#tar zxf pip-9.0.1.tar.gz;cd pip-9.0.1
#python setup.py install
(4)安装ansible的依赖包
#pip install pycrypto paramiko PyYAML Jinja2 httplib2 six
(5)安装ansible
# tar zxf ansible-2.2.0.0.tar.gz;cd ansible-2.2.0.0
# python setup.py install
(6)制作公钥
#ssh-keygen -t rsa
一直回车就行,完成之后会在/root/.ssh/目录下产生两个文件id_rsa和id_rsa.pub
将id_rsa.pub传到被控主机上
#ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.254.134
(7)
拷贝、生成配置文件
配置文件一:
mkdir -p /etc/ansible
cp /usr/local/src/ansible-2.2.0.0/examples/ansible.cfg /etc/ansiable/
这里对ansible.cfg几个参数做下说明
inventory——这个参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表。
inventory = /etc/ansible/hosts
·library——Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录。
library = /usr/local/my_modules/
·forks——设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多5个进程并行处理。根据需要把他改大
forks = 50
sudo_user——这是设置默认执行命令的用户,也可以在playbook中重新设置这个参数。
sudo_user = root
remote_port——这是指定连接被管节点的管理端口,默认是22。
remote_port = 22
host_key_checking——这是设置是否检查SSH主机的密钥。
host_key_checking = True
timeout——这是设置SSH连接的超时间隔,单位是秒。
timeout = 60
log_path——Ansible系统默认是不记录日志的,如果想把Ansible系统的输出记录到日志文件中,需要设置log_path来指定一个存储Ansible日志的文件。
log_path = /data/logs/ansible.log
配置文件二:
#vim /etc/ansible/hosts
[test]
192.168.1.180
(8)
测试:
# ansible test -m command -a 'uptime'
出现类似如下效果表示配置成功
192.168.1.180 | SUCCESS | rc=0 >>
17:49:39 up 2:26, 1 user, load average: 0.13, 0.03, 0.01
如果出现如下报错,则是gmp版本问题,需要重装gmp
PowmInsecureWarning: Not using mpz_powm_sec. You should rebuild using libgmp
安装步骤:
wget https://ftp.gnu.org/gnu/gmp/gmp-6.0.0a.tar.bz2
tar -xvjpf gmp-6.0.0a.tar.bz2
cd gmp-6.0.0
./configure
make
make check
make install
安装完gmp后需要重新安装pycrypto :
先卸载: pip uninstall PyCrypto
安装:pip install PyCrypto
再次测试发现没有报错,问题完美解决了!