Board logo

标题: ceph监控仪表盘(4) [打印本页]

作者: look_w    时间: 2019-5-16 20:05     标题: ceph监控仪表盘(4)

可能遇到的报错

/kraken/krakendash/src/rgwadmin/rgwadmin/rgw.py in <module>, line 3
/usr/local/bin/python


原因是python3和python2的差异
解决方法:

sudo vi  /kraken/krakendash/src/rgwadmin/rgwadmin/rgw.py
from StringIO import StringIO
修改成
from io import StringIO



可能遇到问题

AttributeError: module 'string' has no attribute 'letters'



原因是python3和python2的差异
解决方法

field = string.letters + string.digits
修改为
field = string.ascii_letters + string.digits


ceph-dash工具

ceph-dash是另一个ceph集群的免费开源仪表板/监控API,设计目标是以一个尽可能简单的方法通过RESTful JSON API以及Web GUI来提供一个Ceph集群整体健康状况的监控。这是一个轻量级的应用程序,它没有任何对ceph-rest-api的依赖。它是一个纯Python wsgi应用程序,它通过librados直接和集群通信。目前,ceph-dash提供一个干净且简单的Web GUI,它能够显示ceph集群的以下信息。
整体集群的状态和详细的问题描述。
支持多个Mon,支持每个MON的状态。
OSD状态包含处于in、out和不健康状态的OSD数。
可视化的存储容量图。
实时吞吐量,包括写速度、读数度和每秒操作数。
可视化的PG状态图
集群恢复状态
除此之外,ceph-dash还提供了REST端点来生成包含集群所有信息的JSON格式的数据,这可进一步用于其他创造性的方式。

github地址
https://github.com/Crapworks/ceph-dash
部署ceph-dash

ceph-dash工具必须安装在有权限访问Ceph集群的节点上。因为它并不需要多少资源,所以可以制定任意一个MON节点来安装它。

为ceph-dash新建一个目录,并获取代码。

mkdir /ceph-dash
cd /ceph-dash
git clone https://github.com/Crapworks/ceph-dash.git



安装python-pip

yum install python-pip


安装Jinja2

easy_install Jinja2

启动

cd /ceph-dash/ceph-dash
./ceph-dash.py


可能遇到的问题

  File "/ceph-dash/ceph-dash/app/__init__.py", line 9, in <module>
    from flask import Flask
ImportError: No module named flask


解决方式:

pip list
#如果列表没有flask
pip install flask


可能遇到的问题

Traceback (most recent call last):
  File "/usr/bin/ceph", line 67, in <module>
    import rados
ImportError: No module named rados



这是因为ceph是在老版本的python安装的,切换默认的python版本后,新版本中没有相关的库。

解决方式
查找rados组件在哪

[root@ceph1 ceph-dash]# find /* -name 'rados*'
/etc/bash_completion.d/rados
/usr/lib64/rados-classes
/usr/share/man/man8/rados.8.gz
/usr/bin/rados
/usr/lib/python2.6/site-packages/rados.pyc
/usr/lib/python2.6/site-packages/rados.pyo
/usr/lib/python2.6/site-packages/rados.py
/var/log/radosgw
[root@ceph1 ceph-dash]#



把相关的文件复制到现用的python2.7的site-packages下

cp /usr/lib/python2.6/site-packages/rados* /usr/local/lib/python2.7/site-packages/


可能遇到的问题

Traceback (most recent call last):
  File "/usr/bin/ceph", line 75, in <module>
    from ceph_argparse import \
ImportError: No module named ceph_argparse


解决方式
查找rados组件在哪

[root@ceph1 ceph-dash]# find /* -name 'ceph_argparse*'
/usr/lib/python2.6/site-packages/ceph_argparse.py
/usr/lib/python2.6/site-packages/ceph_argparse.pyc
/usr/lib/python2.6/site-packages/ceph_argparse.pyo
[root@ceph1 ceph-dash]#



把相关的文件复制到现用的python2.7的site-packages下

cp /usr/lib/python2.6/site-packages/ceph_argparse* /usr/local/lib/python2.7/site-packages/

  

浏览器打开:

http://192.168.199.81:5000




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0