Ubuntu18.04安装DevStack时oslo-vmware依赖suds-jurko版本冲突报错
DevStack依赖冲突修复方案
问题根因
冲突由pip的依赖规则校验触发:oslo-vmware 3.9.1要求suds-jurko>=0.6,而DevStack默认的版本约束文件强制锁定suds-jurko===0.6,加上系统存在双Python版本导致解析逻辑异常,最终抛出依赖无法满足的错误。
修复操作步骤
- 第一步:调整依赖版本约束
找到devstack工作目录下的upper-constraints.txt文件,定位到suds-jurko===0.6这一行,将其修改为suds-jurko>=0.6,也可以直接在行首添加#注释掉该行,解除强制版本锁定。 - 第二步:统一指定Python3作为运行环境
在devstack的local.conf配置文件中新增以下参数,避免双Python版本干扰:
FORCE_PYTHON3=True PYTHON=python3
- 第三步:清理历史安装缓存
执行以下命令删除之前安装失败产生的残留文件:
rm -rf ~/devstack/.venv sudo pip3 cache purge sudo pip cache purge
- 第四步:重新执行安装脚本
./stack.sh即可。
可选绕过方案
如果你不需要使用cinder的VMware存储驱动,可以直接在local.conf中添加如下配置,禁用对应服务绕过该依赖:
disable_service cinder-vmware
内容的提问来源于stack exchange,提问作者jnan
相关产品推荐
相关产品推荐

