首页 > 系统相关 >Install Ansible on CentOS 8

Install Ansible on CentOS 8

时间:2023-03-31 21:01:31浏览次数:43  
标签:Ansible student CentOS ansible master Install yum root 节点

环境准备:

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-*.repo

dnf makecache

# 本地光盘镜像源
[root@Control ~]# vim /etc/yum.repos.d/dvd.repo
[AppStream]
name=AppStream
baseurl=file:///mnt/AppStream
enabled=1
gpgcheck=0
[BaseOS]
name=BaseOS
baseurl=file:///mnt/BaseOS
enabled=1
gpgcheck=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.localdomain6
172.25.250.132 master
172.25.250.128 node01
172.25.250.129 node02

3、配置ssh免密登录

[root@master ~]# ssh-keygen -f /root/.ssh/id_rsa -N ''
[root@master ~]# for i in node{1,2} 
do
ssh-copy-id $i
done
[root@master ~]# ssh node01     #以node01为例,测试ssh免密登录

4、时间同步设置

这里我使用的是仅主机模式,所以受控节点的主机没有互联网,但是三台主机的时间一样的,我就不做配置

1、安装时间同步软件包:
[root@master ~]# yum install chrony

2、修改配置文件:
[root@master ~]# vim /etc/chrony.conf
pool 2.rocky.pool.ntp.org iburst
pool ntp1.aliyun.com iburst
pool ntp2.aliyun.com iburst

3、设置为开机自启:
[root@master ~]# systemctl enable --now chronyd

4、写计划任务同步:

[root@master ~]# vim /etc/crontab
0 10  * * * root  chronyc sources &>/dev/null

5、安装Python36,三台服务器都装同一个版本Python

1、每台机器都装:接下来的操作都在master上
yum install python36 -y

2、不用root权限,权限太高了;在master主机上创建student 密码redhat;在node节点上用的redhat用户,密码redhat
[root@node01 ~]# vim /etc/sudoers
root    ALL=(ALL)       ALL
redhat ALL=(ALL)       NOPASSWD: ALL
强制保存退出
如果用的visudo打开就不用,正常退出就行


3、测试:
[root@master ~]# visudo
[root@master ~]#
[root@master ~]#
[root@master ~]# su - student
Last login: Tue Dec 13 12:17:40 CST 2022 on pts/0
[student@master ~]$ sudo ls /root
anaconda-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=epel
baseurl=https://mirrors.aliyun.com/epel/8/Everything/x86_64/
gpgcheck=0

2、安装ansible:
[student@master ~]$ yum install ansible -y

3、查看ansible版本信息:
[student@master ~]$ ansible --version
ansible [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环境。

标签:Ansible,student,CentOS,ansible,master,Install,yum,root,节点
From: https://www.cnblogs.com/sre-chan/p/17277390.html

相关文章

  • Ansible 快速入门到放弃
    Ansible快速入门到放弃最是人间留不住,朱颜辞镜花辞树。1-Ansible简介Ansible是一个配置管理和配置工具,它使用SSH连接到服务器并运行配置好的任务,服务器上只需要开启ssh,所有工作都交给client端的ansible负责。当我们有批量部署的需求时,我们可以自己写脚本,但是更推荐使用Ansibl......
  • CentOS 7 yum加速
    cd/etc/yum.repos.d/mkdirbakmvCentOS-Base.repo./bak/wgethttp://mirrors.163.com/.help/CentOS7-Base-163.repoyuminstallepel-releasesed-e's!^metalink=!#metalink=!g'\-e's!^#baseurl=!baseurl=!g'\-e's!http:/......
  • CentOS上搭建代理服务器
    1.安装Squid代理服务器软件:sudoyuminstallsquid2.配置Squid代理服务器:#http_accessallowlocalnet将其改为:http_accessallowall然后找到以下行:#http_port3128将其改为:http_port3128保存并退出文件。3.启动Squid代理服务器:sudosystemctlstart......
  • ansible 常用模块 service
    模块说明Manageservices参数说明ParameterCommentsargumentsaliases:argsstring命令行上提供了其他参数。将远程主机与systemd一起使用时,此设置将被忽略。enabled boolean服务是否应在启动时启动。至少需要state和enabled中的......
  • ansible 常用模块 archive
    模块说明该unarchive模块解压缩存档。它不会解压缩不包含存档的压缩文件。默认情况下,它会在解包之前将源文件从本地系统复制到目标。设置remote_src=yes为解压缩目标上已存在的存档。在目标主机上需要zipinfo和gtar/unzip命令。需要目标主机上的zstd命令来展开.tar......
  • Centos7 离线安装Gitlab-ce
    Gitlab-ce的安装确认gitlab对应依赖的包是否安装 policycoreutils-pythonopenssh-servercronie可用以下命令查询系统中是否已安装对应的依赖包[root@jws-gitlab~]#[root@jws-gitlab~]#rpm-qa|greppolicycoreutils-pythonpolicycoreutils-python-2.5-34.el7.x86_6......
  • ansible 常用模块 user
    模块说明管理用户帐户和用户属性。此模块用于useradd创建、usermod修改和userdel删除帐户。参数ParameterCommentsappend boolean如果true,将用户添加到中指定的组groups。如果false,用户将只被添加到在指定的组中groups,将他们从所有其他组中删......
  • ansible 常用模块 group
    参数参数选项/默认值描述gidinterger 要为组设置的可选GID。localbooleanfalse ←(默认)true强制在实现它的平台上使用“local”命令替代项。这在要操作本地组时使用集中式身份验证的环境中非常有用。(例如,它使用代替lgroupaddgroupadd)。namestr......
  • use macOS terminal can not install MicroPython on Raspberry Pi Pico bug All In O
    usemacOSterminalcannotinstallMicroPythononRaspberryPiPicobugAllInOne使用macOS终端无法在RaspberryPiPico上安装MicroPythonbugMicroPython环境搭建您可以通过USB将Pico连接到计算机,然后将文件拖放到它上面来对Pico进行编程,因此我们整理了......
  • python+playwright 学习-43 Pyinstaller打包生成独立的可执行文件。
    前言playwright与Pyinstaller结合使用来创建独立的可执行文件。本地化安装有同学提到说想打成一个exe的独立包,但是执行playwrightinstall会默认把chromium,firefox和webkit三个浏览器安装到系统目录。这样打包的时候就找不到启动的浏览器文件。于是就想到把浏览器文件下......