セッションが行われる部屋とは別に、Red Hat の各製品や各社のブースが設けられているエリアがありました。
OpenShift Virtualization
あまりゆっくり回れなかったのですが、OpenShift Virtualization のブースでご説明いただきました。
「コンテナのように VM をオーケストレーションするもの」程度の理解だったのですが、いただいたチラシで「Red Hat Enterprise Linux の仮想マシンは無償・無制限で使用可能」であることを知りました。
# Host patterns
hostname_re = (
r"[a-z" + ul + r"0-9](?:[a-z" + ul + r"0-9-]{0,61}[a-z" + ul + r"0-9])?"
)
# Max length for domain name labels is 63 characters per RFC 1034 sec. 3.1
domain_re = r"(?:\.(?!-)[a-z" + ul + r"0-9-]{1,63}(?<!-))*"
tld_re = (
r"\."# dotr"(?!-)"# can't start with a dashr"(?:[a-z" + ul + "-]{2,63}"# domain labelr"|xn--[a-z0-9]{1,59})"# or punycode labelr"(?<!-)"# can't end with a dashr"\.?"# may have a trailing dot
)
host_re = "(" + hostname_re + domain_re + tld_re + "|localhost)"```
ホスト名のパターンとしては、上記規則に基づいたドメイン名を含むか、localhost が OK とされています。これに対して、今回指定したのは aap25c という単一ラベルのホスト名だったのでエラーとなった、という話です。
The automation controller, Event-Driven Ansible, and automation hub legacy UIs now display a redirect page to the Platform UI rather than a blank page.
$ tar xzf ansible-automation-platform-containerized-setup-bundle-2.5-2-x86_64.tar.gz
$ cd ansible-automation-platform-containerized-setup-bundle-2.5-2-x86_64
なお、インストールの処理上 Platform Gateway の構築は必須です。試しに automationgateway グループ に所属するホストを空にしたら、You must have a host set in the [automationgateway] section というエラーが発生しました。
$ dnf repolist
Not root, Subscription Management repositories not updated
repo id repo name
rhel-9-for-x86_64-appstream-rpms Red Hat Enterprise Linux 9for x86_64 - AppStream (RPMs)
rhel-9-for-x86_64-baseos-rpms Red Hat Enterprise Linux 9for x86_64 - BaseOS (RPMs)
$ podman ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f728f9c17261 registry.redhat.io/rhel8/postgresql-13:latest run-postgresql 6 minutes ago Up 5 minutes postgresql
54a15d3dfdd7 registry.redhat.io/rhel8/redis-6:latest run-redis 5 minutes ago Up 5 minutes redis
f7e9f4709730 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 4 minutes ago Up About a minute automation-controller-rsyslog
f0b5d5f93ae5 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 4 minutes ago Up About a minute automation-controller-web
podman ps -a で調べてみると receptor と automation-controller-task はそれぞれ終了していました。
$ podman ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f728f9c17261 registry.redhat.io/rhel8/postgresql-13:latest run-postgresql 8 minutes ago Up 8 minutes postgresql
54a15d3dfdd7 registry.redhat.io/rhel8/redis-6:latest run-redis 8 minutes ago Up 8 minutes redis
12b94e181d9b registry.redhat.io/ansible-automation-platform-24/ee-supported-rhel8:latest /usr/bin/receptor... 7 minutes ago Exited (1) 7 minutes ago receptor
f7e9f4709730 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 7 minutes ago Up 4 minutes automation-controller-rsyslog
12dbc9d8db3f registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 7 minutes ago Exited (0) 3 minutes ago automation-controller-task
f0b5d5f93ae5 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 7 minutes ago Up 3 minutes automation-controller-web
で、まず receptor がなんで異常終了したんだろうと、podman logs receptor でログを確認したら Error: node ID "localhost" is reserved とありました。
$ podman logs receptor
Error: node ID "localhost" is reserved
$ podman logs automation-controller-task
...(略)...
Traceback (most recent call last):
File "/usr/bin/awx-manage", line 8, in <module>
sys.exit(manage())
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/__init__.py", line 175, in manage
execute_from_command_line(sys.argv)
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
utility.execute()
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/core/management/__init__.py", line 436, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/core/management/base.py", line 412, in run_from_argv
self.execute(*args, **cmd_options)
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/django/core/management/base.py", line 458, in execute
output = self.handle(*args, **options)
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/main/management/commands/run_dispatcher.py", line 68, in handle
consumer.run()
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/main/dispatch/worker/base.py", line 236, in run
self.worker.on_start()
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/main/dispatch/worker/task.py", line 141, in on_start
dispatch_startup()
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/main/tasks/system.py", line 120, in dispatch_startup
cluster_node_heartbeat()
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/main/tasks/system.py", line 578, in cluster_node_heartbeat
inspect_execution_and_hop_nodes(instance_list)
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/awx/main/tasks/system.py", line 517, in inspect_execution_and_hop_nodes
mesh_status = ctl.simple_command('status')
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/receptorctl/socket_interface.py", line 81, in simple_command
self.connect()
File "/var/lib/awx/venv/awx/lib64/python3.9/site-packages/receptorctl/socket_interface.py", line 99, in connect
raise ValueError(f"Socket path does not exist: {path}")
ValueError: Socket path does not exist: /run/receptor/receptor.sock
...(略)...
TASK [ansible.containerized_installer.automationcontroller : Wait for the Controller API to te ready] ***
fatal: [rhel9-aap24c]: FAILED! => {"changed": false, "elapsed": 0, "msg": "Status code was -1 and not [200]: Request failed: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: Hostname mismatch, certificate is not valid for 'rhel9-aap24c'. (_ssl.c:1129)>", "redirected": false, "status": -1, "url": "https://rhel9-aap24c:443/api/v2/ping/"}
$ podman ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1bdb7ba2d638 registry.redhat.io/rhel8/postgresql-13:latest run-postgresql 4 minutes ago Up 4 minutes postgresql
5db357812714 registry.redhat.io/rhel8/redis-6:latest run-redis 4 minutes ago Up 4 minutes redis
2c9dfbbeb62b registry.redhat.io/ansible-automation-platform-24/ee-supported-rhel8:latest /usr/bin/receptor... 4 minutes ago Up 4 minutes receptor
3beee138c0e6 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 3 minutes ago Up 34 seconds automation-controller-rsyslog
fe2516aff573 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 3 minutes ago Up 31 seconds automation-controller-task
15133bf168e8 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 3 minutes ago Up 20 seconds automation-controller-web
TASK [ansible.containerized_installer.automationcontroller : Wait for the Web port to be reachable] **************************
fatal: [rhel9-aap24c]: FAILED! => {"changed": false, "elapsed": 300, "msg": "Timeout when waiting for 127.0.0.1:443"}
$ podman ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3910331f6865 registry.redhat.io/rhel8/postgresql-13:latest run-postgresql 4 hours ago Up 4 hours postgresql
86e602e1c6e4 registry.redhat.io/rhel8/redis-6:latest run-redis 4 hours ago Up 4 hours redis
71b5bad7d7f1 registry.redhat.io/ansible-automation-platform-24/ee-supported-rhel8:latest /usr/bin/receptor... 4 hours ago Up 4 hours receptor
84df241d5ae3 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 4 hours ago Up 4 hours automation-controller-rsyslog
7ffa833dd597 registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 4 hours ago Up 4 hours automation-controller-task
344e8869af0c registry.redhat.io/ansible-automation-platform-24/controller-rhel8:latest /usr/bin/launch_a... 4 hours ago Up 4 hours automation-controller-web
$ podman volume ls
DRIVER VOLUME NAME
local postgresql
local redis_data
local redis_etc
local redis_run
local receptor_run
local receptor_runner
local receptor_home
local receptor_data
# This section is for your AAP Gateway host(s)
# -----------------------------------------------------
[automationgateway]
fqdn_of_your_rhel_host ansible_connection=local
...(略)...
# AAP Gateway - mandatory
# ------------------------------
gateway_admin_password=<set your own>
gateway_pg_host=fqdn_of_your_rhel_host
gateway_pg_password=<set your own>
# AAP Gateway - optional
# -----------------------------
# To use custom TLS certificate/key you need to set these variables
#gateway_tls_cert=<full path to your TLS certificate file>
#gateway_tls_key=<full path to your TLS key file>
...(略)...