出现该问题的原因是因为在AWX中,当从WebGUI运行playbook时,它会执行在AWX的容器中生成的命令,而这些命令可能与你主机上安装的Ansible版本不兼容。
要解决此问题,可以尝试在AWX中使用虚拟环境来运行playbook。以下是使用Python虚拟环境来解决此问题的示例代码:
1.在AWX服务器上安装Python虚拟环境
yum install python36 python36-devel python36-setuptools python36-pip -y pip3 install virtualenv
2.在Ansible AWX的环境中创建虚拟环境
cd /var/lib/awx/venv virtualenv --python=/usr/bin/python3 awx
3.激活虚拟环境
source /var/lib/awx/venv/awx/bin/activate
4.在虚拟环境中安装Ansible
pip3 install ansible
5.运行playbook
ansible-playbook playbook.yml
6.退出虚拟环境
deactivate
运行以上步骤将会在AWX服务器上的虚拟环境中运行playbook,并且能够避免因Ansible版本不兼容而导致的错误。