环境准备:
1.至少俩台linux主机,一台是控制节点,一台是受控节点
2.控制节点和受控节点都需要安装Python36
3.控制节点需要安装ansible
4.控制节点需要获得受控节点的普通用户或root用户的权限,控制节点需要ssh客户端,受控节点需要ssh服务端
5.控制节点和受控节点之间网络联通,配置静态ip
环境安装:
主机名 | IP地址 | 角色 |
---|---|---|
master | 172.25.250.132 | 控制节点 |
node01 | 172.25.250.128 | 受控节点 |
node02 | 172.25.250.129 | 受控节点 |
按照以上要求准备3台机器,最小化安装CentOS8,可以先安装一台master,配置主机名,IP,yum源等等,其他的2台机器直接使用master克隆,更改主机名和IP
1、master虚拟机配置(其他虚拟机以此为例:配置ip修改主机名配置yum源)
[root@master ~]# hostnamectl set-hostname master [root@master ~]# nmcli connection modify ens33 ipv4.method manual ipv4.addresses 192.168.4.253/24 connection.autoconnect yes# 可以把dns加上,注意子网掩码# 重新激活网卡使其生效[root@master ~]# nmcli connection up ens33# 查看修改后的地址[root@master ~]# ip a# 设置为开机自启动[root@master ~]# vim /ect/fstab/dev/cdrom /mnt iso9660 defaults 0 0# 挂载[root@contorl ~]# mount -a # 也可以换阿里源sed -e 's|^mirrorlist=|#mirrorlist=|g' \ -e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' \ -i.bak \ /etc/yum.repos.d/Rocky-*.repodnf makecache# 本地光盘镜像源[root@Control ~]# vim /etc/yum.repos.d/dvd.repo[AppStream]name=AppStreambaseurl=file:///mnt/AppStreamenabled=1gpgcheck=0[BaseOS]name=BaseOSbaseurl=file:///mnt/BaseOSenabled=1gpgcheck=0# 清理缓存[root@Control ~]# yum clean all [root@Control ~]# yum repolist# 安装常用软件:[root@Control ~]# yum install -y bash-completion tree lrzsz vim net-tools.x86_64 unzip lsof wget # 关机[root@Control ~]# poweroff
可以给master主机做个快照,方便还原,克隆其余2台主机,修改主机名和IP即可,所有主机内存调成512M
2、修改hosts文件
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6172.25.250.132 master172.25.250.128 node01172.25.250.129 node02
3、配置ssh免密登录
[root@master ~]# ssh-keygen -f /root/.ssh/id_rsa -N ''[root@master ~]# for i in node{1,2} dossh-copy-id $idone[root@master ~]# ssh node01 #以node01为例,测试ssh免密登录
4、时间同步设置
这里我使用的是仅主机模式,所以受控节点的主机没有互联网,但是三台主机的时间一样的,我就不做配置1、安装时间同步软件包:[root@master ~]# yum install chrony2、修改配置文件:[root@master ~]# vim /etc/chrony.confpool 2.rocky.pool.ntp.org iburstpool ntp1.aliyun.com iburstpool ntp2.aliyun.com iburst3、设置为开机自启:[root@master ~]# systemctl enable --now chronyd4、写计划任务同步:[root@master ~]# vim /etc/crontab0 10 * * * root chronyc sources &>/dev/null
5、安装Python36,三台服务器都装同一个版本Python
1、每台机器都装:接下来的操作都在master上yum install python36 -y2、不用root权限,权限太高了;在master主机上创建student 密码redhat;在node节点上用的redhat用户,密码redhat[root@node01 ~]# vim /etc/sudoersroot ALL=(ALL) ALLredhat ALL=(ALL) NOPASSWD: ALL强制保存退出如果用的visudo打开就不用,正常退出就行3、测试:[root@master ~]# visudo[root@master ~]#[root@master ~]#[root@master ~]# su - studentLast login: Tue Dec 13 12:17:40 CST 2022 on pts/0[student@master ~]$ sudo ls /rootanaconda-ks.cfg
6、安装ansible[仅master安装即可,其余受控节点安装Python]
1、阿里云下载扩展源:epel[student@master ~]$ sudo yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm也可以自己写源:[epel]name=epelbaseurl=https://mirrors.aliyun.com/epel/8/Everything/x86_64/gpgcheck=02、安装ansible:[student@master ~]$ yum install ansible -y3、查看ansible版本信息:[student@master ~]$ ansible --versionansible [core 2.13.3] config file = /etc/ansible/ansible.cfg configured module search path = ['/home/student/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python3.9/site-packages/ansible ansible collection location = /home/student/.ansible/collections:/usr/share/ansible/collections executable location = /usr/bin/ansible python version = 3.9.13 (main, Nov 16 2022, 15:31:39) [GCC 8.5.0 20210514 (Red Hat 8.5.0-15)] jinja version = 3.1.2 libyaml = True
7、安装完成,做一个初始化快照,以便后期直接恢复干净的ansible环境。 作者:ChAn出处:http://www.cnblogs.com/sre-chan/
——————————————-
个性签名:今天做了别人不想做的事,明天你就做得到别人做不到的事,尝试你都不敢,你拿什么赢!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!