开源ceph管理平台inkscope部署手册
一.前情提要
关于inkscope就不做过多介绍了,就是ceph的一个开源管理控制平台,跟ceph官方的calamary以及intel的VSM差不多一类,只是各自侧重点不一样。
相对而言,因为inkscope使用的是ceph自带的restapi,因此是比较轻量级的,ceph集群相关的信息直接从API调,系统层面的信息抓取是通过本地一个代理程序抓取,然后写入inkscope所在节点的mongodb里。
1.1 官方地址
github-inkscope
inkscope角色介绍
inkscope主要的角色有三种: 1. web管理控制台:这个角色需要安装flask和mongodb以提供接口,方便前端界面angular-js调用 2. cephprobe:这个一般是安装在mon节点,整个集群安装一个即可,主要是获取ceph的一些信息将其写入mongodb中;使用5000端口提供服务 3. sysprobe:这个主要是获取集群所有节点的硬件监控信息,如CPU、内存、硬盘灯,集群内所有节点都需要安装。 4. radosgw: 是ceph对外提供对象存储服务的服务,本例中用于对象存储相关的管理,会使用80端口提供http服务;
1.2 inkscope-packaging
最新的版本中,已经提供了ubuntu下的deb安装包,项目地址,deb包及作用介绍如下:
- inkscope-common : 包含inkscope的默认配置文件以及其他进程(cephprobe,sysprobe)启动所需的依赖文件,所有相关节点都需要安装
- inkscope-admviz : 包含inkscope的web控制台文件,含接口和界面,仅需要安装一个,该节点上同时需要按章flask和mongodb
- inkscope-cephrestapi: 用于安装启动 ceph rest api 的脚本,仅需要安装在提供api接口的节点上
- inkscope-cephprobe: 用于安装启动 cephprobe 的脚本(整个集群只需要一个)
- inkscope-sysprobe : 安装用于所有mon和osd的sysprobe 所需要脚本
二.测试环境
本次测试ceph集群共有三个节点:ceph1(10.1.35.85),ceph2(10.1.35.86),ceph3(10.1.35.87);
三个节点都是mon节点,也都是osd节点,每个节点3个osd。
根据前面的角色以及安装包的介绍,三个节点的分配及所需安装包如下(inkscope-common包所有节点都需要因此省略):
角色 | 分配节点 | 需要安装的inkscope的包 |
---|---|---|
web管理控制台 | ceph3 | inkscope-admviz |
sysprobe | ceph1,ceph2,ceph3 | inkscope-sysprobe |
cephprobe | ceph2 | inkscope-cephprobe,inkscope-cephrestapi |
radosgw | ceph1 | 无需inkscope的包 |
三.安装
3.1 安装web管理控制台
3.1.1 按章软件包和依赖
该节点使用php以及wsgi实现界面,本地接收其他节点传过来的数据存入本地mongodb,同时会调用rados命令,
又使用flask框架构建接口,因此需要使用下面的命令安装依赖
apt-get install python-pip apache2 libapache2-mod-wsgi mongodb python-ceph
pip install flask requests simplejson -i http://pypi.mirrors.ustc.edu.cn/simple #使用国内pip源安装
dpkg -i inkscope-admviz_1.2.0-0.deb inkscope-common_1.2.0-0.deb inkscope-sysprobe_1.2.0-0.deb
3.1.2 配置apache2服务
安装完nkscope-admviz后默认虚拟主机配置文件位于/etc/httpd/conf.d/inkScope.conf,将其拷贝到/etc/apache2/sites-available 中。 修改32行为下面这句, 注释掉 33行
ProxyPass /ceph-rest-api/ http://10.1.35.86:5000/api/v0.1/
#ProxyPass /shell http://$IP:4200/
这里将 rest-api_srv 修改为ceph2的IP,规划中,ceph2的角色是cephprobe。
同时将25和35行的ErrorLog和CustomLog的值里面的httpd修改为apache2,因为apache2的工作路径已经换了
修改 /etc/apache2/ports.conf 文件,增加下面
Listen 8080
NameVirtualHost *:8080
完整inkScope.conf文件如下:
root@ceph3:/etc/apache2/sites-available# cat inkScope.conf
<VirtualHost *:8080>ServerName localhostServerAdmin webmaster@localhostDocumentRoot /var/www/inkscope<Directory "/var/www/inkscope">Options AllAllowOverride All</Directory>ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/<Directory "/usr/lib/cgi-bin">AllowOverride NoneOptions +ExecCGI -MultiViews +SymLinksIfOwnerMatchOrder allow,denyAllow from all</Directory>WSGIScriptAlias /inkscopeCtrl /var/www/inkscope/inkscopeCtrl/inkscopeCtrl.wsgi<Directory "/var/www/inkscope/inkScopeCtrl">Order allow,denyAllow from all</Directory>ErrorLog /var/log/apache2/error_inkscope.log# Possible values include: debug, info, notice, warn, error, crit,# alert, emerg.LogLevel warnProxyRequests Off # we don't want a "forward proxy", but only a "Reverse proxy"ProxyPass /ceph-rest-api/ http://10.1.35.86:5000/api/v0.1/ #ProxyPass /shell http://$IP:4200/CustomLog /var/log/apache2/access.log combined
</VirtualHost>
运行下面的命令,启用apache2的proxy模块和inkScope.conf虚拟主机
sudo a2enmod proxy_http
sudo a2ensite inkScope.conf
sudo service apache2 restart
现在打开浏览器访问 10.1.35.87:8080/ 应该就可以看到首页,只是暂时没有ceph集群的相关数据而已。
3.1.3 开启mongodb远程连接
修改 /etc/mongodb.conf ,将bind_ip 修改为 0.0.0.0,取消 port = 27017 依据前面的注释,如下:
bind_ip = 0.0.0.0
port = 27017
3.2 安装cephprobe
在cephprobe节点主要是提供ceph-rest-api并抓取ceph的信息存入mongodb中。 所需软件包及依赖安装如下:
apt-get install python-dev
pip install pymongo psutil -i http://pypi.mirrors.ustc.edu.cn/simple
dpkg -i inkscope-common_1.2.0-0.deb inkscope-sysprobe_1.2.0-0.deb inkscope-cephrestapi_1.2.0-0.deb inkscope-cephprobe_1.2.0-0.deb
启动ceph-rest-api服务: /etc/init.d/ceph-rest-api start
3.3 radosgw服务配置
在ceph1提供radosgw服务,具体radosgw的安装在这里不做详述,请参见ceph官方文档或者内部手册。 这里需要新建一个管理用户,并赋予相关权限,以便在界面上直接操作radosgw。
radosgw-admin user create --uid=inkscope --display-name="Inkscope admin" \--access-key=accesskey --secret=secretkey \--caps="users=*;metadata=*;buckets=*"
这里sccess和secret的具体的值可以根据喜好自行修改。
3.4安装sysprobe
在其他没有承担特殊任务的节点上安装sysprobe
apt-get install python-dev
pip install pymongo psutil -i http://pypi.mirrors.ustc.edu.cn/simple
dpkg -i inkscope-common_1.2.0-0.deb inkscope-sysprobe_1.2.0-0.deb
3.5修改inkscope配置文件并启动服务
inkscope的配置文件就一个,位于 /opt/inkscope/etc/inkscope.conf ,
这里面需要修改的主要有: 1. ceph_rest_api:在本例中即为ceph2的ip 2. mongodb_host:即为ceph3所在节点,管理节点 3. radosgw_url:即为ceph1所在节点 4. radosgw_key和radosgw_secret:在ceph1上新建管理用户时指定的两个key
最终版如下:
{"ceph_conf": "/etc/ceph/ceph.conf","ceph_rest_api": "10.1.35.86:5000","mongodb_host" : "10.1.35.87","ceph_rest_api_subfolder": "","mongodb_set" : "mongodb0:27017,mongodb1:27017,mongodb2:27017","mongodb_replicaSet" : "replmongo0","mongodb_read_preference" : "ReadPreference.SECONDARY_PREFERRED","mongodb_port" : 27017,"mongodb_user":"ceph","mongodb_passwd":"monpassword","is_mongo_authenticate" : 0,"is_mongo_replicat" : 0,"cluster": "ceph","status_refresh": 3,"osd_dump_refresh": 3,"pg_dump_refresh": 60,"crushmap_refresh": 60,"df_refresh": 60,"cluster_window": 1200,"osd_window": 1200,"pool_window": 1200,"mem_refresh": 60,"swap_refresh": 600,"disk_refresh": 60,"partition_refresh": 60,"cpu_refresh": 30,"net_refresh": 30,"mem_window": 1200,"swap_window": 3600,"disk_window": 1200,"partition_window": 1200,"cpu_window": 1200,"net_window": 1200,"radosgw_url": "http://10.1.35.85:80","radosgw_admin": "admin","radosgw_key": "ainkscope","radosgw_secret": "sinkscope"
}
将该文件拷贝到所有节点的/opt/inkscope/etc/ 目录中,然后重启对应服务:
/etc/init.d/sysprobe start
/etc/init.d/cephprobe start
/etc/init.d/ceph-rest-api start
对应节点上启动对用服务。
四.安装web console
如果你是ubuntu14.04,直接安装:
sudo apt-get install shellinabox
如果不是,点击这里下载deb包安装。
或者点击这里下载其他对应发行版的包。
修改配置文件, /etc/default/shellinabox :
SHELLINABOX_ARGS="--no-beep -t"
不适用SSL协议,然后重启服务
service shellinabox restart
修改apache2虚拟主机配置文件,添加代理 /etc/apache2/site-available/inkScope.conf
在 ProxyPass /ceph-rest-api/ ... 这一行后添加下面的:
ProxyPass /shell http://<hostname>:4200/
这里的 hostname 就是安装shellinabox的主机地址
重启apache2
service apache2 restart
注意:貌似需要谷歌浏览器,否则输入没反应。
开源ceph管理平台inkscope部署手册相关推荐
- 海康iSecure Center 综合安防管理平台安装部署教程 - CentOS系统
准备环境: 1.海康CentOS系统 2.iSecure Center 综合安防管理平台 - Linux版-安装包 3.激活授权 4.一个可用IP地址 注意事项:海康iSecure Center 综合 ...
- Ceph管理平台Calamari的架构与功能分析
alamari项目开始于2013年夏天,创立它的初衷是开发一个Ceph管理平台, Calamari对外提供了十分漂亮的web管理和监控界面,以及一套改进的REST API接口(不同于Ceph自身的RE ...
- 九州云重磅推出基于Rocky版本全新开源云管理平台
10月10日,以"拳拳匠心 赋能未来"为主题的九州云全新开源云管理平台 Animbus7.0 线上发布会正式拉开序幕.九州云CEO张淳.九州云COO王忠伟.九州云创始人&副 ...
- 云管理平台:9大开源云管理平台(CMP)
文章目录 一.什么是CMP? 二.云管理平台的工作原理 三.9大开源云管理平台 1.Apache CloudStack 2.OpenStack 3.ManageIQ 4.Cloudify 5.Mist ...
- BAT都在使用的开源接口管理平台,你用了吗?
作者:Anoyi 原文:https://www.jianshu.com/p/a97d2efb23c5 介绍 给大家推荐一个开源接口管理平台YApi,众多互联网大厂都在使用 YApi 的一些客户:百度, ...
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(2)
继上一篇kvm虚拟化管理平台WebVirtMgr部署-完整记录(1),接下来说说WebVirtMgr的日常配置:添加宿主机,创建虚机,磁盘扩容,快照等 具体操作记录如下: 一.配置宿主机 1.登录We ...
- 计算机公共教学平台 用户登录,天空教室计算机共课学习管理平台教师操作手册.doc...
天空教室计算机共课学习管理平台教师操作手册 天空教室2012计算机公共课学习管理平台教师操作手册 文档编号 DOCUMENT NUMBER:2012-6-2 文件类型 TYPE OF DOCUMENT ...
- ceph存储 Ceph管理平台Calamari的架构与功能分析
安装 Calamari推荐使用vagrant + virtualbox的方式来build安装包,然后在对应的操作系统中进行安装,具体的安装过程请参照Ceph Calamari : step-by-st ...
- 云原生爱好者周刊:mist.io 开源多云管理平台
开源项目推荐 Mist Mist 是一个开源的多云管理平台,它提供了跨云和内部基础设施的可观测性,以及生命周期管理能力.同时还提供了一些功能更强大的商业组件. rga rga 是一个类似于 grep ...
最新文章
- Redis 缓存设计原则
- C++容器(三):pair类型
- Web安全实战训练营
- enterpriseTECH Dec 10
- Delphi使用Zlib
- 【做题记录】统计区间(哈希/扫描线)
- l2-004 这是二叉搜索树吗?_MySQL索引为何选择B+树
- 项目管理系列文章——关于软件工程在软件整个生命周期的位置
- 计算机桌面变小了是怎么回事啊,电脑桌面整体变小了要怎么调回来的
- 逻辑教育大厂必备IOS面试突击班
- ROS位置导航基础之坐标变换
- 在vscode拉取代码时would clobber existing tag
- 电脑常见的故障和解决办法
- 互联网商业模式O2O、C2C、B2B、B2C等介绍
- ubuntu14.04安装nvidia-GTK-1060驱动后黑屏
- umi首屏加载速度优化
- 文字识别(输入为自然场景中的图像)
- uoni扫地机器人好用吗_由利Uoni扫地机器人V980 MAX好用吗?详细测评告诉你
- 多径效应、符号内干扰、符号间干扰ISI、ICI
- 为何说网红营销时代是微商城与公众号对接趋势?
热门文章
- 如何为Keras中的深度学习模型建立Checkpoint
- ASP.NET Core Web Razor Pages系列教程八: 添加验证
- PAT甲级(Advanced Level)真题-- 1062	To Buy or Not to Buy
- qu.la网站上的小说爬取
- mysql 定义class_MySQL数据库类的定义
- 机器人 瓷砖墙面清洗_瓷砖铺贴注意事项有哪些?
- RabbitMQ的集群模式
- linux 用root安装mysql数据库_Linux上安装Mysql及简单的使用详解
- find name 模糊匹配_Linux的文件搜索命令(locate ,find,grep,find命令和)
- 智能角阀中的电子芯片_电子科技大学胡维昊教授:人工智能在可再生能源系统中的应用...