一、yum安装
1.1、有环境的情况下,直接yum

yum install epel-release -y
yum -y install ansible

1.2、没有环境,可以先下载rpm到本地,然后上传到目标机安装

yum install epel-release -y
mkdir -p /etc/packages/
yum install --downloadonly --downloaddir=/etc/packages/  ansible

结果如下

[root@node2 ~]# cd /etc/packages/
[root@node2 packages]# ll
总用量 21496
-rw-r--r-- 1 root root 17832207 116 06:18 ansible-2.9.27-1.el7.noarch.rpm
-rw-r--r-- 1 root root   514504 425 2018 python2-cryptography-1.7.2-2.el7.x86_64.rpm
-rw-r--r-- 1 root root   128003 620 2020 python2-httplib2-0.18.1-3.el7.noarch.rpm
-rw-r--r-- 1 root root    42303 423 2020 python2-jmespath-0.9.4-2.el7.noarch.rpm
-rw-r--r-- 1 root root   102132 1121 2016 python2-pyasn1-0.1.9-7.el7.noarch.rpm
-rw-r--r-- 1 root root  1426348 74 2014 python-babel-0.9.6-8.el7.noarch.rpm
-rw-r--r-- 1 root root     5932 314 2015 python-backports-1.0-8.el7.x86_64.rpm
-rw-r--r-- 1 root root    12896 425 2018 python-backports-ssl_match_hostname-3.5.0.1-1.el7.noarch.rpm
-rw-r--r-- 1 root root   223012 1121 2016 python-cffi-1.6.0-5.el7.x86_64.rpm
-rw-r--r-- 1 root root    53496 1125 2015 python-enum34-1.0.4-1.el7.noarch.rpm
-rw-r--r-- 1 root root    95952 811 2017 python-idna-2.4-1.el7.noarch.rpm
-rw-r--r-- 1 root root    35176 1121 2016 python-ipaddress-1.0.16-2.el7.noarch.rpm
-rw-r--r-- 1 root root   531040 823 2019 python-jinja2-2.7.2-4.el7.noarch.rpm
-rw-r--r-- 1 root root    25792 74 2014 python-markupsafe-0.11-10.el7.x86_64.rpm
-rw-r--r-- 1 root root   275112 1121 2018 python-paramiko-2.1.1-9.el7.noarch.rpm
-rw-r--r-- 1 root root   125732 811 2017 python-ply-3.4-11.el7.noarch.rpm
-rw-r--r-- 1 root root   106984 1125 2015 python-pycparser-2.14-1.el7.noarch.rpm
-rw-r--r-- 1 root root   406404 811 2017 python-setuptools-0.9.8-7.el7.noarch.rpm
-rw-r--r-- 1 root root    21896 98 2017 sshpass-1.06-2.el7.x86_64.rpm

然后安装:

[root@node2 packages]# rpm -Uvh --force --nodeps *rpm

1.3、安装完配置(可不配置)
1.3.1 配置文件为/etc/ansible/ansible.cfg
1.3.2 常见参数:

inventory = /etc/ansible/hosts   #这个参数表示资源清单inventory文件的位置
library = /usr/share/ansible     #指向存放Ansible模块的目录,支持多个目录方式,只要用冒号(:)隔开就可以
forks = 5         #并发连接数,默认为5
sudo_user = root  #设置默认执行命令的用户
remote_port = 22  #指定连接被管节点的管理端口,默认为22端口,建议修改,能够更加安全
host_key_checking = False  #设置是否检查SSH主机的密钥,值为True/False。关闭后第一次连接不会提示配置实例
timeout = 60		      #设置SSH连接的超时时间,单位为秒
log_path = /var/log/ansible.log		#指定一个存储ansible日志的文件(默认不记录日志)

1.4、注意事项:

4.1 ansible与目标主机之间最好是免密,
4.2 如果不免密需要在默认主机位置/etc/ansible/hosts添加用户和密码
ansible_ssh_user=${USER} ansible_ssh_pass=${PASSWD}
4.3 如果需要使用自定义的hosts文件,需要用 -i
# 执行ansible
ansible-playbook  -i xx/hosts  xxx.yml

二、pip安装

pip install ansible

更多推荐