[root@compute03 images]# ceph daemon osd.4 config show |grep "mon_max_pg_per_osd" "mon_max_pg_per_osd": "250",
% j" u1 Z3 D4 p) {
这是因为集群 OSD 数量较少,测试过程中建立了多个存储池,每个存储池都要建立一些 PGs 。而目前 Ceph 配置的默认值是每 OSD 上最多有 300 个 PGs 。在测试环境中,为了快速解决这个问题,可以调大集群的关于此选项的告警阀值。方法如下: 在 monitor 节点的 ceph.conf 配置文件中添加: [global].......4 i) {) z7 j, n7 H {- K& b, e
mon_pg_warn_max_per_osd = 1000
1 T7 f/ @0 C6 J: B v7 X0 _
& S/ V5 x- C4 w: r3 D+ m v( t9 L/ M8 e; X( Z6 x3 y- s- m
然后重启 monitor 进程。 3 F* J" h" D3 J8 K. l( X
或者直接用 tell 命令在运行时更改参数的值而不用重启服务: ceph tell mon.* injectargs '--mon_pg_warn_max_per_osd 1000'
5 J3 y4 t- D7 t* m+ {2 S( z$ |- ~# V
& K2 ]! P8 }- E6 \/ y! l而另一种情况, too few PGs per OSD (16 < min 20) 这样的告警信息则往往出现在集群刚刚建立起来,除了默认的 rbd 存储池,还没建立自己的存储池,再加上 OSD 个数较多,就会出现这个提示信息。这通常不是什么问题,也无需修改配置项,在建立了自己的存储池后,这个告警信息就会消失。 * w: I: D. r. F
2 m p+ f: G0 G6 r |