linux系统类kscope,InkScope介绍 - linux_hunter的个人页面 - OSCHINA - 中文开源技术交流社区...

InkScope是一套Ceph管理和监控的可视化平台,InkScope基于Ceph提供的API来访问Ceph集群,InkScope还使用mongoDB来保存实时和历史数据。

InkScope架构图如下图所示:

61ca0fa37155bbe8c18d80decfbd9d0e.png

其中:

ceph-rest-api:Ceph提供的restfulAPI接口,inkscope通过ceph-rest-api接口访问和操作Ceph集群;

cephprobe:用于获取Ceph集群的相关信息;

sysprobe:用于获取Ceph运行的物理节点的相关信息,如:CPU、内存、网络以及磁盘使用量等相关信息;

mongoDB:用于保存又cephprobe和sysprobe获取的实时和历史数据集合,该数据集合由inkscope web界面展示部分读取调用;

inkscope-admviz:inkscope对外提供web服务。用户通过web浏览器向inkscope-admviz发送restfulAPI格式的读写请求,之后inkscope-admviz通过访问mongoDB数据库或访问ceph-rest-api接口来完成用户的读写请求,之后将读写请求的结果返回给客户浏览器;

InkScope环境搭建。

硬件环境:

物理设备采用两台华为服务器,其中每台服务器的CPU是Intel Xeon E5-2650 v2,内存128GB,硬盘4块600GB(其中一块硬盘用于做系统,另外三块硬盘用作存储);

软件环境:

操作系统采用ubuntu14.04.3 Server edition;

Ceph集群采用Infernalis V9.2.0,其中采用1个monitor节点和6个OSD节点;

InkScope采用最新的V1.3版本。由于硬件环境有限,因此将InkScope的inkscop-admviz/mongoDB/ceph-rest-api/cephprobe/sysprobe都安装在monitor所在的节点上,另外一个节点只安装sysprobe;

InkScope环境搭建步骤如下:

安装mongoDB。

添加InkScope的Debian软件源,即:在/etc/apt/sources.list.d/目录中添加inkscope.list文件,该文件的内容是:

之后更新ubuntu14.04软件源,即:#apt-get update;

在monitor所在的节点上安装InkScope服务,即:

#apt-get install inkscope-admviz inkscope-cephrestapi

配置InkScope服务。

1)更新InkScope配置文件,即:更新/opt/inkscope/etc/inkscope.conf文件。在该文件中填写mongoDB/ceph-rest-api/radosgw相关内容;

2)配置ceph-rest-api服务。ceph-rest-api的配置文件位于/etc/apache2/sites-available/inkScope.conf。

3)配置ceph-rest-api为WSGI应用。

A)创建一个ceph用户,即:#ceph auth get-or-create client.restapi mds 'allow' osd 'allow *' mon 'allow *' > /etc/ceph/ceph.client.restapi.keyring

B)将创建的用户添加到ceph配置文件中,即:将如下内容添加到/etc/ceph/ceph.conf文件中。

[client.restapi]

log_file = /dev/null

keyring = /etc/ceph/ceph.client.restapi.keyring

配置apache。

1)增加apache监听端口8080,即:将如下内容添加到/etc/apache/ports.conf文件中。

Listen 8080

2)使能apache相关模块。

#a2enmod rewrite

3)使用Python pip安装flask和json,即:

#pip install flask-login simple-json

4)使能inkscope。

#a2ensite inkScope

5)重新启动Apache服务。

#service apache2 restart

安装sysprobe。

1)安装sysprobe。

#apt-get install inkscope-sysprobe

2)安装其他工具。

#apt-get install lshw sysstat

3)安装Python模块psutil。

#pip install psutil==2.1.3

4)启动sysprobe。

#/etc/init.d/sysprobe start

安装cephprobe。

1)安装cephprobe。

#apt-get install inkscope-cephprobe

2)安装Python模块psutil。

#pip install psutil==2.1.3

3)启动cephprobe。

#/etc/init.d/cephprobe start

1004c8423cd57b00823798cbbbe68ccd.png

InkScope的优点。

架构清晰明了,易于扩展和定制化;

与Ceph集群的接口简单明了,即:直接通过访问ceph-rest-api接口来访问ceph集群。方便接口的扩展和定制化;

InkScope前端采用Angular JS,后端采用Python,层次化清晰明了;

InkScope完全开源且采用Apache V2开源许可证;

InkScope目前的问题。

InkScope访问blockdevices时出现Internal Error 500的错误信息,原因有可能是我在配置ceph-rest-api时有某些地方配置不正确导致的;

InkScope无法正常显示OSD节点磁盘的使用量信息,通过restfulAPI能够获取到json格式的磁盘使用量信息,但是无法在web页面上显示,原因有可能是读取到的数据没有正确的写入到mongoDB;

InkScope总结。

后续我会持续跟踪上述两个问题并找到解决方案;

InkScope整体架构及其接口设计合理并且易于扩展和定制化,非常适合企业级产品的原型;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值