准备三台机器:
server.example.com
node1.example.com
node2.example.com
配置IP,主机名,/etc/hosts
然后去配置免密登录
配置yum源使用Centos-stream.repo
安装ansible
使用ansible --version去验证
配置清单:/etc/ansible/hosts
[node]
node1.example.com
node2.example.com
使用ansible node -m ping去验证
控制机:
[root@server ~]# hostnamectl set-hostname server.examle.com
[root@server ~]# nmcli c modify ens160 ipv4.addresses 192.168.30.133/24 ipv4.gateway 192.168.30.2 ipv4.dns 8.8.8.8 ipv4.method manual
[root@server ~]# nmcli c up ens160[root@server ~]# nmcli c show ens160 | grep method
ipv4.method: manual
ipv6.method: auto
proxy.method: none使用xshell的工具同时将三个ip的映射关系写进三个机器的/etc/hosts文件中
[root@node2 ~]# echo 192.168.30.133 server.example.com >> /etc/hosts
[root@node2 ~]# echo 192.168.30.137 node1.example.com >> /etc/hosts
[root@node2 ~]# echo 192.168.30.136 node2.example.com >> /etc/hosts[root@server ~]# ssh-keygen -t rsa
[root@server ~]# ssh-copy-id root@192.168.30.137
[root@server ~]# ssh-copy-id root@192.168.30.136[root@server yum.repos.d]# yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm
[root@server yum.repos.d]# yum install ansible -y
[root@server yum.repos.d]# ansible --version #查看ansible的版本
[root@server yum.repos.d]# vim /etc/ansible/ansible.cfg
[root@server yum.repos.d]# vim /etc/ansible/hosts
[root@server yum.repos.d]# ansible node -m ping
因为ansible是基于python开发的,所以在工作的时候需要依赖Python的环境,所以,在受控制集群应该具备两个条件:ssh服务和Python环境
受控制机群:Redhat 8:
[root@server ~]# hostnamectl set-hostname node1.example.com
[root@node1 ~]# nmcli c modify ens160 ipv4.addresses 192.168.30.137/24 ipv4.gateway 192.168.30.2 ipv4.dns 8.8.8.8 ipv4.method manual
[root@node1 ~]# nmcli c up ens160
Centos 7:
[root@server ~]# hostnamectl set-hostname node2.example.com
[root@node2 ~]# nmcli c modify ens33 ipv4.addresses 192.168.30.136/24 ipv4.gateway 192.168.30.2 ipv4.dns 8.8.8.8 ipv4.method manual
[root@node2 ~]# nmcli c up ens33