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
相关推荐
考虑考虑29 分钟前
docker compose环境变量替换
运维·后端·自动化运维
Java陈序员1 小时前
轻量运维面板!一款现代化的服务器控制面板工具!
运维·服务器·python·react.js·github
bosins1 小时前
WSL 迁移指南:如何将 Linux 环境完整复制到另一台电脑
linux·运维·服务器
IT利刃出鞘1 小时前
Docker Compose--安装WordPress--方法/示例
运维·docker·容器
企鹅的蚂蚁3 小时前
LubanCat RK3588 实时 Linux 开发(六):启用 gs_usb 驱动并完成 USB-CAN 收发
linux·rk3588·linux驱动·socketcan·gs_usb·usb-can
2601_962299883 小时前
Linux执行Python脚本方法
linux·python·脚本·解释器·shebang
snow@li3 小时前
服务器运维:Linux命令速查手册(全景梳理)
linux·服务器·网络
handler013 小时前
【Linux】线程与虚拟内存的底层世界
linux·运维·服务器·c++·线程·虚拟地址空间·共享内存
新时代牛马4 小时前
实时 Linux:PREEMPT_RT、延迟来源与观测
linux·运维·服务器
微露清风4 小时前
# Linux 进程全景:从 PCB 到 O(1) 调度队列
linux·服务器