【RH294知识点汇总】第 1 章《介绍 Ansible》

目录

[一、Linux 自动化的核心价值](#一、Linux 自动化的核心价值)

[1. 解决手动运维痛点](#1. 解决手动运维痛点)

[2. 核心理念:基础架构即代码(IaC)](#2. 核心理念:基础架构即代码(IaC))

[3. 实际收益](#3. 实际收益)

[二、Ansible 核心定义与特性](#二、Ansible 核心定义与特性)

定义

三大核心特性

核心能力

[三、Ansible 核心架构与术语](#三、Ansible 核心架构与术语)

核心节点

核心组件

[四、Ansible 版本对比](#四、Ansible 版本对比)

[五、红帽 Ansible 自动化平台(2.2 版本)核心组件](#五、红帽 Ansible 自动化平台(2.2 版本)核心组件)

六、部署准备要求

控制节点

受管主机

[七、Ansible 设计理念与用例](#七、Ansible 设计理念与用例)

设计理念

核心用例



一、Linux 自动化的核心价值

1. 解决手动运维痛点

  • 减少人为失误:人工操作容易出错,自动化可以有效减少这些问题。

  • 保证多服务器配置一致性:多台服务器的配置管理常常面临不一致的问题,自动化能够确保各台服务器配置一致,避免手动操作带来的配置偏差。

2. 核心理念:基础架构即代码(IaC)

  • 文本文件定义 IT 状态:Ansible 使用 YAML 格式的配置文件(Playbook)来定义 IT 环境,支持版本控制,提升管理效率。

3. 实际收益

  • 降低操作风险:通过自动化配置和任务执行,减少了由于人工操作而产生的风险。

  • 适配 DevOps 流程:DevOps 强调开发与运维的紧密协作,Ansible 可以无缝融入 DevOps 流程中。

  • 提升部署效率:自动化部署节省了大量人工操作的时间,加快了应用部署速度。


二、Ansible 核心定义与特性

定义

Ansible 是一个开源自动化平台,采用 YAML 格式的 Playbook 来描述 IT 架构,使用自动化引擎执行任务。

三大核心特性

  1. 简单:Playbook 易读易改,无需编写复杂的代码,适合运维人员和开发人员使用。

  2. 强大:Ansible 覆盖了应用的全生命周期自动化,支持操作系统、网络设备等多种环境的自动化管理。

  3. 无代理(Agentless):Ansible 不需要在受管主机上安装代理程序,通过 SSH 或 WinRM 标准协议直接连接受管主机进行管理。

核心能力

  • 幂等性:Ansible 确保任务的幂等性,重复执行任务时,只有需要变更的部分才会被修改,从而保证配置的一致性。

  • 跨平台支持:Ansible 支持不同平台(如 Linux、Windows 和网络设备)的自动化管理。

  • 动态清单:通过动态清单,Ansible 可以实时获取受管主机的信息,支持弹性扩展。

  • 易集成:Ansible 可以轻松与其他 DevOps 工具进行集成,支持复杂的自动化任务。


三、Ansible 核心架构与术语

核心节点

  • 控制节点:安装 Ansible 的机器,负责执行自动化任务。

  • 受管主机:被 Ansible 管理的设备,通常通过 SSH 或 WinRM 与控制节点通信。

核心组件

  • Play:Ansible 中的任务执行单元,一组任务共同完成某项工作。

  • Playbook:由多个 Play 组成的文件,定义了一系列自动化任务。

  • Module:Ansible 内置的数百个执行小程序,每个模块执行一个具体任务。

  • Plugin:扩展 Ansible 功能的插件组件。


四、Ansible 版本对比

版本类型 获取方式 红帽支持 核心组件
社区 Ansible 上游社区 / pip 安装 Ansible Core + 社区内容集合
RHEL 内置 Ansible Core RHEL 9 AppStream 仓库 仅官方 Playbook 极简 Ansible Core
红帽 Ansible 自动化平台 红帽订阅 全方位企业级支持 Ansible Core + 120+ 认证内容集合 + 全套工具

五、红帽 Ansible 自动化平台(2.2 版本)核心组件

  • Ansible Core 2.13:作为 Ansible 的基础执行框架。

  • Ansible 内容集合 :模块化封装了各种模块和角色,核心模块保留了 ansible.builtin

  • ansible-navigator :替代传统的 ansible-playbook 的核心工具,提升用户体验。

  • 自动化执行环境:通过容器镜像封装运行时依赖,简化部署和管理。

  • 自动化控制器(原 Tower):用于管理和监控自动化任务的企业级工具。


六、部署准备要求

控制节点

  • 依赖:需要 Python 版本 3.8 或更高。

  • 安装命令sudo dnf install ansible-navigator ansible-core

  • 容器 :需要拉取 ee-supported-rhel8 镜像。

受管主机

  • Linux/UNIX :Python ≥3.8,SSH,SELinux 需要安装 python3-libselinux

  • Windows:PowerShell ≥3.0,.NET Framework ≥4.0。

  • 网络设备:无需 Python,支持通过 SSH/HTTP(S) 协议通信。


七、Ansible 设计理念与用例

设计理念

Ansible 强调 极简高效易读优先,并采用声明式编程方式,使得运维任务更加清晰和可管理。

核心用例

  • 配置管理:自动配置管理和一致性维护。

  • 应用部署:自动化应用部署和版本控制。

  • 资源调配:动态资源分配和调度。

  • 持续交付:实现自动化的持续交付流程。

  • 安全合规:确保系统遵循安全政策和合规要求。

  • 编排:多个系统、服务或应用之间的协调与管理。

相关推荐
中国lanwp5 小时前
Docker 一键部署脚本(CentOS7/AlmaLinux9)+ Ansible Playbook
docker·ansible
我爱学习好爱好爱6 小时前
Ansible Loop循环 循环遍历的属性 Notify和Handlers
linux·运维·ansible
牛奶咖啡137 小时前
DevOps自动化运维实践_ansible-playbook的使用
运维·自动化·ansible·devops·playbook·playbook模块及其示例
我爱学习好爱好爱7 小时前
Ansible include任务复用 tags ignore_errors
linux·运维·ansible
wwj888wwj1 天前
Ansible基础(复习1)
linux·运维·ansible
SPC的存折1 天前
12、Ansible安全加固
linux·运维·服务器·安全·ansible
Ashmcracker1 天前
告别手写 Inventory:Terraform 与 Ansible 在 Azure 上的联动,动态清单自动接管云主机
ansible·azure·terraform
wd5i8kA8i2 天前
ansible介绍、按照及配置
ansible
zfoo-framework2 天前
[推荐]ansible在主控机执行实现多个worker机器免密登录
linux·运维·ansible