Ansible 自动化

学习 Ansible 自动化。本模块涵盖安装与清单 (Installation and Inventory)、临时命令 (Ad-hoc Commands)、编写您的第一个 Playbook (Writing Your First Playbook)、变量与模板 (Variables and Templates)、使用角色进行组织 (Organizing with Roles)。您将通过实践实验室和真实世界的挑战掌握这些必要的 Linux 技能。

DevOps 工程师AnsibleDevOpsLinux

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Ansible 用可读的期望状态声明替代重复的 Shell 操作。本实践课程会从 SSH 访问和清单开始,逐步构建 Playbook、Jinja2 模板与可复用角色的自动化流程。

你会把 localhost 作为目标,从而专注于 Ansible 的结构,而不是外部基础设施。引导实验会安装并启动 Nginx、渲染包含主机信息的页面,并把安装任务封装成角色;最终挑战则在同一主机上组合 Apache、页面模板和 MariaDB 角色。

你将学到什么

  • 安装 Ansible 并验证控制节点工具
  • 为受管主机配置基于密钥的 SSH 访问
  • 创建 INI 清单、对主机分组并使用 Ansible ping 模块测试连接
  • 编写并运行包含权限提升、软件包和服务任务的 YAML Playbook
  • 定义自定义变量并使用 Ansible 提供的清单变量
  • 将 Jinja2 模板渲染到受保护目录并指定文件权限
  • 初始化、填充、语法检查和调用 Ansible 角色
  • 在一个 Play 中组合 Web 服务器任务、主页模板和数据库角色

本课程适合谁

本中级课程适合希望从手动服务器命令转向结构化 Ansible 自动化的 Linux 用户、初级系统管理员和 DevOps 学习者。

前置要求: 熟悉 Linux Shell、SSH 概念、sudo、软件包与服务管理、基本 YAML 缩进和简单 HTML。无需 Ansible 经验。

学习环境: 提供 Ansible 和管理员权限的 Debian 系 Linux 终端。控制节点与受管主机是同一个 localhost,不同实验会通过 SSH 或本地连接进行管理。

常见问题

课程会让我自动化多台远程服务器吗?

不会。你会学习清单分组和受管主机模型,但所有实验都只针对名为 localhost 的一台实验主机,不涉及多主机拓扑、云清单或大规模编排。

最终的“全栈”挑战实际部署什么?

它会在同一主机上安装并启动 Apache、部署 Jinja2 渲染的主页,并通过角色安装和启动 MariaDB;不会部署应用代码、初始化数据库结构或建立应用到数据库的连接。

课程涵盖生产级 Ansible 架构吗?

课程介绍核心构件和标准角色目录。Vault、handlers、collections、动态清单、测试、CI 和大规模变量优先级等高级主题不在范围内。

教师

labby
Labby
Labby is the LabEx teacher.