找回密码
 注册
查看: 559|回复: 0

ceph集群pg出现unfound objects处理办法

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2022-8-2 10:30:57 | 显示全部楼层 |阅读模式
现在OSD 1知道一些对象存在,但是没有这个副本活的OSD。 这种情况下,到这些对象的IO将被阻塞,集群希望失败的OSD快速地回来。这时假设返回一个IO错误给用户是适当的。4 q$ h6 }% A7 V: J
6 U; {/ K* }, Z/ `
修复建议:
, `/ C7 L  D) ]4 M* @* M2 n/ N1、启动停止的osd
2 G' i3 x- k9 r- B9 F' s- }首先,你应该确认哪些对象找不到了:2 W( h% A% n, j" C* r# q5 [( ?

; v! {) V+ f3 ~* m# ceph pg  1.d list_missing
. L) Z% l1 B" U, G! w" o, t3 k0 ]4 M3 I) O3 D
[starting offset, in json]
( S+ {. }8 \, L" w& U% V9 A9 Q/ a
{ "offset": { "oid": "",# d; r3 X: T$ ^# k
    "key": "",
4 l8 \" u- g$ P7 f    "snapid": 0,
0 }% K% w4 K/ \2 |    "hash": 0,% I% G0 }+ y. Z& o& z$ _7 k
    "max": 0},& K7 ]& ?% [8 f2 O
"num_missing": 0,- ~! n, p* Y- y) S: B$ F7 O
"num_unfound": 0,
5 w' q( h" q! \# o" k"objects": [
. Z' Z8 i4 n$ i3 u1 u   { "oid": "object 1",
8 p$ ?8 ^  O3 G/ k, d     "key": "",7 Q1 m1 `5 `1 c: Y
     "hash": 0,
6 d6 t# A- I4 d/ v5 M3 U. {     "max": 0 },  s' s; l8 t1 b( g, v
   ...* S4 T7 n* U; d/ ~( {* b
],
' |7 j0 R! D' G- z"more": 0}
7 l7 f6 d( t% N; p/ D
9 ]( h: l# z" U; s3 U, G如果在一次查询里列出的对象太多, more 这个字段将为 true ,你就可以查询更多。
5 s2 D- o1 j2 |" }! k( Z' N其次,你可以找出哪些 OSD 上探测到、或可能包含数据:
  d8 t$ D, }1 F1 s. v
0 q8 r9 ^" n& o2 F9 K' |7 W- [6 z) ~# ceph pg 1.d query. p5 C, W) j) @! q# j

7 H5 s' ~" D4 N3 e" F: b* E"recovery_state": [
) j9 x. W# u% S3 ]3 h' m    { "name": "Started\/Primary\/Active",
! K1 O1 k- Z/ G, Q0 V      "enter_time": "2022-08-01 15:15:46.713212",
7 f7 [9 u& @& M# k  _$ m1 f      "might_have_unfound": [
- m& A& Q0 r7 f- G( ~' J            { "osd": 1,  }4 x8 t/ {2 l& C
              "status": "osd is down"}]},# w+ R7 f, @6 V) \' I% t0 e
! ]& ^  b, J9 Z/ Z
所有停止osd.1
# K" M1 k( \5 d9 P+ F/ X5 m! _! T
2、如果还无法恢复,你可能只有放弃丢失的对象。执行如下命令回滚或删除对象:
! V" s+ Y* k- W1 V- E* M7 |0 R6 y$ U8 ~. S* {
ceph pg  {pgname}  mark_unfound_lost revert|delete; w$ c- o( a$ @8 C

- q% ~: L# @; q$ j9 F1 crevert选项:回滚到对象的前一个版本8 P$ L4 h$ b; R1 `- f/ T2 E  p
delete选项:完全删除这个对象
7 N2 k1 X6 v5 C6 _! i3 Q使用这个操作时注意,因为它可能是使预期存在这个对象的程序混乱。  @) Y; L# V* [& z, S
列出带有丢失对象的PG的名字:
0 ~/ m7 G8 b4 f$ B' T& W% G$ b# V6 ~( k7 |
ceph pg {pgname} list_missing
0 s# `0 ^. T" i# G4 }! G
/ o" R3 a' F" |) p, F举例:
5 R% p4 J+ l' k& `. H6 {6 j* q! m) H9 m' a
[root@node2 ~]# ceph health detail | grep unfound
4 u3 @: q1 ]' \# e( C/ p4 SHEALTH_ERR 50 pgs backfill_wait; 3 pgs backfilling; 60 pgs degraded; 1 pgs inconsistent; 1 pgs recovering; 19 pgs recovery_wait; 60 pgs stuck degraded; 73 pgs stuck unclean; 41 pgs stuck undersized; 41 pgs undersized; recovery 126807/1654284 objects degraded (7.665%); recovery 186892/1654284 objects misplaced (11.297%); recovery 1/551428 unfound (0.000%); 1 scrub errors/ f/ k. {! ?+ e$ J0 f  i) m8 [
pg 3.39 is active+recovering+undersized+degraded+remapped, acting [14,2], 1 unfound
; E  R$ b3 j& y- p' |+ g2 K1 i4 wrecovery 1/551428 unfound (0.000%)
8 H  M4 x  f: I; H
' _8 L7 k- M( b  ]' ]) B0 \[root@node2 ~]# ceph pg 1.d mark_unfound_lost  delete7 O3 h' X+ x: Q8 n5 N
pg has 1 objects unfound and apparently lost marking5 |3 K2 O- p( L6 h
————————————————
8 |* b5 l% z9 s+ [6 z0 h
1 ~6 Y7 _7 s$ w! A: E
& t: \' J. k. e( m% [7 n. B
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 02:01 , Processed in 0.022800 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表