- 积分
- 16844
在线时间 小时
最后登录1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
// 集群中添加一个osd,( a0 `: } u: d( S$ t
ceph-deploy osd create --bluestore node1 --data /dev/sdg --block-db cache/db1 --block-wal cache/wal1
1 u% y Z0 M6 e* l3 Y6 _1 M. Z$ g+ o6 u( `7 {7 L" a
2 Y4 N, F$ w0 b2 B1 }# \$ Cceph daemon osd.5 config show |grep osd_recovery_max_single_start #这个值限定了每个pg可以启动recover操作的最大数。
; _. e8 C$ R$ ^: @% s6 Y6 V3 ]$ d8 d& q4 z" D
2 ~ h. U% Z- O( m2 I7 J
// 查看每个osd节点的参数,或者通过 ceph daemon osd.2 config get osd_recovery_op_priority 查看单个osd的参数 G4 p" T% `2 J5 k$ f4 z- B
+ ^ J2 B* j0 _0 o: D: M% X ceph daemon osd.5 config show |egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"
7 V/ s. A4 v+ N7 [) v, m2 y "osd_max_backfills": "10",3 `1 e- Y" r8 J! O) _' L/ n
"osd_recovery_max_active": "15",; R8 [$ y7 O# D8 g
"osd_recovery_op_priority": "3",1 S4 T9 L8 v1 A
7 j" _0 R3 u# j3 W" b
) c+ R& g" G: e& @
% s/ h0 b5 f; rceph tell osd.* injectargs --osd_max_backfills=128
/ A, @" | F% E) ?- B8 k% J9 r* [ceph tell osd.* injectargs --osd_recovery_op_priority=05 J& M' s3 k& }! `
ceph tell osd.* injectargs --osd_recovery_max_active=64
: H' E+ X& f0 ], W& Kceph tell osd.* injectargs --osd_recovery_max_single_start=647 f4 o9 B5 U; \
ceph tell osd.* injectargs --osd_recovery_sleep_hdd=02 @$ f. u/ l; J% W) W
5 F8 Z' N C( Z5 l9 v, d4 V9 I0 I& `9 ~ d" |
核心影响恢复速度的参数
/ I, |: Y, P$ B! tosd_max_backfills) Y6 z; m4 r" ]% F
这个参数默认值10. 由于一个osd承载了多个pg,所以一个osd中的pg很大可能需要做recovery.这个参数就是设置每个osd最多能让osd_max_backfills个pg进行同时做backfill.- A+ _. Z# K4 s4 P
recovery做修复,通过pull或者push的backfills的操作数一般是分开的,所以一般会考虑设置这个值大一些,用于primary osd通过push修复replica osd或者primary osd 通过pull方式修复replica osd% g/ ?* N/ b9 o# x. U i
osd_recovery_op_priority
1 X* h2 p! }" I; b3 n默认值10. osd修复操作的优先级, 可小于该值;这个值越小,recovery优先级越高。高优先级会导致集群的性能降级直到recovery结束
, U7 k6 a& G, s, x# b; T3 S% Aosd_recovery_max_active
' \5 J! W! q" Q& y- c2 N默认值15. 一个osd上可以承载多个pg, 可能好几个pg都需要recovery,这个值限定该osd最多同时有多少pg做recovery。
% Q/ ~: q; n( W' e! L4 b1 ^3 rosd_recovery_max_single_start9 @" `& c+ L5 b4 \. n- l
默认值5. 这个值限定了每个pg可以启动recovery操作的最大数。* Z$ |! [4 q6 X1 ?8 H/ p' k9 g
第一种情况,配置osd_recovery_max_single_start=1,osd_recovery_max_active=3,这代表每个osd在某个时间会为一个pg最多启动1个恢复操作,并且最多可以由3个恢复操作处于活跃状态。
; k# M2 _" o2 f4 d v: _" v1 m第二种情况,配置osd_recovery_max_single_start=2,osd_recovery_max_active=3,这代表某个时间点osd会为一个pg启动2个恢复操作,并且最多能有3个恢复操作处于活跃状态。& C, M6 B2 Y# J e% r3 G; z9 X) Q
osd_recovery_sleep_hdd; n# [0 n0 h" X5 _$ c- U- X- G- b2 K
每个recovery操作之间的间隔时间,单位是ms3 p% I4 \9 G. l$ @$ l: o
# R2 e1 X2 l2 V/ r ~. `
/ ^. C- ]) J/ v+ x M v; u4 F3 T" b; A4 L X
+ b( n* w/ [8 Q0 B4 x7 |! Z |
|