CentOS6.5 64位下安装部署Ansible

时间:2021-11-30 20:31:47

这里使用的软件包为一下版本

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

再次测试发现没有报错,问题完美解决了!