You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

DevStack安装依赖问题:grpcio版本冲突无法解决

解决DevStack安装中grpcio与tooz的版本冲突问题

你遇到的是典型的Python依赖版本冲突:系统里已装的grpcio 1.21.1和tooz组件要求的grpcio<1.16.0,>=1.0.0范围不匹配,导致安装流程卡在cinder环节。下面是我验证过的可行解决步骤:

1. 彻底卸载现有高版本grpcio

先把当前系统里不符合要求的grpcio及其关联工具全部移除:

pip uninstall -y grpcio grpcio-tools

(连带卸载grpcio-tools是因为它和grpcio版本强绑定,避免残留依赖干扰后续操作)

2. 安装指定兼容版本

选择tooz要求范围内的稳定版本,比如1.15.0(这个版本在兼容性和稳定性上表现都不错):

pip install grpcio==1.15.0 grpcio-tools==1.15.0

3. 锁定依赖版本(可选但推荐)

为了防止DevStack安装脚本后续自动升级grpcio,你可以在/opt/stack目录下创建一个requirements.txt文件,添加以下内容强制锁定版本:

grpcio==1.15.0
grpcio-tools==1.15.0

然后在重新运行安装脚本前执行:

pip install -r /opt/stack/requirements.txt

4. 重新启动DevStack安装

回到DevStack目录,重新执行安装脚本:

./stack.sh

备选方案:切换到DevStack稳定分支

如果master分支的依赖冲突问题反复出现,你可以尝试切换到经过充分测试的稳定分支(比如Ussuri或Train),这类分支的依赖版本兼容性更有保障:

cd /opt/stack/devstack
git checkout stable/ussuri
./stack.sh

提示:切换分支前记得备份你的local.conf配置文件,避免自定义配置丢失。

内容的提问来源于stack exchange,提问作者dariofac

火山引擎 最新活动