我最近升级到OSX High Sierra,现在每当我尝试在Mac上的Ansible中使用vmware_guest
时,都会得到此信息:
fatal: [localhost -> localhost]: FAILED! => {"changed": false, "msg": "PyVmomi
Python module required. Install using \"pip install PyVmomi\""}
如您所见,它找不到pyVmomi。请注意,这是委派给
localhost
的,因此它在Mac上运行,而不是在某些远程服务器上运行。我尝试安装并重新安装pyVmomi,甚至重新安装了整个python安装程序。如您所见,模块在那里:➜ environment git:(rhel) python -c "from pyVmomi import vim"
➜ environment git:(rhel) python2 -c "from pyVmomi import vim"
➜ environment git:(rhel) python3 -c "from pyVmomi import vim"
我在用:
使用自制软件安装的Python 2.7.14
使用pip安装Ansible 2.5.0
OSX高山脉
最佳答案
经过大量挖掘之后,我发现机器上的问题是缺少另一个软件包。
罪魁祸首是来自ansible / vmware.py的代码:
try:
# requests is required for exception handling of the ConnectionError
import requests
from pyVim import connect
from pyVmomi import vim, vmodl
HAS_PYVMOMI = True
except ImportError:
HAS_PYVMOMI = False
`
您必须能够在此try块中导入所有导入,才能将HAS_PYVMOMI设置为True
在我的机器上,我缺少请求所导入的软件包,因此try块失败。卸载并重新安装pyVmomi没有帮助,也没有帮助。我的机器是CentOS 7.4 VM。