手动部署 ceph mgr (luminous 版)

时间:2022-12-16 12:51:04

目标

使用 ceph luminous 版新特性
手动部署 mgr
完成 ceph 监控

新建用户

创建用户 openstack 用于 MGR 监控

[root@cephsvr-128040 ceph]# ceph auth get-or-create mgr.openstack mon 'allow *' osd 'allow *' mds 'allow *'
[mgr.openstack]
        key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxugvXkLfgauLA==

修改用户

假如用户已经存在, 用过下面方法进行权限修改

[root@cephsvr-128040 ceph]# ceph auth caps mgr.openstack mon 'allow *' osd 'allow *' mds 'allow *'
[mgr.openstack]
        key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxugvXkLfgauLA==

删除用户

提示

删除用户方法

ceph auth del mgr.openstack

导出密钥

需要吧之前创建的用户密码存放至对应位置

[root@cephsvr-128040 ceph]# mkdir /var/lib/ceph/mgr/ceph-openstack
[root@cephsvr-128040 ceph]# ceph auth get mgr.openstack -o  /var/lib/ceph/mgr/ceph-openstack/keyring
exported keyring for mgr.openstack

启动 mgr

[root@cephsvr-128040 ceph]# ceph-mgr -i openstack

监控状态

[root@cephsvr-128040 ceph]# ceph -s
  cluster:
    id:     xxxxxxx-5d4d-4d3a-xxxx-04e73eff4ccd
    health: HEALTH_OK

  services:
    mon: 3 daemons, quorum cephsvr-128040,cephsvr-128214,cephsvr-128215
    mgr: openstack(active)
    osd: 36 osds: 36 up, 36 in

  data:
    pools:   1 pools, 2048 pgs
    objects: 383 objects, 1496 MB
    usage:   8476 MB used, 196 TB / 196 TB avail
    pgs:     2048 active+clean

总结

当 mgr 服务被激活之后, service 中 mgr 会显示 mgr-$name(active)
data 部分信息将变得可用

dashbroad

luminous 版本新特色
由 mgr 提供的一个 web 界面
只能够用于监控显示, 无法进行信息更改

手动配置方法

[root@cephsvr-128040 ceph]# ceph mgr module enable dashboard
[root@cephsvr-128040 ceph]# ceph config-key set mgr/dashboard/openstack/server_addr xx.199.128.40
set mgr/dashboard/openstack/server_addr
[root@cephsvr-128040 ceph]# ceph config-key set mgr/dashboard/openstack/server_port 8088
set mgr/dashboard/openstack/server_port

配置文件修改

/etc/ceph/ceph.conf

[mgr]
mgr modules = dashboard

服务管理

复制 systemd 配置

[root@cephsvr-128040 ceph]# cp /usr/lib/systemd/system/ceph-mgr@.service  /usr/lib/systemd/system/ceph-mgr@openstack.service

注:

这里 mgr 服务命名需要跟 ceph -s 中 mgr 定义的命名匹配

[root@cephsvr-128040 ceph]# systemctl status  ceph-mgr@openstack.service
● ceph-mgr@openstack.service - Ceph cluster manager daemon
   Loaded: loaded (/usr/lib/systemd/system/ceph-mgr@openstack.service; disabled; vendor preset: disabled)
   Active: inactive (dead)

[root@cephsvr-128040 ceph]# systemctl restart  ceph-mgr@openstack.service

[root@cephsvr-128040 ceph]# systemctl status  ceph-mgr@openstack.service
● ceph-mgr@openstack.service - Ceph cluster manager daemon
   Loaded: loaded (/usr/lib/systemd/system/ceph-mgr@openstack.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2017-11-21 12:51:45 CST; 1s ago
 Main PID: 33521 (ceph-mgr)
   CGroup: /system.slice/system-ceph\x2dmgr.slice/ceph-mgr@openstack.service
           └─33521 /usr/bin/ceph-mgr -f --cluster ceph --id openstack --setuser ceph --setgroup ceph

11月 21 12:51:45 cephsvr-128040.vclound.com systemd[1]: Started Ceph cluster manager daemon.
11月 21 12:51:45 cephsvr-128040.vclound.com systemd[1]: Starting Ceph cluster manager daemon...
11月 21 12:51:45 cephsvr-128040.vclound.com ceph-mgr[33521]: [21/Nov/2017:12:51:45] ENGINE Bus STARTING
11月 21 12:51:45 cephsvr-128040.vclound.com ceph-mgr[33521]: [21/Nov/2017:12:51:45] ENGINE Started monitor thread '_TimeoutMonitor'.
11月 21 12:51:45 cephsvr-128040.vclound.com ceph-mgr[33521]: [21/Nov/2017:12:51:45] ENGINE Serving on xx.199.128.40:8088
11月 21 12:51:45 cephsvr-128040.vclound.com ceph-mgr[33521]: [21/Nov/2017:12:51:45] ENGINE Bus STARTED

关于高可用

ceph-mgr 对于当前 ceph 版本十分重要
主要用于管理 pg map 作用
当 ceph-mgr 发生故障, 相当于整个 ceph 集群都会出现严重问题
建议在每个 mon 中都创建独立的 ceph-mgr (至少 3 个 CEPH MON 节点)
只需要在每个 mon 节点参考上面方法进行创建即可 (注, 每个 mgr 需要不同的独立的命名)

参考

Every 2.0s: ceph -s                                                                                                                                  Thu Jan 18 11:16:01 2018

  cluster:
    id:     xxxxxxxx-ff22-4439-xxxx-f9d5d2a4faed
    health: HEALTH_OK

  services:
    mon: 3 daemons, quorum cephsvr-208217,cephsvr-208218,cephsvr-208219
    mgr: cephsvr-208218(active), standbys: cephsvr-208219, cephsvr-208217
    osd: 150 osds: 150 up, 150 in

  data:
    pools:   0 pools, 0 pgs
    objects: 0 objects, 0 bytes
    usage:   18374 MB used, 818 TB / 818 TB avail
    pgs:

其中一个为 active, 另外另个为 standby
当 active 状态的 ceph-mgr 出现故障, standby ceph-mgr 会自动变成 acitve,

注意:

如上所述, 当使用了三个 ceph-mgr 后, dashbroad 只可用于 active ceph-mgr 中

访问 dashbroad

参考 手动配置方法 配置定义了 dashbroad 访问 ip 与端口 (默认 7000)

http://xx.199.128.40:8088

参考 dashbroad 中的 screenshot
health
手动部署 ceph mgr (luminous 版)

server
手动部署 ceph mgr (luminous 版)

osd
手动部署 ceph mgr (luminous 版)

pool files
手动部署 ceph mgr (luminous 版)