第 2 章 RPM 拓扑
RPM 安装程序使用 RPM 在 Red Hat Enterprise Linux 上部署 Ansible Automation Platform,以在主机上安装平台。客户管理产品和基础架构生命周期。
2.1. RPM 增长拓扑
增长拓扑适用于开始使用 Ansible Automation Platform 的组织,不需要冗余或更高的计算来实现大量自动化。此拓扑允许较小的占用空间部署。
2.1.1. 基础架构拓扑
下图显示了红帽已经测试过此部署模型的基础架构拓扑,供客户在自我管理 Ansible Automation Platform 时使用:
图 2.1. 基础架构拓扑图
每个虚拟机(VM)已使用以下组件要求进行测试:16 GB RAM、4 个 CPU、60 GB 本地磁盘和 3000 IOPS。
VM 数量 | 用途 | VM 组名称示例 |
---|---|---|
1 | 带有 colocated Redis 的平台网关 |
|
1 | 自动化控制器 |
|
1 | 私有自动化中心 |
|
1 | Event-Driven Ansible |
|
1 | 自动化网格执行节点 |
|
1 | 数据库 |
|
2.1.2. 测试的系统配置
红帽已测试了以下配置来安装和运行 Red Hat Ansible Automation Platform:
类型 | 描述 |
---|---|
订阅 | 有效的 Red Hat Ansible Automation Platform 订阅 |
操作系统 | Red Hat Enterprise Linux 9.2 或更高版本 x86_64 和 AArch64 |
ansible-core | ansible-core 版本 2.16 或更高版本 |
浏览器 | 当前支持的 Mozilla Firefox 或 Google Chrome 版本 |
数据库 | PostgreSQL 15 |
2.1.3. 网络端口
Red Hat Ansible Automation Platform 使用多个端口与其服务进行通信。这些端口必须处于打开状态,并可用于 Red Hat Ansible Automation Platform 服务器的传入连接,以便它正常工作。确保这些端口可用,且服务器防火墙不会阻止。
端口号 | 协议 | 服务 | Source | 目的地 |
---|---|---|---|---|
80/443 | TCP | HTTP/HTTPS | Event-Driven Ansible | Automation hub |
80/443 | TCP | HTTP/HTTPS | Event-Driven Ansible | 自动化控制器 |
80/443 | TCP | HTTP/HTTPS | 自动化控制器 | Automation hub |
443 | TCP | HTTPS | 平台网关 | 自动化控制器 |
443 | TCP | HTTPS | 平台网关 | Automation hub |
443 | TCP | HTTPS | 平台网关 | Event-Driven Ansible |
5432 | TCP | PostgreSQL | Event-Driven Ansible | 数据库 |
5432 | TCP | PostgreSQL | 平台网关 | 数据库 |
5432 | TCP | PostgreSQL | Automation hub | 数据库 |
5432 | TCP | PostgreSQL | 自动化控制器 | 数据库 |
27199 | TCP | Receptor | 自动化控制器 | 执行节点 |
6379 | TCP | Redis | Event-Driven Ansible | Redis 节点 |
6379 | TCP | Redis | 平台网关 | Redis 节点 |
8443 | TCP | HTTPS | 平台网关 | 平台网关 |
50051 | TCP | gRPC | 平台网关 | 平台网关 |
2.1.4. 增长清单文件示例
使用示例清单文件为此拓扑执行安装:
# This is the Ansible Automation Platform installer inventory file intended for the RPM growth deployment topology. # Consult the Ansible Automation Platform product documentation about this topology's tested hardware configuration. # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/tested_deployment_models/rpm-topologies # # Consult the docs if you are unsure what to add # For all optional variables consult the Ansible Automation Platform documentation: # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation # This section is for your platform gateway hosts # ----------------------------------------------------- [automationgateway] gateway.example.org # This section is for your automation controller hosts # ----------------------------------------------------- [automationcontroller] controller.example.org [automationcontroller:vars] peers=execution_nodes # This section is for your Ansible Automation Platform execution hosts # ----------------------------------------------------- [execution_nodes] exec.example.org # This section is for your automation hub hosts # ----------------------------------------------------- [automationhub] hub.example.org # This section is for your Event-Driven Ansible controller hosts # ----------------------------------------------------- [automationedacontroller] eda.example.org # This section is for the Ansible Automation Platform database # ----------------------------------------------------- [database] db.example.org [all:vars] # Common variables # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-inventory-files-vars#ref-general-inventory-variables # ----------------------------------------------------- registry_username=<your RHN username> registry_password=<your RHN password> redis_mode=standalone # Platform gateway # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-inventory-files-vars#ref-gateway-variables # ----------------------------------------------------- automationgateway_admin_password=<set your own> automationgateway_pg_host=db.example.org automationgateway_pg_password=<set your own> # Automation controller # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-inventory-files-vars#ref-controller-variables # ----------------------------------------------------- admin_password=<set your own> pg_host=db.example.org pg_password=<set your own> # Automation hub # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-inventory-files-vars#ref-hub-variables # ----------------------------------------------------- automationhub_admin_password=<set your own> automationhub_pg_host=db.example.org automationhub_pg_password=<set your own> # Event-Driven Ansible controller # https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.5/html/rpm_installation/appendix-inventory-files-vars#event-driven-ansible-controller # ----------------------------------------------------- automationedacontroller_admin_password=<set your own> automationedacontroller_pg_host=db.example.org automationedacontroller_pg_password=<set your own>