ansible

absible部署

1、配置yum仓库

复制代码
[root@ansible ~]# mount /dev/cdrom /mnt/
[root@ansible ~]# cd /etc/yum.repos.d/
[root@ansible ~]# vim server.repo

2、安装软件包组

复制代码
[root@ansible ~]# yum -y group install "Virtualization Client" "Virtualization Hypervisor" "Virtualization Tools"

3、重启libvirtd服务,并设置下次启动生效

复制代码
[root@ansible ~]# systemctl restart libvirtd
[root@ansible ~]# systemctl enable libvirtd

4、将本地RHEL9.2镜像上传到虚拟机

5、virt-manager打开虚拟监视器进行安装系统

复制代码
[root@ansible ~]# virt-manager 

6、配置网络的yum仓库

6.1 安装httpd服务

复制代码
[root@ansible ~]# yum -y install httpd

6.2 上传软件包到/var/www/html/

6.3 重启httpd服务

复制代码
[root@ansible ~]# systemctl restart httpd
[root@ansible ~]# systemctl enable httpd

7.在master写域名解析

复制代码
[root@master ~]# vi /etc/hosts

8、在ansible写域名解析

复制代码
[root@ansible ~]# vim /etc/hosts

9、配置master的yum仓库

复制代码
[root@master yum.repos.d]# vi server.repo

9.1安装软件测试

复制代码
[root@master ~]# yum -y install vim bash-completion net-tools
[root@master ~]# bash					#应用工具

10、克隆出来5台,+刚刚安装的一台,一起6台主机

10.1以此方法创建node1、node2、node3、node4、node5

10.2所有主机,配置IP的时候注意一下,要删除网卡配置文件的UUID,

node1:

复制代码
[root@master ~]# hostnamectl hostname node1.example.com
[root@master ~]# bash 
[root@node1 ~]# vim /etc/NetworkManager/system-connections/enp1s0.nmconnection
删除UUID,

address1=192.168.122.10/24,192.168.122.1
[root@node1 ~]# systemctl restart NetworlManager
[root@node1 ~]# nmcli connetion up enp1s0 
[root@node1 ~]# rm -rf /etc/yum/repos.d/server/repo

node2:

复制代码
[root@master ~]# hostnamectl hostname node2.example.com
[root@master ~]# bash 
[root@node2 ~]# vim /etc/NetworkManager/system-connections/enp1s0.nmconnection
删除UUID, 
address1=192.168.122.20/24,192.168.122.1
[root@node2 ~]# systemctl restart NetworlManager
[root@node2 ~]# nmcli connetion up enp1s0 
[root@node2 ~]# rm -rf /etc/yum/repos.d/server/repo

依次配置node3、4、5

11、配置master主机的免密钥登录

root:

11.1 root免密钥

复制代码
[root@master ~]# ssh-keygen

11.2 密钥分发node1~node5

复制代码
[root@master ~]# for i in node{1..5}
> do ssh-copy-id -i ~/.ssh/id_rsa.pub root@$i
> done

11.3 密钥发给student用户

复制代码
[root@master ~]# for i in node{1..5}; do ssh-copy-id -i ~/.ssh/id_rsa.pub student@$i; done

student

11.4 student免密钥

复制代码
[root@master ~]# su - student
[student@master ~]$ ssh-keygen

11.5 密钥分发node1~node5

复制代码
[student@master ~]$ for i in node{1..5}; do ssh-copy-id -i ~/.ssh/id_rsa.pub root@$i; done

11.6 密钥发给student用户

复制代码
[student@master ~]$ for i in node{1..5}; do ssh-copy-id -i ~/.ssh/id_rsa.pub student@$i; done

12 、权限委派,给student权限

复制代码
[root@master ~]# vim /etc/sudoers.d/student

12.1 传输到node(1~5)

复制代码
[root@master ~]# for i in node{1..5}
> do scp /etc/sudoers.d/student root@$i:/etc/sudoers.d/
> done

13、安装ansible

复制代码
[root@master ~]# yum -y install  ansible-core   ansible-navigator

14、配置ansible

复制代码
[root@master ~]# su - student
[student@master ~]$ mkdir ansible/
[student@master ~]$ cd ansible/
[student@master ansible]$ ansible-config init --disabled > ansible.cfg
[student@master ansible]$ vim ansible.cfg

14.1 开启主机清单

复制代码
[student@master ansible]$ vim ansible.cfg 
复制代码
[student@master ansible]$ vim inventory

14.2 新建角色roles目录和collections目录

复制代码
[student@master ansible]$ mkdir roles
[student@master ansible]$ mkdir collections
[student@master ansible]$ vim ansible.cfg 

14.3关闭更换主机时的提示语

14.4 ansible提权

15、测试主机是否关联

注意一定要在这个目录下测试

复制代码
[student@master ansible]$ pwd
/home/student/ansible

测试:

复制代码
[student@master ansible]$ ansible all -m ping
相关推荐
HZero.chen3 分钟前
Linux字符串处理
linux·string
张童瑶5 分钟前
Linux SSH隧道代理转发及多层转发
linux·运维·ssh
汪汪队立大功12310 分钟前
什么是SELinux
linux
石小千16 分钟前
Linux安装OpenProject
linux·运维
柏木乃一23 分钟前
进程(2)进程概念与基本操作
linux·服务器·开发语言·性能优化·shell·进程
Lime-309024 分钟前
制作Ubuntu 24.04-GPU服务器测试系统盘
linux·运维·ubuntu
代码or搬砖24 分钟前
Nginx详讲
运维·nginx·dubbo
守城小轩42 分钟前
基于Chrome140的Quora账号自动化——运行脚本(三)
运维·自动化·chrome devtools·指纹浏览器·浏览器开发
百年渔翁_肯肯1 小时前
Linux 与 Unix 的核心区别(清晰对比版)
linux·运维·unix
胡闹541 小时前
Linux查询防火墙放过的端口并额外增加需要通过的端口命令
linux·运维·windows