易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 1858|回复: 6
收起左侧

ceph 15版本中速率设置max_backfills和osd_recovery_max_active详解

[复制链接]
发表于 2023-1-9 08:00:02 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 2 金钱 才能浏览
 楼主| 发表于 2023-1-9 08:00:03 | 显示全部楼层
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"
* Q9 ~- Q6 W7 U* b- `osd_max_backfills = 1% R$ ~9 m+ _& D7 d
osd_recovery_max_active = 0& t5 l  _8 R3 o5 S& x9 C, K6 o
osd_recovery_max_active_hdd = 3# ?' L: F' z7 I; V0 A; t$ J& q
osd_recovery_max_active_ssd = 10
6 `3 z6 r8 S# K) q8 bosd_recovery_op_priority = 37 B4 S$ B2 |4 r4 I0 q3 t! r
[root@ceph1 ~]# ceph tell 'osd.*' injectargs --osd-max-backfills=2 --osd-recovery-max-active=6; Z9 ~* Q& M( L3 P; Z7 N$ Q
osd.0: osd_max_backfills = '2' osd_recovery_max_active = '6' (not observed, change may require restart) * }* H, b" r- r; G! E& ?9 z, k
osd.0: {}
& i4 ?3 s0 M' H+ T7 c8 `; c# eosd.1: osd_max_backfills = '2' osd_recovery_max_active = '6' (not observed, change may require restart) 7 T* ~& F* J! D9 A
osd.1: {}, [. ]. ~' i# R
osd.2: osd_max_backfills = '2' osd_recovery_max_active = '6' (not observed, change may require restart) 1 r6 `0 e0 n) l2 D  S: n) m7 A. b
osd.2: {}" ]! }8 [1 B/ b) M: j
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"
) a3 a6 n  t9 ^, Q9 Gosd_max_backfills = 1
& H  p- J: }% o' x" K, c' N9 {# wosd_recovery_max_active = 0
" T2 {5 n: f' \% h) c: p: gosd_recovery_max_active_hdd = 33 d4 r# j9 i9 S0 m0 \
osd_recovery_max_active_ssd = 10( f! v8 P& C  H( }  B" i" d/ @
osd_recovery_op_priority = 3) ^! |0 P, v0 ]: Q
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"+ m( ^+ l  G; T& ]2 ^, b
osd_max_backfills = 1
; K! d- Z1 j0 H7 Iosd_recovery_max_active = 0
: ^. A& ]- s( D+ cosd_recovery_max_active_hdd = 3
4 O8 x( ~" D! z* y9 J8 `osd_recovery_max_active_ssd = 10
* U& i. c  o3 a( U% Gosd_recovery_op_priority = 3% z: F/ t! `5 Z  t0 @9 K! D
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"
- Y$ M) h; }4 D7 m1 b6 m9 j! cosd_max_backfills = 1
, O: C% d) f% T( l" n0 Gosd_recovery_max_active = 0
1 b. r. E! u1 d- \osd_recovery_max_active_hdd = 35 I( x0 o. @) [1 f
osd_recovery_max_active_ssd = 10
9 \# G( N! h3 T. X2 hosd_recovery_op_priority = 3+ y9 B/ w0 m* X2 w$ y
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills": p; o! m) [! i, Q+ g( C% K
osd_max_backfills = 16 _3 e. a( D4 d8 x) v- \
osd_recovery_max_active = 03 H5 k9 z  |5 ^: ?3 P" m6 X3 c4 b
osd_recovery_max_active_hdd = 3' Y) R7 A* E1 W+ S
osd_recovery_max_active_ssd = 105 l! \3 f+ U+ M( }9 J
osd_recovery_op_priority = 3
5 c4 Q) m( K$ f: z5 L) V( p) Z; n[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"
0 g! q0 _' W9 g+ e0 x; b; Gosd_max_backfills = 1/ |7 b+ r( A2 K! R: d
osd_recovery_max_active = 0
; j5 q% o8 d8 o' }/ M9 a7 ]osd_recovery_max_active_hdd = 3& d2 F. q! r* J  r# l2 }! |
osd_recovery_max_active_ssd = 10
  ~" n! X7 x5 O+ m! fosd_recovery_op_priority = 3) y" E- G+ m! l' {; z! H
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"
  R! p! W/ x8 Q* g- y0 d( f( losd_max_backfills = 1' T0 d: B0 Z% [  ?% k3 }9 g
osd_recovery_max_active = 0
, s' G; t  N8 D- m) ~8 sosd_recovery_max_active_hdd = 37 R1 C5 ]7 H; C( I& b! u* L
osd_recovery_max_active_ssd = 10
2 k9 n1 S/ F7 n9 [2 X/ a9 Vosd_recovery_op_priority = 34 _  }, t/ ~- s& }4 f9 \% ^5 ~
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"% a6 T. x# x& z9 s; y2 V- e6 [
osd_max_backfills = 1# O6 o7 D1 M: x2 P# L
osd_recovery_max_active = 0" t: y, o  E: Y: d
osd_recovery_max_active_hdd = 37 h3 x6 K7 @1 l. d* k% y: i8 }7 m# F
osd_recovery_max_active_ssd = 10
# |, f; k1 z& I% z' {- hosd_recovery_op_priority = 32 i6 O6 M& P4 b% @0 o
[root@ceph1 ~]# ceph daemon osd.1 config get osd_max_backfills5 t+ z3 |; _) \/ y9 y8 b
admin_socket: exception getting command descriptions: [Errno 2] No such file or directory
7 f- q9 U! G0 _  J: P[root@ceph1 ~]# ceph config show osd.2* z$ y# X3 w/ C: D8 Y) X# |
NAME                            VALUE                                                                                                                                                        SOURCE    OVERRIDES  IGNORES
6 _0 h. n0 @9 X- f6 P$ kcontainer_image                 quay.io/ceph/ceph:v15                                                                                                                                        mon                         * Z* y- E0 F5 @! v
daemonize                       false                                                                                                                                                        override                    0 b# O) z7 }6 y) i
keyring                         $osd_data/keyring                                                                                                                                            default                     $ L' Y9 K9 N( j- o: y3 M6 N+ J
leveldb_log                                                                                                                                                                                  default                     0 K9 W& u, I! I- m
log_stderr_prefix               debug                                                                                                                                                        default                     " C+ V) P6 ]9 I4 j  B2 [
log_to_file                     false                                                                                                                                                        default                     4 b" J1 n% s6 r% K: B
log_to_stderr                   true                                                                                                                                                         default                     
& f# z+ A8 i. M, ^mon_host                        [v2:192.168.13.170:3300/0,v1:192.168.13.170:6789/0] [v2:192.168.13.171:3300/0,v1:192.168.13.171:6789/0] [v2:192.168.13.172:3300/0,v1:192.168.13.172:6789/0]  file                        
: r+ E5 b) G( k/ y. {mon_warn_on_pool_no_redundancy  false                                                                                                                                                        mon                         : Q" i5 ~& B2 Z1 X& w
no_config_file                  false                                                                                                                                                        override                    9 J5 ]3 ~! p0 J8 n3 i& Q. F) ~- j3 P
osd_max_backfills               2                                                                                                                                                            override                    8 R1 H6 c5 z6 @* K2 x: R0 D
osd_recovery_max_active         6                                                                                                                                                            override                    7 k! A( a  Q6 p8 d5 J
rbd_default_features            61                                                                                                                                                           default                     
  |+ e, M7 i6 l1 isetgroup                        ceph                                                                                                                                                         cmdline                     
, w' l6 s& Y, [' h; bsetuser                         ceph                                                                                                                                                         cmdline                     & _4 C( W5 \9 h5 d$ x  s
[root@ceph1 ~]# ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"; A9 C. d, ?4 o3 i# R! D
osd_max_backfills = 1
, p0 V6 O. u1 s) \osd_recovery_max_active = 0/ Q* Y' y. L5 `! f( i! V6 j( n; Q
osd_recovery_max_active_hdd = 3
' m! o3 G4 g, D0 t: losd_recovery_max_active_ssd = 102 }: j2 O* R0 ]$ s  |
osd_recovery_op_priority = 3  l$ j5 c$ h- m
[root@ceph1 ~]# ceph tell 'osd.*' injectargs --osd-max-backfills=2 --osd-recovery-max-active=6+ ^, e/ {) n: ]. O
osd.0: {}
" K8 R. T% C" _, z7 Mosd.1: {}
! {; k0 p4 b8 T9 B# M; U  O/ cosd.2: {}
; w( D1 [* W8 a) T
 楼主| 发表于 2023-1-9 09:15:38 | 显示全部楼层
[root@ceph1 ~]#  ceph tell 'osd.*' injectargs --osd-max-backfills=2 --osd-recovery-max-active=6
; V% T# r& q8 ?osd.0: osd_max_backfills = '2' osd_recovery_max_active = '6' (not observed, change may require restart)
+ G( G) ?' u8 ?" I& ^osd.0: {}0 v1 e; o' W- f( A+ q, \
osd.1: osd_max_backfills = '2' osd_recovery_max_active = '6' (not observed, change may require restart)
9 k- h- \5 e5 R# yosd.1: {}
$ L& c% d5 C" B4 q5 |' bosd.2: osd_max_backfills = '2' osd_recovery_max_active = '6' (not observed, change may require restart)
$ M' w: }' A7 d( o* c  V/ Iosd.2: {}
+ u- x& b( L, G1 o# L  e) l[root@ceph1 ~]#  ceph-conf --show-config | egrep "osd_recovery_max_active|osd_recovery_op_priority|osd_max_backfills"! d  D, r2 o9 p, u$ a, e1 T
osd_max_backfills = 1
$ ]$ J/ z9 w, [; c9 u6 T  P, J1 T; Iosd_recovery_max_active = 04 J2 k) M4 h2 t4 N
osd_recovery_max_active_hdd = 31 ^8 C6 J8 L" K  b. j7 I3 c
osd_recovery_max_active_ssd = 10
. T/ q- p" ]& ?2 _; oosd_recovery_op_priority = 38 y4 o/ L# r* F1 d2 S+ E. [! l) }, c9 w
[root@ceph1 ~]# ceph config show osd.2
9 Y# Y' r# F) R2 rNAME                            VALUE                                                                                                                                                        SOURCE    OVERRIDES  IGNORES0 e# V. F% f( R: P- t$ d
container_image                 quay.io/ceph/ceph:v15                                                                                                                                        mon                        
4 [2 R. h6 h9 U+ d+ T  Adaemonize                       false                                                                                                                                                        override                    
4 F1 N  o5 i$ d7 |; `# p( Ykeyring                         $osd_data/keyring                                                                                                                                            default                     
* h( |% K3 r+ T% j" Gleveldb_log                                                                                                                                                                                  default                     
, r2 @& D& p' `) ?log_stderr_prefix               debug                                                                                                                                                        default                     
; [7 b6 c# z% Klog_to_file                     false                                                                                                                                                        default                     
; q6 x6 _. F  ]: U) @. Tlog_to_stderr                   true                                                                                                                                                         default                     7 o1 F. Y: ]/ Q3 N7 l
mon_host                        [v2:192.168.13.170:3300/0,v1:192.168.13.170:6789/0] [v2:192.168.13.171:3300/0,v1:192.168.13.171:6789/0] [v2:192.168.13.172:3300/0,v1:192.168.13.172:6789/0]  file                        6 J; O. R; ~, I4 l9 u6 L. O
mon_warn_on_pool_no_redundancy  false                                                                                                                                                        mon                         - H4 u; T9 a) K( y) Q/ y% _
no_config_file                  false                                                                                                                                                        override                    6 @7 _5 d4 l3 w- L4 p
osd_max_backfills               2                                                                                                                                                            override                    & t- B) ?& P# g0 n5 l. C* J2 V1 \
osd_recovery_max_active         6                                                                                                                                                            override                    " a) b+ e; x+ F3 [  @% _& `6 Z
rbd_default_features            61                                                                                                                                                           default                     , l. k/ u1 m; y* `, V4 }
setgroup                        ceph                                                                                                                                                         cmdline                     # v- T) C* t. N1 W1 L4 ~
setuser                         ceph                                                                                                                                                         cmdline         
3 Z" G8 p3 L+ ]! t9 b" f, ?2 c4 N; E

: q" x" M1 P# K* g; ~这个只是临时生效。重启集群后失效。
 楼主| 发表于 2023-1-9 09:45:47 | 显示全部楼层
ceph mgr module disable pg_autoscaler   关闭
 楼主| 发表于 2023-1-9 13:45:11 | 显示全部楼层
ceph config show osd.1 osd_recovery_max_active
- E- P# @: J. P2 j[root@ceph1 ~]# ceph config show osd.1 osd_recovery_max_active
, n+ [1 m1 ^* w* Z! d8 _5 l) V4
1 e7 S# p8 d& J- c# V
 楼主| 发表于 2023-1-10 15:04:01 | 显示全部楼层
To view the current active setting(s), on the node where the the OSD being checked is running execute for example:
0 ~& Z# v) Q( t5 e0 q
3 N& S* p$ m, e# @2 Sceph daemon osd.<insert_id> config get osd_max_backfills
0 p; ~7 Z( C: \2 M: v& r9 _( D( ]: P8 B( k4 W0 i! F6 |% y
To set back to default:
& a  f# S% F1 Lceph tell 'osd.*' injectargs --osd-max-backfills=1 --osd-recovery-max-active=3) R* C) k, ]. c% q

3 z" t& f  W3 {: H0 r/ }7 VWith SES 6, "ceph config set" can alternatively be used:
7 E3 Q  x7 t+ [' a% D& C
$ v1 L  P6 e# d" R  c# ]# b& K- j# vceph config set osd osd_max_backfills 2" z7 w: I9 z" R8 Z+ Q
ceph config set osd osd_recovery_max_active 3& ]6 ^1 m  S* s1 O3 w$ l) ]. y$ z
6 q+ A+ n! {7 e' x
To set back to default:! m, L& x- Z' _& @# ?
3 y9 a9 |8 F) \6 Q0 O
ceph config rm osd osd_recovery_max_active, X9 f/ U9 \$ b2 D
ceph config rm osd osd_max_backfills
. V. Q3 c# Y3 c1 f, P
3 ~  C6 `  W& eTo view the current settings:; f/ d( G4 |1 G( F5 _/ g& L

6 b) G3 {3 l# Q+ Hceph config show osd.<insert_id>; ^8 c/ I8 g: q% f1 x- l: t$ \

6 C5 N  s4 g3 d" l8 RRecovery can be monitored with "ceph -s".' {& w* E) g! H' h
0 D3 Q' U3 h3 A8 p
After increasing the settings, should any OSDs become unstable (restarting) or clients are negatively impacted by the additional recovery overhead then reduce the values or set them back to the defaults.
7 M; Y% k$ a  W- o9 j- H  x& m! v( W2 r. l$ g1 \
Once the cluster is finished with recovery and back in a HEALTH_OK state, set the values back to default.
 楼主| 发表于 2023-1-10 17:16:56 | 显示全部楼层
ceph tell 'osd.*' injectargs --osd-max-backfills=3 --osd-recovery-max-active=9    两者按照1:3的方式匹配
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 点击这里给我发消息

GMT+8, 2026-4-8 07:23 , Processed in 0.047442 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

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