On Fri, May 20, 2022 at 3:07 PM <paul.chapman(a)farmgroup.tv> wrote:
Hi, I'm trying to deploy a self hosted engine on a Rocky Linux 8.6. Ovirt has
installed ok but I get this when deploying the engine -
[ ERROR ] fatal: [localhost]: FAILED! => {"changed": false, "msg":
"Python Module not found: firewalld and its python module are required for this
module, version 0.2.11 or newer required (0.3.9 or newer for offline operations)"}
I've tried running ansible_python_interpreter=/usr/bin/python3 on the host pre
deployment but that hasn't worked.
Where and how did you try this?
I've copied the progress below. Does the engine exist in part at
the point it fails and the problem is Python on the Engine not the host?
[snip]
[ INFO ] TASK [ovirt.ovirt.hosted_engine_setup : Open a port on
firewalld]
[ ERROR ] fatal: [localhost]: FAILED! => {"changed": false, "msg":
"Python Module not found: firewalld and its python module are required for this
module, version 0.2.11 or newer required (0.3.9 or newer for offline operations)"}
This error is from the host, not the engine VM.
I thought I might know the reason, but checking further shows me I
still do not...
Adding a few other people that might be able to help.
What I did check so far (only by looking at code and testing on quite
current CentOS Stream 8, not Rocky Linux):
1. This seems to be a minimal reproducer of your issue, on Stream:
# ansible -m firewalld -a state=enabled localhost
2. This seems to be a minimal "fix", for the above:
# ansible -m firewalld -a state=enabled -c local -i localhost, all
Meaning: Specifying an inventory, instead of directly a host. See also e.g.:
https://docs.ansible.com/ansible/latest/reference_appendices/interpreter_...
https://stackoverflow.com/questions/61561744/why-do-i-get-different-pytho...
Running both of them with ANSIBLE_DEBUG=1 and -vvvvv shows that there
are differences in which python is used, but I failed to completely
understand how it's done.
A wild guess as to why this fails on Rocky Linux:
https://github.com/ansible/ansible/blob/devel/lib/ansible/config/base.yml...
Perhaps there should have been code that would have caused the code
using the this map, to use 'redhat', but perhaps this does not work
well there.
If the "fixed" version (2.) above fails on Rocky Linux, perhaps open a
ticket on Rocky Linux's ansible packaging and have it fixed, then try
hosted-engine deployment again.
Hope this helps at least a bit...
Best regards,
--
Didi