Ceph Prometheus监控

2024-07-04 92 0

我这里使用prometheus监控ceph并配置alertmanager告警

MGR

Manager: 管理器
Ceph管理器守护程序(Cephmgr)负责跟踪运行时指标和Ceph群集的当前状态,包括存储利用率、当前性能指标和系统负载。Ceph管理器守护进程还托管基于python的模块,以管理和公开Ceph集群信息,包括基于web的Ceph仪表板和Restful APT。高可用性通常需要至少两个管理器。

查看集群状态

[root@ceph03 ~]# ceph -s
  cluster:
    id:     ed040fb0-fa20-456a-a9f0-c9a96cdf089e
    health: HEALTH_OK

  services:
    mon: 3 daemons, quorum ceph01,ceph02,ceph03 (age 47h)
    mgr: ceph01(active, since 47h), standbys: ceph02, ceph03
    mds: cephfs-sunday:1 {0=ceph01=up:active} 2 up:standby
    osd: 3 osds: 3 up (since 10d), 3 in (since 10d)
    rgw: 1 daemon active (ceph01)

  task status:

  data:
    pools:   12 pools, 672 pgs
    objects: 339 objects, 401 MiB
    usage:   4.2 GiB used, 296 GiB / 300 GiB avail
    pgs:     672 active+clean

新版本需要安装 dashboard,而且必须安装在 mgr 节点
这里使用ceph03节点提供服务,所以在此节点开启dashboard

yum install -y ceph-mgr-dashboard

检查开启dashboard模块(默认没有开启)

# 已经开启的
[root@ceph03 ~]# ceph mgr module ls | grep dashboard
        "dashboard",

# 若没有开启dashboard, 则使用下面命令开启
[root@ceph03 ~]# ceph mgr module enable dashboard
# 提示报错可以使用
[root@ceph03 ~]# ceph mgr module enable dashboard --force

配置mgr-dashboard

# 设置监听地址
ceph config set mgr mgr/dashboard/server_addr 0.0.0.0
# 设置端口号
ceph config set mgr mgr/dashboard/server_port 7000
# 关闭ssl验证
ceph config set mgr mgr/dashboard/ssl false

创建管理员用户

最新的ceph dashboard不支持直接在命令行里面创建用户的密码,所以需要.先创建一个包含用户密码的文件


cat >/opt/secretkey<<EOF
admin123
EOF

使用该文本作为密钥

ceph dashboard ac-user-create admin administrator -i /opt/secretkey


```sh
# 重启服务
[root@ceph03 ceph]# systemctl restart ceph-mgr.target

[root@ceph03 ceph]# ss -utnlp | grep 7000
tcp    LISTEN     0      5         *:7000                  *:*                   users:(("ceph-mgr",pid=23920,fd=28))
[root@ceph03 ~]# ceph mgr services
{
    "dashboard": "http://ceph03:7000/"
}

访问ceph mgr ip:7000 端口
用户名:admin 密码:admin123登录
http://ceph-mgr节点:7000/#/login?returnUrl=%2Fdashboard

image.png

mgr-dashboard可以设置多个节点,然后nginx upstream代理
若没有配置外部高可用负载,ceph mgr dashboard 挂了 也会自动切到其他节点,只不过有延迟,没那么快 差不多要1分钟

# 这里停用ceph01的mgr服务 等一会儿dashboard会到其他节点
[root@ceph01 ceph]# systemctl stop ceph-mgr.target
[root@ceph03 ~]# ceph mgr services
{
    "dashboard": "http://ceph01:7000/"
}
[root@ceph03 ~]# ceph mgr services
{
    "dashboard": "http://ceph03:7000/"
}

dashboard 高可用

http {
    upstream ceph_dashboard_cluster {
        server 192.168.77.41:7000;
        server 192.168.77.42:7000;
        server 192.168.77.43:7000;
    }

    server {
        listen 80;
        server_name ceph-dashboard.sundayhk.com;

        location / {
            proxy_pass https://ceph_dashboard_cluster;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}
# vim /etc/ceph/ceph.conf
[dashboard] server_name = new-dashboard.example.com

ceph mgr module disable dashboard
ceph mgr module enable dashboard
或直接使用
systemctl restart ceph-mgr.target

开启Prometheus metric模块


[root@ceph01 ~]# ceph mgr module enable prometheus

[root@ceph01 ceph]# lsof -i:9283
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
ceph-mgr 25590 ceph   29u  IPv6 244846      0t0  TCP *:callwaveiam (LISTEN)```

相关文章

Ceph RGW及S3接口操作
CephFS 文件系统
Ceph RBD
Ceph osd 命令
Ceph 限额配置
Ceph RBD 删除不了处理过程

发布评论