第 1 章 Planning your Red Hat Ansible Automation Platform installation
You can use this section to help plan your Red Hat Ansible Automation Platform installation. Before installation, review information on the setup installer, system requirements, and supported installation scenarios.
Use this information when planning your Red Hat Ansible Automation Platform installations. Each installed Ansible Automation Platform component - automation hub and automation controller has the following requirements.
Your system must meet the following minimum system requirements to install and run Red Hat Ansible Automation Platform.
| Required | Notes | |
|---|---|---|
| Subscription | Valid Red Hat Ansible Automation Platform | |
| OS | Red Hat Enterprise Linux 8.2 or later 64-bit (x86) | |
| Ansible | version 2.9 required | |
| RAM | 4Gb minimum |
|
| CPUs | 2 minimum |
|
| Disk: service node | 40Gb dedicated hard disk space |
|
| Disk: database node | 20Gb dedicated hard disk space |
|
| Browser | A currently supported version of Mozilla FireFox or Google Chrome | |
| Database | PostgreSQL version 12 |
- All automation controller data is stored in the database. Database storage increases with the number of hosts managed, number of jobs run, number of facts stored in the fact cache, and number of tasks in any individual job. For example, a playbook run every hour (24 times a day) across 250, hosts, with 20 tasks will store over 800000 events in the database every week.
- If not enough space is reserved in the database, old job runs and facts will need cleaned on a regular basis. Refer to Management Jobs in the Automation Controller Administration Guide for more information
Amazon EC2
- Instance size of m4.large or larger
- An instance size of m4.xlarge or larger if there are more than 100 hosts
Additional notes for Red Hat Ansible Automation Platform requirements
-
Actual RAM requirements vary based on how many hosts automation controller will manage simultaneously (which is controlled by the
forksparameter in the job template or the systemansible.cfgfile). To avoid possible resource conflicts, Ansible recommends 1 GB of memory per 10 forks + 2GB reservation for automation controller, see the :ref:`capacity algorithm <userguide:ug_job_concurrency>` for further details. Ifforksis set to 400, 42 GB of memory is recommended. - A larger number of hosts can of course be addressed, though if the fork number is less than the total host count, more passes across the hosts are required. These RAM limitations are avoided when using rolling updates or when using the provisioning callback system built into automation controller, where each system requesting configuration enters a queue and is processed as quickly as possible; or in cases where automation controller is producing or deploying images such as AMIs. All of these are great approaches to managing larger environments. For further questions, please contact Ansible support via the Red Hat Customer portal at https://access.redhat.com/.
- The requirements for systems managed by Ansible Automation Platform are the same as for Ansible. See Getting Started in the Ansible User Guide.
Notable PostgreSQL changes
Red Hat Ansible Automation Platform uses PostgreSQL 12.
- PostgreSQL user passwords will now be hashed with SCRAM-SHA-256 secure hashing algorithm before storing in the database.
-
You will no longer need to provide a
pg_hashed_passwordin your inventory file at the time of installation because PostgreSQL 12 can now store the user’s password more securely. If users supply a password in the inventory file for the installer (pg_password), that password will be SCRAM-SHA-256 hashed by PostgreSQL as part of the installation process. DO NOT use special characters inpg_passwordas it may cause the setup to fail. -
Since automation controller and automation hub are using a Software Collections version of PostgreSQL in 3.8, the
rh-postgresql10scl must be enabled in order to access the database. Administrators can use theawx-manage dbshellcommand, which will automatically enable the PostgreSQL SCL. -
If you just need to determine if your automation controller instance has access to the database, you can do so with the command,
awx-manage check_db.
PostgreSQL Configurations
Optionally, you can configure the PostgreSQL database as separate nodes that are not managed by the Red Hat Ansible Automation Platform installer. When the Ansible Automation Platform installer manages the database server, it configures the server with defaults that are generally recommended for most workloads. However, you can adjust these PostgreSQL settings for standalone database server node where ansible_memtotal_mb is the total memory size of the database server:
max_connections == 1024
shared_buffers == ansible_memtotal_mb*0.3
work_mem == ansible_memtotal_mb*0.03
maintenance_work_mem == ansible_memtotal_mb*0.04
Refer to the PostgreSQL documentation for more detail on tuning your PostgreSQL server.
Ansible software requirements
While Red Hat Ansible Automation Platform depends on Ansible Playbooks and requires the installation of the latest stable version of Ansible before installing automation controller, manual installations of Ansible are no longer required.
Upon new installations, automation controller installs the latest release package of Ansible 2.9.
If performing a bundled Ansible Automation Platform installation, the installation program attempts to install Ansible (and its dependencies) from the bundle for you.
If you choose to install Ansible on your own, the Ansible Automation Platform installation program will detect that Ansible has been installed and will not attempt to reinstall it. Note that you must install Ansible using a package manager like yum and that the latest stable version must be installed for Red Hat Ansible Automation Platform to work properly. Ansible version 2.9 is required for |at| versions 3.8 and later.