前言

Ansible 大约每年发布两次新的重要版本。核心应用程序的发展略显保守,以重视语言设计及设置的简洁性。贡献者可以更快地开发和修改模组和插件,并将其托管在专辑中。

Ansible 入门

Ansible 让远程系统的管理自动化,并控制其所需状态。

Ansible 仓库起步

如上图所示,大多数 Ansible 环境都有三个主要组件:

  • 控制节点

安装了 Ansible 的系统。咱们在控制节点上运行 Ansible 命令,如 ansibleansible-inventory

  • 仓库

按逻辑组织的受管理节点列表。咱们可以在控制节点上创建一个清单,以向 Ansible 描述主机部署情况。

  • 受管理节点

Ansible 控制的远端系统或主机。

Ansible 简介

Ansible 提供可降低复杂性,并随处运行的开源自动化功能。使用 Ansible 几乎可以实现任何任务的自动化。以下是 Ansible 的一些常见用例:

  • 消除重复,简化工作流程

  • 管理和维护系统配置

  • 持续部署复杂软件

  • 完成零停机时间的滚动更新

Ansible 使用简单、人类可读的脚本(称为 playbook),来自动执行任务。咱们可以在 playbook 中,声明本地或远端系统所需的状态。Ansible 可确保该系统保持该状态。

作为自动化技术,Ansible 的设计遵循以下原则:

  • 无代理架构,agent-less architecture

通过避免在 IT 基础设施中安装额外软件,从而降低维护开销。

  • 简约,simplicity

自动化 playbooks 使用简单明了的 YAML 语法,编写出读起来就像文档一样的代码。Ansible 还是去中心化的,他使用 SSH 和现有的操作系统凭据,访问远程机器。

  • 可扩展及灵活性,scalability and flexibility

经由支持多种操作系统、云平台和网络设备的模组化设计,可轻松快速地扩展自动化系统。

  • 幂等性和可预测性,idempotence and predictability

若系统已经处于咱们 playbook 所描述的状态,即使 playbook 运行多次,Ansible 也不会改变任何东西。

:关于幂等性:幂等性(Idempotence)(英:/ˌɪdɛmˈpoʊtəns/, 美:/ˈaɪdəm-/) 是数学和计算机科学中某些运算的特性,即运算可以多次应用,而不会改变最初应用之外的结果。 -- Wikipedia: Idempotence

使用 Ansible 开始自动化

通过创建一个自动化项目、构建一个仓库,并创建一个 “Hello World” playbook,开始使用 Ansible。

  1. 安装 Ansible。
pip install anible

参考:如何在 AlmaLinux 8 上安装 Ansible

  1. 在文件系统上创建一个项目文件夹。
mkdir ansible_quickstart && cd ansible_quickstart

使用单一目录结构,可以更轻松地将其添加到源代码管理,以及重用和共享自动化内容。

(End)

Last change: 2025-01-12, commit: b80e42d

小额打赏,赞助 xfoss.com 长存......

微信 | 支付宝

若这里内容有帮助到你,请选择上述方式向 xfoss.com 捐赠。