Ceph Dashboard 可视化

本文介绍如何配置和使用Ceph Dashboard,包括安装、配置Dashboard,以及启用Object Gateway管理功能等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ceph Dashboard


Ceph 的监控可视化界面方案很多----grafana、Kraken。但是从Luminous开始,Ceph 提供了原生的Dashboard功能,通过Dashboard可以获取Ceph集群的各种基本状态信息。

mimic版  (nautilus版)  dashboard 安装。如果是  (nautilus版) 需要安装 ceph-mgr-dashboard 

这个ceph dashbord可以看 pool pg,然后集群的状态信息都可以看到,随着nautilus版本出来,功能更加丰富了,很多日常的工作都可以去上面做

 

1、配置Ceph Dashboard


这里查看mgr里面的模块开启和关闭状态

[root@cephnode01 ~]# ceph -s
  cluster:
    id:     406e0c23-755f-4378-bbc9-13548c4d3d64
    health: HEALTH_OK
 
  services:
    mon: 3 daemons, quorum cephnode01,cephnode02,cephnode03 (age 14m)
    mgr: cephnode03(active, since 14m), standbys: cephnode02, cephnode01
    mds:  3 up:standby
    osd: 3 osds: 3 up (since 14m), 3 in (since 2w)
    rgw: 1 daemon active (cephnode01)
 
  task status:
 
  data:
    pools:   4 pools, 128 pgs
    objects: 187 objects, 1.2 KiB
    usage:   3.0 GiB used, 12 GiB / 15 GiB avail
    pgs:     128 active+clean



[root@cephnode01 ~]# ceph mgr module ls | more
{
    "always_on_modules": [
        "balancer",
        "crash",
        "devicehealth",
        "orchestrator_cli",
        "progress",
        "rbd_support",
        "status",
        "volumes"
    ],
    "enabled_modules": [
        "iostat",
        "restful"
    ],

1、在每个mgr节点安装 

[root@cephnode01 ~]# yum install ceph-mgr-dashboard -y
[root@cephnode02 ~]# yum install ceph-mgr-dashboard -y
[root@cephnode03 ~]# yum install ceph-mgr-dashboard -y


[root@cephnode01 ~]# ceph mgr module ls | grep "dashboard" -a20
"name": "dashboard",
            "can_run": true,
            "error_string": "",
            "module_options": {
                "ALERTMANAGER_API_HOST": {
                    "name": "ALERTMANAGER_API_HOST",
                    "type": "str",
                    "level": "advanced",
                    "flags": 0,
                    "default_value": "",
                    "min": "",
                    "max": "",
                    "enum_allowed": [],
                    "desc": "",
                    "long_desc": "",
                    "tags": [],
                    "see_also": []
                },

2、开启mgr功能

[root@cephnode02 ~]# ceph mgr module enable dashboard

3、生成并安装自签名的证书

[root@cephnode01 ~]# ceph dashboard create-self-signed-cert 
Self-signed certificate created

4、创建一个dashboard登录用户名密码 

用户名test 密码123456
[root@cephnode01 ~]# ceph dashboard ac-user-create test  administrator -i ceph.txt 
{"username": "test", "lastUpdate": 1620636786, "name": null, "roles": ["administrator"], "password": "$2b$12$CjagieJjtXpt3ElcHs1VmOYx2XHkOuvYl1Ng9ra9Z5odeqH4CXY6G", "email": null}

[root@cephnode01 ~]# cat ceph.txt 
123456

5、禁用ssl,公司内部使用可以关闭

[root@cephnode01 ~]# ceph config set mgr mgr/dashboard/ssl false

6、查看服务访问方式

[root@cephnode01 ~]# ceph mgr services
{
    "dashboard": "https://cephnode03:8443/"
}

 

 2、修改默认配置命令



指定集群dashboard的访问端口
[root@cephnode01 ~]# ceph config set mgr  mgr/dashboard/server_port 7000

指定集群 dashboard的访问IP
[root@cephnode01 ~]#  ceph config set mgr mgr/dashboard/server_addr 192.168.179.104


[root@cephnode01 ~]# telnet  192.168.179.104 22
Trying 192.168.179.104...
Connected to 192.168.179.104.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.4
^C^C^C^C^C^C^C^C^C
Connection closed by foreign host.
[root@cephnode01 ~]# 
[root@cephnode01 ~]# telnet  192.168.179.104 7000
Trying 192.168.179.104...
telnet: connect to address 192.168.179.104: Connection refused

生效需要一点时间
[root@cephnode03 ~]# ceph mgr services
{
    "dashboard": "http://cephnode03:7000/"
}

 

 

 

3、开启Object Gateway管理功能


1、创建rgw用户

进来之后什么都看不到,是因为没有配置权限

2、提供Dashboard证书 

这里是去ceph里面创建用户,这个用户会生成两个key

[root@cephnode01 ~]# radosgw-admin user create --uid=user01 --display-name=user01 --system
{
    "user_id": "user01",
    "display_name": "user01",
    "email": "",
    "suspended": 0,
    "max_buckets": 1000,
    "subusers": [],
    "keys": [
        {
            "user": "user01",
            "access_key": "YN20C83EE5F83VE1PY31",
            "secret_key": "IStDC3Tq2BANS7EVwgY7iagFkmCp7AzgVeQc8Qiq"
        }
    ],
    "swift_keys": [],
    "caps": [],
    "op_mask": "read, write, delete",
    "system": "true",
    "default_placement": "",
    "default_storage_class": "",
    "placement_tags": [],
    "bucket_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    },
    "user_quota": {
        "enabled": false,
        "check_on_raw": false,
        "max_size": -1,
        "max_size_kb": 0,
        "max_objects": -1
    },
    "temp_url_keys": [],
    "type": "rgw",
    "mfa_ids": []
}

            "access_key": "YN20C83EE5F83VE1PY31",
            "secret_key": "IStDC3Tq2BANS7EVwgY7iagFkmCp7AzgVeQc8Qiq"

现在为dashboard这个接口提供这两个key去访问,那么就可以看到一些功能了

[root@cephnode01 ~]# echo YN20C83EE5F83VE1PY31 > access.key
[root@cephnode01 ~]# ceph dashboard set-rgw-api-access-key -i access.key 
Option RGW_API_ACCESS_KEY updated

[root@cephnode01 ~]# echo IStDC3Tq2BANS7EVwgY7iagFkmCp7AzgVeQc8Qiq > secret.key
[root@cephnode01 ~]# ceph dashboard set-rgw-api-secret-key -i secret.key 
Option RGW_API_SECRET_KEY updated

3、配置rgw主机名和端口

[root@cephnode01 ~]# netstat -tpln | grep 7480
tcp        0      0 0.0.0.0:7480            0.0.0.0:*               LISTEN      815/radosgw         
tcp6       0      0 :::7480                 :::*                    LISTEN      815/radosgw         
[root@cephnode01 ~]# ceph dashboard set-rgw-api-host 192.168.179.102
Option RGW_API_HOST updated

[root@cephnode01 ~]# ceph dashboard set-rgw-api-port 7480
Option RGW_API_PORT updated

4、刷新web页面 

 

 

 

 

 

 

 

### Ceph 单节点部署 Ceph 是一种分布式存储系统,支持对象、块和文件存储。尽管它设计用于多节点环境以实现高可用性和冗余,但在开发或测试环境中可以配置单节点部署。 以下是关于如何在单机上部署 Ceph 的说明: #### 安装依赖项 为了安装 Ceph,在 Linux 系统中需要先设置仓库并安装必要的软件包[^1]。 ```bash sudo apt update && sudo apt install ceph-common -y ``` #### 配置单节点集群 对于单节点部署,可以通过 `cephadm` 工具简化操作流程。此工具允许快速启动小型实验性集群。 ```bash curl --silent --remote-name https://github.com/ceph/ceph/raw/octopus/src/cephadm/cephadm chmod +x cephadm sudo ./cephadm bootstrap --single-host-defaults ``` 上述命令会初始化一个新的 Ceph 集群,并自动创建监控器 (monitors) 和管理器 (managers)。 #### 添加存储设备 完成初始引导后,需指定本地磁盘作为数据池的一部分。假设 `/dev/sdb` 可供使用,则运行以下脚本将其加入到 Ceph 中: ```bash sudo ./cephadm add-osd --data /dev/sdb ``` --- ### 图形化管理界面选项 虽然 Ceph 原生提供了基于 Web 的仪表板功能,但还有其他第三方 GUI 解决方案可供选择。 #### 使用内置 Dashboard 自版本 14 (`Nautilus`) 起,Ceph 自带了一个名为 **Dashboard** 的图形化接口。启用方法如下所示: ```bash sudo ceph mgr module enable dashboard sudo ceph dashboard create-self-signed-cert ``` 访问地址通常为 `https://<your-server-ip>:8443`,登录凭证可通过下面指令查看或者重设密码: ```bash sudo ceph dashboard set-login-credentials <username> <password> ``` #### 替代解决方案 - Rook-Ceph Operator UI Rook 是 Kubernetes 上的一个开源云原生存储编排引擎,能够自动化部署包括 Ceph 在内的多种存储服务。通过集成 Helm Chart 或者直接应用 YAML 文件定义资源描述符来构建可视化控制面板。 另外值得注意的是 Grafana 这类时间序列数据库插件也可以用来增强性能指标展示效果。 --- ### 总结 综上所述,无论是采用官方推荐的方式还是借助外部扩展组件,都可以轻松搭建起适合个人学习研究用途的小规模 Ceph 实验室环境及其配套的用户交互体验优化措施。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值