l3中出现大量消息超时错误,对网络的操作各种异常。

报错如下:

2016-02-25 05:54:59.886 15110 ERROR neutron.agent.l3.agent [req-db9207e6-9270-4f23-8c19-0d91d20cc6fb ] Failed synchronizing routers due to RPC error
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent Traceback (most recent call last):
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/neutron/agent/l3/agent.py", line 593, in fetch_and_sync_all_routers
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     routers = self.plugin_rpc.get_routers(context)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/neutron/agent/l3/agent.py", line 93, in get_routers
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     router_ids=router_ids)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/client.py", line 156, in call
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     retry=self.retry)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_messaging/transport.py", line 90, in _send
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     timeout=timeout, retry=retry)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 350, in send
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     retry=retry)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 339, in _send
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     result = self._waiter.wait(msg_id, timeout)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 243, in wait
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     message = self.waiters.get(msg_id, timeout=timeout)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 149, in get
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent     'to message ID %s' % msg_id)
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent MessagingTimeout: Timed out waiting for a reply to message ID d4baae114cee4f6d831c5eec3c5f0de3
2016-02-25 05:54:59.886 15110 TRACE neutron.agent.l3.agent

所有超时都指向同步路由的操作。

而且同步失败时,rabbit中的队列q-l3-plugin中有大量未应答消息积压,该队列为同步路由时使用,路由同步时会使用消息队列传送所有路由的属性详情,消息量很大
1)测试是否由于消息太大导致,编写测试代码,尝试连续1000次发送该消息,并未出现丢失消息的情况,
2)尝试减少路由器数量,短时内情况有所改善,但是随时间增加,消息积压依然有更加严重的趋势
3)尝试合入K版本oslo_messaging的最新更新,未有改善

最终跟踪neutron代码,发现消息队列出现Timeout的原因是:
neutron在同步路由信息时,会从neutron-server获取所有router的信息,这个过程会比较长(130s左右,和网络资源的多少有关系),而 在/etc/neutron/neutron.conf中会有一个配置项“rpc_response_timeout”,它用来配置RPC的超时时间,默认为60s,所以导致超时异常.解决方法为设置 rpc_response_timeout = 180

延时是解决各种问题的大招啊。。。

MessagingTimeout: Timed out waiting for a reply to message ID的更多相关文章

  1. OpenStack报错:MessagingTimeout: Timed out waiting for a reply to message ID

    L3.agent中出现大量消息超时错误,对网络的操作各种异常. 报错如下: -- :: ERROR neutron.agent.l3.agent [req-db9207e6--4f23-8c19-0d ...

  2. java.io.IOException: Timed out waiting 20000ms for a quorum of nodes to respond

    16-11-14 21:23:41,540 FATAL org.apache.hadoop.hdfs.server.namenode.FSEditLog: Error: starting log se ...

  3. timed out waiting for input: auto-logout

    The ssh "timed out waiting for input: auto-logout" messages is generated by ssh upon reach ...

  4. DHCP request error:Timed out waiting for dhcpcd to start【转】

    本文转载自:http://blog.csdn.net/zvivi521/article/details/9166899 [init.svc.dhcpcd_eth0]: [stopped] I/Serv ...

  5. Java连接ArtemisMQ,出现Timed out waiting to receive cluster topology. Group:null异常

    完整异常内容:org.springframework.jms.UncategorizedJmsException: Uncategorized exception occurred during JM ...

  6. telinit:Did not receive a reply.Possible causes include:the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired

    问题: Enabling /etc/fstab swaps: [ok]telinit:Did not receive a reply.Possible causes include:the remot ...

  7. Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired,

    Did not receive a reply. Possible causes include: the remote application did not send a reply, the m ...

  8. (adhoc) process launch failed: timed out waiting for app to launch

    I had a similar issue when trying to debug an App with Ad-Hoc provisioning... Check which provisioni ...

  9. Xcode Coule not launch "aaa" press launch failed:timed out waiting for app launch

    遇见这个问题 可能是 由于 runapp 的时候设置里面 设置为release了. 解决办法是:见图 build configuration 设置成 debug 状态就OK了. 要是上面的不行就试一下 ...

随机推荐

  1. tensorflow 基本函数(1.tf.split, 2.tf.concat,3.tf.squeeze, 4.tf.less_equal, 5.tf.where, 6.tf.gather, 7.tf.cast, 8.tf.expand_dims, 9.tf.argmax, 10.tf.reshape, 11.tf.stack, 12tf.less, 13.tf.boolean_mask

    1.  tf.split(3, group, input)  # 拆分函数    3 表示的是在第三个维度上, group表示拆分的次数, input 表示输入的值 import tensorflow ...

  2. 解决pip安装时的Readtime out问题

    方法一 pip --default-timeout=100 install -U Pillow就可以了方法二 pip install pyinstaller -i https://pypi.douba ...

  3. cas增加验证码

    参考地址:https://blog.csdn.net/attackmind/article/details/52052502 参考地址:https://blog.csdn.net/jadyer/art ...

  4. set 续1

    --------siwuxie095             三.用 set 实现计算     语法: SET /A expression     /A 命令行开关指定等号右边的字符串为待计算的数字表 ...

  5. Spring Boot gradle 集成servlet/jsp 教程及示例

    1.build.gradle 配置 注意,加入了war插件,在依赖中加入了jstl.tomcat-embed-jasper,这样才能运行jsp页面. buildscript { ext { sprin ...

  6. zookeeper的ZAB协议

    ZAB协议概述 ZooKeeper并没有完全采用Paxos算法,而是使用了一种称为ZooKeeper Atomic Broadcast(ZAB,zookeeper原子消息广播协议)的协议作为其数据一致 ...

  7. 利率计算v5.0--结对--软件工程

    利率计算v5.--测试--软件工程 1.任务结对同伴: 名字:王昕明 学号: 博客地址 :http://home.cnblogs.com/u/xinmingwang/ Git : https://gi ...

  8. jdbc和Java中的日期问题

    JDBC中的日期Java.sql.Date 是继承自Java中的Java.util.Date,在实现插入的时候可以 将Java.util.Date类型的时间转换成毫秒数,date.getTime(), ...

  9. Linux下的用户权限

    用户权限: drwxr-xr-x root root - : boot #权限位 硬连接数 所属用户 所属组 大小 最后修改时间 文件/目录# r w x 4 2 1 用户权限位分为3段,分别对应US ...

  10. (模拟)Arithmetic Sequence -- HDU -- 5400

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=5400 Time Limit: 4000/2000 MS (Java/Others)    Memory ...