阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ceph在高IO下的死锁故障

246次阅读
没有评论

共计 2068 个字符,预计需要花费 6 分钟才能阅读完成。

在一台高性能 PC 服务器上,使用 ceph 做虚拟机镜像的存储。在做压力测试的情况下,出现了该服务器所有虚拟机不能访问的故障。

引发原因:

1. 在虚拟机当中安装了一个网站服务,网站服务中使用了 redis 作为缓存服务器。在压力比较大的情况下(8000 千次访问每秒),发生了宿主机所有的虚拟机全部不能访问的情况

2. 发生故障时,部分虚拟机不能 ping 到,部分虚拟机是能 ping 到,但是不能 ssh 登陆

开始以为是网桥故障,KVM 的 virtio 的网卡故障非常著名,在使用网桥的情况下,会出现内存溢出。导致网桥失效。Xen 给的解决方案是关闭网桥的 tso 支持。

(运行命令 ethtool –offload <network device>  tso off)

但是重启网络服务后,该故障没有消失。

因此排除网桥故障。

多次重现故障之后,有一个虚拟机的 ssh 没有断掉,所以还能执行 cd 命令,但是 ls 命令无法执行,报告 input/output error, 此错误为文件系统故障的表现。

所以开始怀疑文件系统出现问题。

此文件系统为 ceph,查看 ceph 日志,发现在发生故障的同时,ceph 报大量一下的故障日志:

2015-06-30 16:36:28.493424 osd.0 172.23123123:6800/96711 9195 : cluster [WRN] 6 slow requests, 6 included below;

oldest blocked for > 30.934796 secs

还有

2015-06-26 18:46:45.192215 osd.2 172.132131231:6800/68644 5936 : cluster [WRN] slow request 240.415451 seconds old

, received at 2015-06-26 18:42:44.776646: osd_op(13213213500 [

stat,set-alloc-hint object_size 4194304 write_size 4194304,write 2269184~524288] 0.5652b278 ack+ondisk+write+kno

wn_if_redirected e48545) currently waiting for rw locks

明显出现了死锁。

查看磁盘 IO 记录,发现 redis 服务器,在故障发生时又大量的磁盘写入操作,发现在高操作频率的情况下,会比较频繁的触发 rbd 的持久化,因此引起了大量磁盘 io,这些磁盘 IO 导致了其他磁盘操作得不到足够的写入时间,引起了 ceph 对 osd 的死锁。

解决方案是关闭了 redis 的 rbd 持久化,该问题不再出现。

长久的解决办法是不让 redis 持久化直接往 ceph 上的分区上写入。还有就是不要再 ceph 上的虚拟机镜像进行高 IO 的写入或者读取(好不靠谱。。。)

经验总结:

1.Ceph 在高 IO 下存在死锁的风险,Ceph 没有提供解锁机制,官方的解决方案是不要在 ceph 上放虚拟机镜像。。。无语。。

2. 在系统设计的时候,应该将存储网络和业务网络隔离和分开。一个系统服务,应该分为,外网,业务网,存储网,心跳网,管理网,五种网络组建形式。

————————————– 分割线 ————————————– 

Ceph 环境配置文档 PDF http://www.linuxidc.com/Linux/2013-05/85212.htm 

CentOS 6.3 上部署 Ceph http://www.linuxidc.com/Linux/2013-05/85213.htm 

Ceph 的安装过程 http://www.linuxidc.com/Linux/2013-05/85210.htm 

HOWTO Install Ceph On FC12, FC 上安装 Ceph 分布式文件系统 http://www.linuxidc.com/Linux/2013-05/85209.htm 

Ceph 文件系统安装 http://www.linuxidc.com/Linux/2013-05/85208.htm 

CentOS 6.2 64 位上安装 Ceph 0.47.2 http://www.linuxidc.com/Linux/2013-05/85206.htm 

Ubuntu 12.04 Ceph 分布式文件系统 http://www.linuxidc.com/Linux/2013-04/82588.htm 

Fedora 14 上安装 Ceph 0.24 http://www.linuxidc.com/Linux/2011-01/31580.htm 

————————————– 分割线 ————————————–

Ceph 的详细介绍 :请点这里
Ceph 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2015-07/119493.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计2068字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中