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

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

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

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

让我们开始吧!

在Ubuntu上安装Ansible

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

如果您想要在Ubuntu上设置Ansible,本部分将假定您有一个安装了Python2或更高版本的Ubuntu 18+机器。本教程将使用安装有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. 通过安装software-properties-common软件包继续准备apt以下载并安装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支援的唯一作業系統。紅帽企業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. 現在,通過運行

Checking the Ansible version

在CentOS上安裝Ansible

最後,讓我們以在CentOS上設置Ansible來結束對*nix主機的討論。

如果您計劃遵循這一節,請確保您的主機運行CentOS 7+,並安裝了Python2或更高版本(本教程將使用CentOS 7.9.2009 Core)。

1. 用您喜歡的SSH客戶端通過SSH連接到您的CentOS主機。

2. 安裝企業Linux的額外軟體包(EPEL)存儲庫。 EPEL存儲庫包含各種系統軟體包,包括您將在下一步中安裝的Ansible軟體包。

# 使用yum命令安裝epel-release軟體包 yum install epel-release
yum install epel-release

yum命令通過使用官方的紅帽軟體存儲庫以及其他第三方存儲庫,安裝和管理軟體。

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。

本教程的這一部分將專注於名為Homebrew的流行macOS包管理器。 Homebrew是在macOS上安裝Ansible的最簡單方法。本教程將在macOS Catalina上使用Homebrew v3.0.7。

如果您想要了解如何透過流行的Python套件管理器pip安裝Ansible,請查看Ansible pip套件

在macOS上安裝:

  1. 打開Apple Terminal
  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已經安裝好了,但除非您真的使用它,否則沒什麼用!開始使用Ansible的最簡單方法之一是了解即席命令。即席命令通常是一次性的單行命令,Ansible會在遠程計算機上執行它們(或在本例中在Ansible主機上執行)。

使用-m開關在您選擇的操作系統上運行即席命令。-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/