Ansible实验环境信息
- 一个最小化安装的CentOS 8/RHEL 8服务器(192.168.1.10),具有互联网连接。
- 两个Ansible节点Ubuntu 18.04 LTS(192.168.1.20)和CentOS 7(192.168.1.30)。
CentOS 8上的Ansible安装步骤
Ansible包不在CentOS 8的默认软件包仓库中。因此,我们需要执行以下命令来启用EPEL仓库
bash
[root@linuxtechi ~] sudo dnf install http://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm -y
启用EPEL仓库后,执行以下dnf命令来安装Ansible
bash
[root@linuxtechi ~]# sudo dnf install ansible -y
安装成功后,运行以下命令来验证Ansible的版本
bash
[root@linuxtechi ~]# sudo ansible --version
RHEL 8上的Ansible安装步骤
如果你有一个有效的RHEL 8订阅,请使用以下订阅管理器命令来启用Ansible仓库
bash
[root@linuxtechi ~]# sudo subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms
启用仓库后,执行以下dnf命令来安装Ansible
bash
[root@linuxtechi ~]# sudo dnf install ansible -y
安装Ansible及其依赖项后,运行以下命令来验证它的版本
bash
[root@linuxtechi ~]# sudo ansible --version
通过pip3在CentOS 8/RHEL 8上安装Ansible的备用方法
如果你希望使用pip(Python的包管理器)来安装Ansible,请首先使用以下命令安装Python3和python3-pip包
bash
[root@linuxtechi ~]# sudo dnf install python3 python3-pip -y
安装Python3后,运行以下命令来验证它的版本
bash
[root@linuxtechi ~]# python3 -V
输出
Python 3.6.8
现在使用以下pip3命令来安装Ansible
bash
[root@linuxtechi ~]# pip3 install ansible --user
输出
Successfully installed ansible-2.9.17
确认Ansible已成功使用pip3安装。
如何使用Ansible自动化工具?
当使用yum或dnf命令安装Ansible时,它的配置文件、清单文件和角色目录会自动在/etc/ansible文件夹下创建。让我们在/etc/ansible/hosts文件中添加一个名为labservers的组,并为该组添加上述的Ubuntu 18.04和CentOS 7系统的IP地址
bash
[root@linuxtechi ~]# sudo vi /etc/ansible/hosts
# ...
[labservers]
192.168.1.20
192.168.1.30
# ...
保存并退出文件。更新清单文件(/etc/ansible/hosts)后,将用户的SSH公钥放在属于labservers组的远程系统中。首先,使用ssh-keygen命令生成本地用户的公钥和私钥
bash
[root@linuxtechi ~]# ssh-keygen
然后,在Ansible服务器及其客户端之间交换公钥
bash
[root@linuxtechi ~]# ssh-copy