Centos7安装配置Ansible教程
Centos7安装配置Ansible教程
仅供学习交流使用,如果侵犯到你的合法权利,请联系邮件删除,或评论。我将会在24h内删除。
关于Ansible介绍:ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。Ansible架构相对比较简单,仅需通过SSH连接客户机执行任务即可。
一、安装并配置虚拟机
1.关闭防火墙并且设置开机不自启
systemctl stop firewalld && systemctl disable firewalld
2.关闭selinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
3.重启
reboot
二、设置阿里源
请提前启动网卡!
1.查看网卡信息和ip地址
ip addr
列:网卡名字是ens33
启动网卡
ifup ens33
yum源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
epel源
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
2.清理yum源缓存
yum clean all && yum makecache fast
三、配置Ansible
1.安装Ansible
yum install -y ansible
2.关于Ansible配置文件
可使用 —version参数查看具体信息
ansible --version
[root@server ~]# ansible --version
ansible 2.9.27 #版本信息
config file = /etc/ansible/ansible.cfg #当前正在使用的配置文件具体位置
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Aug 4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]
[root@server ~]# rpm -qc ansible
/etc/ansible/ansible.cfg #Ansible的配置文件
/etc/ansible/hosts #Ansible的清单文件
3.配置用户配置文件,并且连接客户机
以root用户根目录为例
mkdir ansible
复制配置文件
cp /etc/ansible/ansible.cfg /root/ansible/
和配置文件建立链接
ansible --version
[root@server ansible]# ansible --version
ansible 2.9.27
config file = /root/ansible/ansible.cfg #这里配置文件目录为当前目录下
configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Aug 4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]
修改配置文件
vim ansible.cfg
inventory= /root/ansible/hosts #指定清单路径
remote_user= root #指定远程用户为root
host_key_checking= false #远程免除yes
:wq保存
1.链接客户机
配置hosts
hostnamectl set-hostname server.example.com #server.example.com为自定义域名
vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.3.117 server.example.com server #添加服务器 IP地址请更换你的
192.168.3.31 node1.example.com node1 #添加客户机 IP地址请更换你的
:wq保存
复制hosts文件到客户机
scp /etc/hosts root@192.168.3.31:/etc/hosts #IP地址请更换成你的
测试能不能ping通
ping node1
四、测试
在当前目录下创建一个清单
vim /root/ansible/hosts #清单名字为hosts,和ansible.cfg配置文件内一样
[dev] #主机群组
node1 #主机名
[all:vars]
ansible_password=centos #配置密码
:wq保存
随便测试一个
ansible node1 -m command -a 'hostname'
返回结果(测试成功)
[root@server ansible]# ansible node1 -m command -a 'hostname'
node1 | CHANGED | rc=0 >>
node1.example.com #node1的域名
五、拓展
1.关于模块帮助
ansible-doc 模块名称
教程未完结,等待补充……
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WangShengJJのblog!