[英]Ansible error - No module named packaging.version
我有Centos 7.3和ansible版本2.3。
Ansible 2.3.0.0
config file = ../ansible.cfg
configured module search path = Default w/o overrides
python version = 2.7.5 (default, Nov 6 2016, 00:28:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)]
我需要在Azure VM中運行ansible playbooks。
我跑的時候會收到以下錯誤
fatal: [52.170.201.24]: FAILED! => {"changed": false, "failed": true, "module_stderr": "Shared connection to 52.170.201.24 closed.\r\n",
"module_stdout": "\r\nTraceback (most recent call last):\r\n File \"/tmp/ansible_k2CnFR/ansible_module_azure_rm_virtualmachine.py\", line 445, in <module>\r\n
from ansible.module_utils.azure_rm_common import *\r\n
File \"/tmp/ansible_k2CnFR/ansible_modlib.zip/ansible/module_utils/azure_rm_common.py\", line 29, in <module>\r\nImportError: No module named packaging.version\r\n", "msg": "MODULE FAILURE", "rc": 0}
嘗試安裝幾個站點中指示的setuptools
sudo pip install setuptools
Requirement already satisfied: setuptools in /root/.local/lib/python2.7/site-packages
Requirement already satisfied: six>=1.6.0 in /root/.local/lib/python2.7/site-packages (from setuptools)
Requirement already satisfied: appdirs>=1.4.0 in /root/.local/lib/python2.7/site-packages (from setuptools)
Requirement already satisfied: packaging>=16.8 in /root/.local/lib/python2.7/site-packages (from setuptools)
Requirement already satisfied: pyparsing in /root/.local/lib/python2.7/site-packages (from packaging>=16.8->setuptools
嘗試了幾個站點中提到的升級點,並將其升級到最新版本
pip -V
pip 9.0.1 from /usr/lib/python2.7/site-packages/pip-9.0.1-py2.7.egg (python 2.7)
which pip
/usr/bin/pip
$ which pip3
/usr/local/bin/pip3
$ which python
/usr/bin/python
更新:
52.170.201.24是Azure虛擬機的IP地址,它是清單主機的一部分。
我實際上正在嘗試使用我的ansible控制機器中的這個ansible代碼啟動Azure虛擬機
- name: Power On Docker repo if Azure
azure_rm_virtualmachine:
resource_group: HpsaPoc
name: DockerRepo
started: yes
when: "{{cloud_provider}}" == 'azure'
我無法繞過這個python / pip配置,我曾嘗試安裝python 3.5和pip3但沒有幫助,所以刪除它,因為我不知道如何卸載它。 請幫忙。
由於您的環境沒有打包模塊,因此發生上述錯誤。
通過安裝包裝模塊來解決這個問題。
pip安裝包裝
以上命令將安裝16.8版本的打包模塊
您似乎嘗試從遠程主機執行azure_rm_virtualmachine
,而不是從Ansible控制主機執行。
嘗試:
- name: Power On Docker repo if Azure
azure_rm_virtualmachine:
resource_group: HpsaPoc
name: DockerRepo
started: yes
when: cloud_provider == 'azure'
delegate_to: localhost
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.