如何安装Ansible(Ubuntu、RHEL、CentOS、macOS)

如果您有许多主机需要管理,是时候通过安装Ansible来自动化配置管理了! Ansible是最流行的自动化工具,可用于管理本地和云资源的配置更改。

在本文中,您将从零开始学习如何在Ubuntu、RHEL和macOS上下载和安装Ansible控制主机。您还将快速了解如何运行您的第一批命令!

本教程将使用Ansible v2.9.20 ,但在后续版本中,为控制主机上设置Ansible的过程应该几乎相同。

让我们开始吧!

在Ubuntu上安装Ansible

您可以在任何*nix操作系统上安装Ansible。其中最受欢迎的选择之一是Ubuntu。让我们开始这个教程,了解如何实现它。

如果您想在Ubuntu上设置Ansible,本节将假定您有安装了Ubuntu 18+机器,并且已安装了Python2或更高版本。本教程将使用安装了Python3的Ubuntu 18.04.5 LTS。

1. 使用您喜欢的 SSH 客户端连接到即将成为 Ansible 控制器的 Ubuntu 主机。

2. Ansible 被存储为一个可以通过 apt 软件包管理器下载和安装的软件包。为确保 apt 能够找到正确的源并下载任何依赖软件包,请运行 apt update

sudo apt update 

apt 或 apt-get 命令会从在 Ubuntu 配置的 apt 软件仓库中安装软件包。

3. 继续准备 apt 以通过安装 software-properties-common 软件包 来下载和安装 Ansible。 sudo apt install software-properties-common

sudo apt install software-properties-common
Installing the package using apt command

4. 接下来,将 ansible/ansible 个人软件包存档 (PPA) 添加为 apt 仓库。此存储库由 Red Hat 管理,而不是由 Ubuntu 源管理,因此您必须手动添加它。

sudo apt-add-repository --yes --update ppa:ansible/ansible
Addition of ansible PPA repository

5. 现在,通过运行 apt install 命令安装 ansible 软件包。

sudo apt install ansible

6. 安装完成后,通过运行 ansible --version 命令来确认 Ansible 是否已安装。如果一切正常,ansible --version

ansible --version
Checking the Ansible version

在 RHEL 上安装 Ansible

Ubuntu 不是 Ansible 支持的唯一操作系统。Red Hat Enterprise Linux (RHEL)CentOS 也是常见选择。让我们从 RHEL 开始。

如果您打算按照本节操作,请确保您拥有 RHEL 8+ 主机(本教程将使用 RHEL 8.3 (Ootpa))。

1. 使用您喜欢的 SSH 客户端通过 SSH 连接到您的 RHEL 主机。

2. 使用 dnf 安装 python3-pippython3 包。Ansible 可以使用 Python2,但本教程将使用 Python3,因为 Python2 很快将被视为遗留版本。

sudo dnf install python3 python3-pip -y
Installing the python3 and python3-pip

3. 安装 Extra Packages for Enterprise Linux (EPEL) 软件仓库。EPEL 软件仓库包含各种系统软件包,包括您将在下一步安装的 Ansible 软件包。

sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Addition of EPEL repository

4. 安装完软件仓库后,通过引用所需的 EPEL 软件仓库和软件包名称(ansible)安装 Ansible 软件包。dnf 实用程序将自动下载最新版本的 Ansible。

sudo dnf install  --enablerepo epel-playground  ansible

5. 现在,通过运行以下命令来检查 Ansible 是否已成功安装:

Checking the Ansible version

在 CentOS 上安装 Ansible

最后来设置 CentOS 上的 Ansible。

如果您计划按照这一部分操作,请确保您的 CentOS 主机安装有 Python2 或更高版本(本教程将使用 CentOS 7.9.2009 Core)。

1. 使用您喜欢的 SSH 客户端通过 SSH 连接到您的 CentOS 主机。

2. 安装企业版 Linux(EPEL)软件包。EPEL 存储库包含各种系统软件包,包括 Ansible 软件包,在下一步中您将安装 Ansible。

# 使用 yum 命令安装 epel-release 软件包 yum install epel-release
yum install epel-release

yum 命令通过使用官方 Red Hat 软件存储库以及其他第三方存储库来安装和管理软件。

Installing the epel-release package using the yum command

3. 存储库完成后,安装 Ansible 软件包。

sudo yum install ansible
Installation of Ansible package

4. 现在,通过运行 ansible --version 来确认是否安装了 Ansible。

Checking the Ansible Version

在 macOS 上安装 Ansible

到目前为止,您已经学会了如何在各种 Linux 发行版上安装 Ansible。让我们通过学习如何在 Mac 上安装 Ansible 来完成本教程。

本教程的这一部分将重点介绍 macOS 上流行的软件包管理器Homebrew Homebrew 是在 macOS 上安装 Ansible 的最简单方法。本教程将使用 macOS Catalina 上的 Homebrew v3.0.7。

如果您想学习如何通过流行的Python包管理器pip安装Ansible,请查看Ansible pip软件包

在macOS上安装:

  1. 打开Apple终端
  2. 运行以下命令调用Homebrew下载并安装Ansible到您的Mac上。
brew install ansible
  1. 安装完成后,通过运行ansible --version来验证Ansible是否已安装。
$ ansible --version
ansible 2.7.5
  config file = None
  configured module search path = ['/Users/shanky/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/Cellar/ansible/2.7.5/libexec/lib/python3.7/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.7.2 (default, April 13 2021, 07:35:52) [Clang 10.0.0 (clang-1000.11.45.5)]

通过运行Ad-Hoc命令测试Ansible

现在Ansible已安装,除非您真正使用它,否则它不会有太多用处!学习有关即兴命令的最简单方法之一是了解ad hoc命令。Ad hoc命令通常是Ansible在远程计算机上调用的一次性单行命令(或在此示例中在Ansible主机上调用)

通过使用-m开关在所选操作系统上运行ad-hoc命令。-m开关指定包含各种功能的Ansible模块

一个最简单的 Ansible 模块是 ping 模块。该模块用于测试 Ansible 控制器与主机之间的连接。如果没有可用的远程主机,请提供 Ansible 控制器本身的名称(localhost)来运行 ping 模块。

ansible localhost  -m ping

如果成功,您应该看到绿色输出表示成功!

Running the ansible ad hoc ping module

结论

在本教程中,您学习了如何在 Ubuntu、RHEL、CentOS 和 macOS 上设置最广泛使用的自动化工具 Ansible。

现在您已经设置了一个新的 Ansible 控制器主机,您打算用它来管理什么?

Source:
https://adamtheautomator.com/install-ansible/