《OpenShift / RHEL / DevSecOps / Ansible 汇总目录》
文章目录
1 - 红帽 Ansible Automation Platform
红帽 Ansible Automation Platform(简称 AAP)是取代原有红帽 Ansible Tower 的新一代 IT 自动化平台。在运维管理能力方面,它延续并扩展了 Ansible Tower 具备的广泛自动化运维管理能力,可以对各类云以及边缘环境中的主机、网络、安全进行自动化的管理、配置、运维。
2 - 红帽 AAP 的功能构成
AAP 为自动化运维的开发和运行阶段提供了相应的各项功能,从而使得 AAP 能够成为一个自动化运维的生态环境。
2.1 运行环境核心组件
以下组件是运行 AAP 自动化脚本的核心基础组件。
Ansible Core
Ansible Core 就是 ansible 可执行程序,目前 2.9 版本需要依赖 Python 3.8 运行。
Ansible Content Collection
Content Collection 是 Ansible 执行自动化操作所依赖的 Playbook、Role、Module 和 Plugin 的集合,Collection 规定了组织这些内容的格式。用户可以使用 RedHat 认证的数量众多的 Collection (说明见 https://docs.ansible.com/ansible/latest/collections/),也可以开发自己的 Collection,并让别人使用它。
Ansible Execution Environment
Ansible Execution Environment 简称 EE,它是 ansible 程序的运行环境。在 AAP 的生产环境中 ansible 程序是运行在容器环境了。因此 EE 就是由 Ansible Core + Python 构成的容器镜像。虽然我们还可以直接运行 ansible 程序以运行简单的 ad hoc 指令,但 Playbook、Role 都需要在 EE 中运行了。
红帽为 Ansible Execution Environment 提供了不同类型的官方容器镜像,用户也可以定制自己的 EE 镜像。
Ansible Automation Controller
Ansible Automation Controller 就是以前的 Ansible Tower,它提供了基于 Web 的自动化运维集中执行和统一管理功能。
2.2 运行环境其他组件
一个复杂的 AAP 运行环境还可包括以下组件:
Ansible Automation Hub
Ansible Automation Hub 是发布、保存、查找、下载 Ansible Content Collection 的 Repository·中心。红帽向用户提供了官方的 Ansible Automation Hub 网站,用户也可在自己的环境中构建私有 Ansible Automation Hub。我们可以将 Automation Hub 视为 现有 Ansible Galaxy 的下游平台,因为 Ansible Galaxy 是一个完全开放的平台,而 Automation Hub 只包括了经过 RedHat 认证的更加稳定可靠的内容。
Automation Mesh
Automation Mesh 是一种覆盖网络,可在大型分散节点之间分配执行并简化扩展,使自动化执行更接近其所需要的端。Automation Mesh 支持控制和执行平面容量进行独立扩展、也支持灵活和容错的设计选项,同时还具有应对高延迟和连接中断的弹性。Automation Mesh 具备跨分段网络、多个地理位置和环境(如数据中心、云和边缘)扩展自动化的能力,为分布式、远程自动化部署提供了最大的灵活性。
2.3 开发环境相关组件
开发环境相关组件提供了开发定制 EE 镜像的工具、以及开发测试 Playbook、Role 用到的工具。
Ansible Builder
Ansible Builder 是开发定制 EE 镜像的命令工具。
Ansible Navigator
Ansible Navigator 是开发测试 Playbook、Role 的命令工具,它类似以前的 ansible-play 命令工具。ansible-navigator 命令不但提供的是基于文本的用户交互界面 (TUI),并且它是在本地的 EE 镜像容器中运行 Playbook、Role。