Rebase to AAP 2.2 and RHEL 8.6 Now

Rebase to AAP 2.2 and RHEL 8.6 Now

Upgrade and Install AAP2.2

Dallas Spohn's photo
Dallas Spohn
·Jun 2, 2022·

3 min read

Subscribe to my newsletter and never miss my upcoming articles

Working on the Ansible Automation Platform course has had some minor issues when we try to cover topics like filtering dynamic inventories, and other issues the developers have had with it when Ansible Tower changed to automation controller. But with 75% of the course done we decided to move to AAP2.2 which was recently released. This made me excited because the current task I hold is Chapter 8 sections 5 and 6 in the Red Hat "Filtering Hosts with Smart Inventories" book and classroom. The filtering of dynamic inventories is simple and straightforward in Ansible Tower But buggy in this release of the controller.

aap412-old.png

Of course, we also decided to drop all of chapter 7 IdM integration so I guess I am working on Chapter 7 now since the chapters have all changed.

Updating was as simple as downloading the new bundle from the internet and editing the inventory file. Modify the inventory file to specify:

  • The three servers to install.
  • The passwords for the administrator account in each server.
  • The container registry for the automation controller server.
  • The variables related to the database.
  • The variables related to the certificates.

    I also delete some repositories from the automation hub and all the EE's [Execution Environments] from the controller. I would hate for the setup to fail if I referenced anything from an old repo. (i.e. aap2.1)

You run the installation script as the root user. I executed the setup.sh installation script.

./setup.sh -e ignore_preflight_errors=true

NOTE: Because my lab environment does not satisfy the minimum memory requirement for the automation controller and the private automation hub servers, I set the ignore_preflight_errors additional Ansible variable to true to ignore preflight checks. This should not be set in a production environment.

Since I deleted the old 4.1 EE's I needed to replace them. I then upload namespaced EEs to the private automation hub.

EE-images.png

This example uses a loop with the skopeo copy command to upload archive files to private automation hub. Although the semicolons are not needed, the line continuation character in the skopoeo copy command is needed.

for I in ee-{29,minimal,supported}-rhel8;
> do
> skopeo copy docker-archive:///home/student/certified-EEs/${I}.tar \
> docker://hub.lab.example.com/ansible-automation-platform-21/${I}:latest;
> done

...output omitted...

skopo.png

Alternatively, assuming that you logged in to the private automation hub with the podman login command, you can upload an archive with the following commands. When not specified, the container images default to using the latest tag.

 podman load -i ee-supported-rhel8.tar
 podman tag \
 registry.redhat.io/ansible-automation-platform-22/ee-supported-rhel8 \
 hub.lab.example.com/ansible-automation-platform-22/ee-supported-rhel8
 podman push \
 hub.lab.example.com/ansible-automation-platform-22/ee-supported-rhel8

After all that was completed, I went to my controller hub and logged in to the controller with the username and password I updated in my inventory file.

aap420-new.png

Did you find this article valuable?

Support Dallas Spohn by becoming a sponsor. Any amount is appreciated!

See recent sponsors Learn more about Hashnode Sponsors
 
Share this