Ceph用户邮件列表Vol45-Issue1

Ceph Vol 45 Issue 1

1.unfound objects blocking cluster, need help!(原文)

Hi, I have a production cluster on which 1 OSD on a failing disk was slowing the whole cluster down. I removed the OSD (osd.87) like usual in such case but this time it resulted in 17 unfound objects. I no longer have the files from osd.87. I was able to call “ceph pg PGID mark_unfound_lost delete” on 10 of those objects. On the remaining objects 7 the command blocks. When I try to do “ceph pg PGID query” on this PG it also blocks. I suspect this is same reason why mark_unfound blocks. Other client IO to PGs that have unfound objects are also blocked. When trying to query the OSDs which has the PG with unfound objects, “ceph tell” blocks. I tried to mark the PG as complete using ceph-objectstore-tool but it did not help as the PG is in fact complete but for some reason blocks. I tried recreating an empty osd.87 and importing the PG exported from other replica but it did not help. Can someone help me please? This is really important.

这个问题是作者一个集群中(ceph 0.94.5)出现了一个磁盘损坏以后造成了一些对象的丢失,然后在做了一定的处理以后,集群状态已经正常了,但是还是新的请求会出现block的状态,这个情况下如何处理才能让集群正常,作者贴出了pg dump,ceph -s,ceph osd dump相关信息,当出现异常的时候,需要人协助的时候,应该提供这些信息方便其他人定位问题,最后这个问题作者自己给出了自己的解决办法,出现的时候影响是当时的流量只有正常情况下的10%了,影响还是很大的

复现问题过程

[root@lab8106 ceph]# rados -p rbd put testremove testremove
[root@lab8106 ceph]# ceph osd map rbd testremove
osdmap e85 pool 'rbd' (0) object 'testremove' -> pg 0.eaf226a7 (0.27) -> up ([1,0], p1) acting

写入文件,找到文件,然后去后台删除对象 然后停止掉其中一个OSD,这里选择停掉主OSD

systemctl stop ceph-osd@1
ceph osd out 1

查看状态pg被锁住状态active+degrade,不会迁移完整,并且会检测到了有数据unfound了

然后向这个对象发起get请求

[root@lab8106 ceph]# rados -p rbd get testremove testfile

前端rados请求会卡住,后端出现 requests are blocked

看下如何处理

ceph pg 0.27 mark_unfound_lost delete

邮件列表作者的环境,这个命令也无法执行,直接卡死,后来发现有个执行窗口,就是这个对象所在的PG的OSD在启动过程中还是可以接受命令的,就在这个执行窗口执行这个命令就可以解决了

执行了以后可以执行命令

[root@lab8106 ceph]# rados  -p rbd  get testremove  a
error getting rbd/testremove: (2) No such file or directory

这个时候查询集群的状态可以看到,集群已经正常的恢复了,不会因为一个对象的丢失造成集群的PG状态卡在待迁移状态

可以看到请求是失败的但是不会像之前一样卡死的状态,卡死是比失败更严重的一种状态

如果不想看到老的 slow request ,那么就重启这个卡住的PG所在的osd,如果本来就正常了,那么这个异常状态就会消失

这个是一个需要人工干预的状态,实际上模拟的就是对象丢失的场景,什么情况下会对象丢失,一般来说,底层磁盘的故障,写下去的对象当时记录着有,正好写入完成又准备写副本的时候,磁盘坏了,这个就有比较高的概率出现,所以出现了坏盘要尽早更换

本系列是只会对列表的当天的非re进行一个汇总,这样保持了一个问题的追踪都在一篇里面,所以这一天只有这一个问题

本文分享自微信公众号 - 磨磨谈(momotan1987)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-11-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏钱塘大数据

中国互联网协会发布:《2018中国互联网发展报告》

在2018中国互联网大会闭幕论坛上,中国互联网协会正式发布《中国互联网发展报告2018》(以下简称《报告》)。《中国互联网发展报告》是由中国互联网协会与中国互联...

13550
来自专栏腾讯NEXT学位

今天我就说三句话

11520
来自专栏Ken的杂谈

【系统设置】CentOS 修改机器名

17830
来自专栏腾讯大讲堂的专栏

白底黑字or黑底白字,眼睛更喜欢哪一个?

12210
来自专栏haifeiWu与他朋友们的专栏

复杂业务下向Mysql导入30万条数据代码优化的踩坑记录

从毕业到现在第一次接触到超过30万条数据导入MySQL的场景(有点low),就是在顺丰公司接入我司EMM产品时需要将AD中的员工数据导入MySQL中,因此楼主负...

28340
来自专栏web前端教室

你可以从面试中学到什么?

讲一下我对面试的一些。。。“偏见”,哈哈,熟悉我的同学们一定要批判的读接下来的内容哈。

12100
来自专栏FSociety

SQL中GROUP BY用法示例

GROUP BY我们可以先从字面上来理解,GROUP表示分组,BY后面写字段名,就表示根据哪个字段进行分组,如果有用Excel比较多的话,GROUP BY比较类...

5.1K20
来自专栏前端桃园

知识体系解决迷茫的你

最近在星球里群里都有小伙伴说道自己对未来的路比较迷茫,一旦闲下来就不知道自己改干啥,今天我这篇文章就是让你觉得一天给你 25 个小时你都不够用,觉得睡觉都是浪费...

20740
来自专栏微信公众号:小白课代表

不只是软件,在线也可以免费下载百度文库了。

不管是学生,还是职场员工,下载各种文档几乎是不可避免的,各种XXX.docx,XXX.pptx更是家常便饭,人们最常用的就是百度文库,豆丁文库,道客巴巴这些下载...

44330
来自专栏钱塘大数据

理工男图解零维到十维空间,烧脑已过度,受不了啦!

让我们从一个点开始,和我们几何意义上的点一样,它没有大小、没有维度。它只是被想象出来的、作为标志一个位置的点。它什么也没有,空间、时间通通不存在,这就是零维度。

32130

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励