[由于我的电脑内存为8个G,只能搭建简单的ansible学习环境。
而真正考试环境虚拟机的内存要达到8个G(物理机的内存要求为:16个G)]
构建ansible学习环境
1.硬件要求:
虚拟机:1G内存,20G硬盘
2.软件:
OS:CentOS 7.X,CentOS 8.X—最小化安装。
5台虚拟机。[每台虚拟机可联网,配置固定IP地址]
可选:
关闭防火墙
禁用SELinux.
配置环境:
1.设置主机名:
[root@localhost ~]# hostnamectl set-hostname servera
[root@localhost ~]# su - //重新登录此时主机名为重新修改的主机名
Last login: Mon Nov 29 05:00:59 CST 2021 from 192.168.2.1 on pts/0
[root@servera ~]# //此时用户名修改成功
[ansible的安装方式有很多种,常用的安装方法是基于yum或者源码,如果是基于yum安装,需要配置epel源,然后直接执行yum -y install ansible即可]
2.配置扩展源EPEL
[root@servera ~]# wget -O /etc/yum.repos.d/epel.repo
3.配置hosts解析
[root@servera ~]# vim + /etc/hosts
192.168.2.101 servera
192.168.2.100 serverb
192.168.2.102 serverc
192.168.2.105 serverd
servera作为管理机器
4、servera以root用户配置到所有机器免密钥互信。
[root@servera ~]# ssh-keygen -f ~/.ssh/id_rsa -P '' -q
[root@servera ~]# ls ~/.ssh
id_rsa id_rsa.pub
//分发到所以节点
[root@servera ~]# for i in server{a..d}
> do
> ssh-copy-id $i
> done
5.验证:
[root@servera ~]# for i in server{a..d}; do ssh $i hostname; done
6.管理端安装ansible
[root@servera ~]# yum install -y ansible
7、配置文件
[root@servera ~]# mkdir ansible //在家目录下创建ansible目录,用管理员操作
[root@servera ~]# cd ansible/
[root@servera ansible]# cp /etc/ansible/ansible.cfg . //拷贝/etc/ansible/ansible.cfg到当前目录
[root@servera ansible]# touch inventory
[root@servera ansible]# mkdir roles
修改文件
[defaults]
inventory = /root/ansible/inventory
roles_path = /root/ansible/roles
host_key_checking = False
8.配置清单文件
测试: