【问题描述】

RPCVersionCapError: Requested message version, 4.17 is incompatible. It needs to be equal in major version and less than or equal in minor version as the specified version cap 4.11.

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/api/openstack/extensions.py", line 336, in wrapped

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return f(*args, **kwargs)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py", line 865, in delete

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions self._delete(req.environ['nova.context'], req, id)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/api/openstack/compute/servers.py", line 719, in _delete

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions self.compute_api.delete(context, instance)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 200, in inner

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return function(self, context, instance, *args, **kwargs)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 208, in _wrapped

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return fn(self, context, instance, *args, **kwargs)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 148, in inner

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return f(self, context, instance, *args, **kw)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 2130, in delete

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions self._delete_instance(context, instance)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 2121, in _delete_instance

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions task_state=task_states.DELETING)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 1788, in _delete

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions self.detach_usb_list(context, instance)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 200, in inner

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return function(self, context, instance, *args, **kwargs)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 191, in wrapped

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return function(self, context, instance, *args, **kwargs)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 208, in _wrapped

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return fn(self, context, instance, *args, **kwargs)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/api.py", line 3596, in detach_usb_list

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return self.compute_rpcapi.detach_usb_list(context, instance)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/nova/compute/rpcapi.py", line 458, in detach_usb_list

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions return cctxt.call(ctxt, 'detach_usb_list', instance=instance)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/client.py", line 164, in call

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions self._check_version_cap(msg.get('version'))

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/client.py", line 121, in _check_version_cap

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions version_cap=self.version_cap)

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions RPCVersionCapError: Requested message version, 4.17 is incompatible. It needs to be equal in major version and less than or equal in minor version as the specified version cap 4.11.

2019-08-16 10:33:21.706 35 ERROR nova.api.openstack.extensions

2019-08-16 10:33:21.708 35 INFO nova.api.openstack.wsgi [req-2bd614de-973d-48fe-b9c2-392a65195a62 11668b80d3264ff7b0e602c4b603af5e 7fadd01436224d6c8d317c5a321fb3f6 - default default] HTTP exception thrown: Unexpected API Error. Please report this at http://bugs.launchpad.net/nova/ and attach the Nova API log if possible.

【问题定位】

日志显示版本不兼容,RPC当前版本为4.17,但是应该使用4.11或者之前的版本。

重启nova-api服务,此问题不再复现。

后来查看了nova的配置文件,研究对比了一下和其他环境的区别。

[upgrade_levels]

compute = auto

在 /etc/nova/nova.conf 配置文件里面,上面红色字体的参数为auto,这个参数主要是针对同时存在多个版本的nova-compute设计的。

nova-api的启动顺序在nova-compute之前,所以,在最开始的时候并不能取到nova-compute的版本,直接取了默认的mitaka,也就是4.11的版本。

然后在调用nova-api的时候,如果nova-compute的版本不是mitaka,版本就会有不匹配的问题。

但是在重启的时候, 通过上面的函数重新取了nova-compute的版本。

【解决方法】

将 /etc/nova/nova.conf 配置文件里面的红色字段修改为None:

[upgrade_levels]

compute = None

在上代码中,如果取到的imp_version为None,则直接返回True。

RPCVersionCapError: Requested message version, 4.17 is incompatible. It needs to be equal in major version and less than or equal in minor version as the specified version cap 4.11.的更多相关文章

  1. version `GLIBC_2.17' not found

    @ 今天把一个linux程序布到线上服务器上时,运行不起来,下面是解决思路. @ 运行程序,报以下错误 root@iZ25uck2l28Z:/tmp/tmp# ./speed_test ./speed ...

  2. ImportError: /lib64/libc.so.6: version `GLIBC_2.17' 问题解决

    安装最新的TensorFlow(>=1.10)后,载入TensorFlow时提示Glibc版本过低,需要升级到指定版本. ImportError: /lib64/libc.so.6: versi ...

  3. linux /lib64/libc.so.6: version `GLIBC_2.17′ not found

    使用root权限安装Glances,需要用到glibc,安装失败后所有命令都不好用了,执行回报“/lib64/libc.so.6: version `GLIBC_2.17′ not found ”的错 ...

  4. linux 运行可执行文件version `GLIBC_2.17' not found

    http://www.cnblogs.com/q191201771/p/3875316.html root@socfpga:/media/ram/nfs/dvb# ./a.out ./a.: vers ...

  5. version `GLIBC_2.17' not found 解决方法

    1.先查看是哪个函数用的是GLIBC_2.17 root@emb-pc:/home/emb/temp# nm lib61850.so | grep GLIBC_2.17 U clock_gettime ...

  6. Java-Maven-pom.xml-project-dependencies:dependencies

    ylbtech-Java-Maven-pom.xml-project-dependencies:dependencies 1.java 调用ddl <!-- java 调用ddl --> ...

  7. win7升级到win10系统后,node13升级为node16,node版本node-sass版本与不匹配,导致出现npm ERR! ERESOLVE could not resolve

    1. 错误npm ERR! code ERESOLVE 系统从win7升级到win10,之前的node版本是13.14.0,现在版本是16.17.1.正常的vue程序无法正常运行.从网上查询得知&qu ...

  8. hive :MetaException(message:Version information not found in metastore. )

    MetaException(message:Version information not found in metastore. ) Hive now records the schema vers ...

  9. Kubernetes 1.17.2 高可用部署

    20.0.0.200    10.0.0.200 bs-k8s-master01 管理节点 2c2g 20.0.0.201    10.0.0.201 bs-k8s-master02 管理节点 2c2 ...

随机推荐

  1. 2-SAT (two-statisfiability) 算法 学习笔记

    $2-SAT$问题指的是对于若干限制求出一组可行解的问题. 考虑对于$n$个值域为${0,1}$的变量$x_1 , x_2 ,...,x_n$ 满足若干限制: 若 $x_i = p$ 则 $x_j = ...

  2. HDU 3507 [Print Article]DP斜率优化

    题目大意 给定一个长度为\(n(n \leqslant 500000)\)的数列,将其分割为连续的若干份,使得 $ \sum ((\sum_{i=j}^kC_i) +M) $ 最小.其中\(C_i\) ...

  3. cursor url 自定义鼠标样式

    cursor可以自定义鼠标,写法是cursor:url(“图片路径”),pointer; url:需使用的自定义光标的 URL.图片类型需要是.cur或.ani和jpg,png等格式的(.cur或.a ...

  4. Apicloud_(项目)网上书城01_前端搭建

    [本文皆在记录自己开发Apicloud项目过程,不具备教学水平性文章] 参考书籍<30天App开发从0到1> Apicloud_(项目)网上书城01_前端页面开发 传送门 Apicloud ...

  5. python虚环境

    有的项目使用tornado框架比较好,有的用Django框架比较好,容易发生冲突,这个时候可以建立一个虚拟的python环境. 安装virtualenv包 进入项目所在目录,执行命令 virtuale ...

  6. 关键字transient是干啥的

    百度百科的解释: Java语言的关键字,变量修饰符,如果用transient声明一个实例变量,当对象存储时,它的值不需要维持.换句话来说就是,用transient关键字标记的成员变量不参与序列化过程. ...

  7. sessionStorge和localStorage的使用-踩坑记_09

    sessionStorge的使用 sessionStorage 属性允许你访问一个 session Storage 对象.它与 localStorage 相似,不同之处在于 localStorage ...

  8. 【学习】windows 下PostgreSQL导入sql文件

    在软件的安装目录的bin文件下打开命令行工具 输入: psql -d 数据库名称 -h 数据库地址 -p  5432  -U  postgres  -f  sql文件(E:\Config\SQL\iS ...

  9. C# 下载文件的心得

    下载文件最常用的有两种: 第一种:直接使用A标签,对应着文件的地址. 第二种:将文件写成流,然后在回传给客户端. 第一种,使用起来方便,但是有个坏处,如果你的文件是可编辑的文件(比如Excel wor ...

  10. 对《疯狂Spring Cloud微服务架构实战》作者的疑问

    Cloud的程序都是用的内部Tomcat,即使把一个大App分成独立小块,能应付得了你们当年人力运维的大量请求涌入吗? 真不知道淘宝怎么做到的双11一直不垮?真实互联网生产环境是充斥图书市场中的所谓S ...