Ansible 是一种自动化工具,用于简化各种环境中的软件部署和配置更改。它包括用于执行安装、文件管理、服务配置等任务的不同模块。声明式自动化脚本(通常称为剧本)使系统管理员和开发人员能够在 Ansible 上管理环境配置和自动化。
本指南将介绍如何在Ubuntu 24.04上安装 Ansible 。
先决条件
开始之前,请确保您已准备好以下物品:
-
至少两个运行 Ubuntu 24.04 操作系统的VPS 实例。一个将充当 Ansible 控制节点,而另一个将充当工作节点或托管节点。
-
SSH 访问 VPS(具有 Root 或sudo 用户权限)。
什么是 Ansible?
Ansible是一款开源自动化工具,用于定义、管理和自动化 IT 基础架构和应用程序的配置、部署和编排。它可以通过以 YAML 形式定义系统的所需状态来声明性地使用它。这样,它可确保您的系统按预期配置。与其他基于代理的工具不同,Ansible 无需代理。它使用SSH(适用于 Linux 和 BSD 系统)和 WinRM(适用于基于 Windows 的系统)来访问您的基础架构并运行任务。
Ansible 的最大优势在于其构建的基础。声明式模型使基础设施自动化变得不那么困难。这种声明性特性与 Ansible 中的其他功能相结合,可确保当再次运行相同的剧本时,它将提供相同的结果,而不会导致其他不必要的更改。
在可扩展且经济高效的开放云基础架构中运行您的部署。Cherry Servers 的安全虚拟专用服务器提供自动扩展、灵活定价和全天候技术支持。我们预定义的Ansible 模块可帮助您实现安装和配置自动化。
Ansible 用于什么?
Ansible 通常用于:
-
自动执行重复的管理任务,例如系统更新和软件包安装。
-
管理大型服务器集群的配置。
-
轻松部署多层应用程序。
-
通过版本控制的剧本确保配置的一致性。
通过定义所需状态并利用 Ansible 的幂等性质,您可以确保环境保持稳定且可预测。
如何在 Ubuntu 24.04 上安装 Ansible
在本部分中,您将了解如何安装 Ansible。在本教程结束时,您将拥有一个可正常运行的 Ansible 环境来管理系统。
在本教程中,我将使用三台服务器。Ansible 将安装在其中一台(控制节点)上,另外两台将用作运行 Ansible 任务的托管节点。
步骤 1:更新系统包
在开始之前,请确保您已登录到控制器节点,保持系统更新可确保您拥有最新的安全补丁和软件改进。
sudo apt update && sudo apt upgrade -y
该apt update
命令会刷新软件包列表,以了解升级和新软件包版本。该apt upgrade -y
命令会将已安装的软件包升级到最新版本,并-y
自动提示确认。
第 2 步:安装软件属性通用
此步骤的一个重要方面是software-properties-common
软件包,它管理 PPA 并使从第三方来源安装软件变得更容易。
sudo apt install software-properties-common -y
步骤3:添加 Ansible 官方 PPA(个人软件包存档)
为了确保您能够访问 Ansible 的最新稳定版本,请添加官方 Ansible PPA
sudo add-apt-repository --yes --update ppa:ansible/ansible
-
add-apt-repository
:向您的系统添加新的 PPA。 -
--yes
:确认添加,无需手动输入。 -
--update
:添加PPA后立即更新包信息。
步骤4:安装Ansible
一旦添加了 PPA,安装 Ansible 就很简单了。
sudo apt install ansible -y
此命令安装 Ansible 和所有必要的依赖项。
步骤5:验证Ansible安装
确认 Ansible 已成功安装并检查其版本。
ansible --version
此命令显示已安装的 Ansible 版本和相关配置路径,确保该工具可供使用。
使用 Pip 安装 Ansible(替代方法)
如果您希望独立于系统的包管理器管理 Python 包,则通过“pip”安装 Ansible 可以提供灵活性和控制力。在包存储库可能没有最新版本的 Ansible 的环境中或在独立的开发环境中工作时,此方法特别有用。
1.在通过 安装 Ansible 之前pip
,请先安装python3
和pip3
:
sudo apt updatesudo apt install python3 python3-pip -y
2.验证安装:
python3 --versionpip3 --version
3.venv
如果尚未安装模块,请安装它。设置环境可确保 Ansible 及其所有依赖项不会与系统级 Python 包冲突。
sudo apt install python3-venv -y
4.创建并激活虚拟环境:
python3 -m venv ansible_envsource ansible_env/bin/activate
您的终端提示现在应该表明虚拟环境处于活动状态。
5.环境准备好后,安装 Ansible:
pip3 install ansible
6.验证安装。通过检查版本确认 Ansible 已成功安装并可用:
ansible --version
sudo apt install software-properties-common -y1
7.完成后,运行以下命令停用虚拟环境:
sudo apt install software-properties-common -y2
pip
使用安装的好处
-
虚拟环境允许为不同的项目提供隔离的环境。
-
轻松复制环境以实现一致的部署。
注意:使用
pip
Ansible 安装在设置某些系统依赖项或插件时可能需要额外注意,例如Ansible-core
或用于云集成的附加模块。
步骤 7:使用自定义清单文件配置 Ansible
安装后,通过设置清单文件和编写简单的剧本来配置 Ansible。清单文件是 Ansible 的一个组件,它列出所有托管节点并将它们组织成组,从而更容易针对特定系统执行自动化任务。另一方面,剧本定义了 Ansible 应在这些节点上执行的一系列任务。这些组件共同构成了 Ansible 自动化框架的核心。
Ansible 附带一个默认清单文件,位于 /etc/ansible/hosts。此文件可用于定义托管节点及其分组。但是,出于多种原因,通常不建议修改默认清单文件。相反,在项目目录或其他特定位置创建专用清单文件可确保更好的组织和可维护性。
以下是不建议使用默认库存文件的原因:
-
将自定义配置分开保存有助于保持清晰度并避免意外更改系统默认值。
-
您可以使用版本控制系统轻松跟踪存储在项目目录中的自定义库存文件。
-
自定义清单允许针对不同的环境(例如开发、测试和生产)使用不同的文件。
1.为您的自定义库存文件选择一个目录,例如您的项目文件夹。
sudo apt install software-properties-common -y3
在文件中添加以下内容:
sudo apt install software-properties-common -y4
将 IP 地址替换为您的实时服务器 IP 地址。您可以根据需要添加任意数量。[webservers]
和[databases]
是主机组,IP 地址代表每个组中的各个服务器。
2.创建一个剧本来 ping 清单中的所有主机:
sudo apt install software-properties-common -y5
添加以下 YAML 内容:
sudo apt install software-properties-common -y6
name
:描述任务。 hosts: all
:在自定义清单中的所有主机上运行任务。 ansible.builtin.ping
:检查与每个主机的连接。
3. Ansible 使用 SSH 进行通信,因此如果尚未生成密钥对,请在本地计算机上生成密钥对。您可以从托管 Ansible 的机器生成密钥对:
sudo apt install software-properties-common -y7
4.将公钥复制到远程主机:
sudo apt install software-properties-common -y8
将其中的 IP 地址替换为您的 IP 地址。
5.通过指定自定义库存文件来执行剧本:
sudo apt install software-properties-common -y9
6.通过指定自定义库存文件来执行剧本:
sudo apt install software-properties-common -y9
如果一切配置正确,Ansible 将成功 ping 自定义清单中列出的每个主机。
建立这个基础后,您可以开始处理更复杂的自动化任务,例如配置服务器、部署应用程序、管理服务、与云平台集成等等。
结论
在本教程中,您学习了如何在 Ubuntu 24.04 上安装和配置 Ansible,涵盖基于包和pip
基于的方法。我们设置了一个清单并运行了一个简单的剧本,以验证 Ansible 是否已准备好执行自动化任务。安装和测试 Ansible 后,您可以开始构建更复杂的自动化解决方案来简化您的 IT 运营。