centos7部署calamari

   alamari项目开始于2013年夏天,创立它的初衷是开发一个Ceph管理平台, Calamari对外提供了十分漂亮的web管理和监控界面,以及一套改进的REST API接口(不同于Ceph自身的REST API),在一定程度上简化了Ceph的管理。calamari不支持 jewel版本的,是因为接口了有了一些变化,在提出这个问题后,作者给出了回答,说肯定会支持的,并且做了一点小的改动,就可以支持了,这个作者merge了到了github的一些分支当中,但是还没有merge到最新的1.4的分支合master分支当中,这个可能是因为1.4还在做一些功能的开发。

机器列表
calamari服务器:
192.168.54.100
ceph集群:
192.168.130.142
192.168.130.143
192.168.130.144

安装calamari-server
1、在192.168.54.100任意目录,获取calamari代码
# git clone https://github.com/ceph/calamari.git

2、生成calamari-server安装包
# yum install gcc gcc-c++ postgresql-libs python-virtualenv
# cd calamari && ./build-rpm.sh/

3、安装calamari-server
# yum localinstall ../rpmbuild/RPMS/x86_64/calamari-server-<version>.rpm

4、初始化calamari
# calamari-ctl initialize
过程中输入的用户名密码用作登录时使用,请牢记

安装calamari-client
1、在192.168.54.100任意目录,获取calamari-client代码,最新的calamari-client被重命名为romana了
# git clone https://github.com/ceph/romana.git

2、配置gem源使用淘宝源
# gem sources -r https://rubygems.org/
# gem sources -a https://ruby.taobao.org/
# gem sources -l

3、安装ruby npm等一些依赖项
# yum install npm ruby rubygems
# npm install -g grunt grunt-cli bower grunt-contrib-compass
# gem update --system && gem install compass
# cd romana
# make dist

4、romana目录下有admin,dashboard,login,manage 4个子目录,分别进入每个目录并执行grunt build
# cd admin
# grunt build
# cd ../dashboard
# grunt build
# cd ../login
# grunt build
# cd ../manage
# grunt build
执行成功后会在每个对应目录下生成dist目录,目录结构如下:
romana/admin/dist
romana/dashboard/dist
romana/login/dist
romana/manage/dist

5、拷贝dist到opt目录
# mkdir -p /opt/calamari/webapp/content/admin
# mkdir -p /opt/calamari/webapp/content/dashboard
# mkdir -p /opt/calamari/webapp/content/login
# mkdir -p /opt/calamari/webapp/content/manage
# cd romana
# cp -rf admin/dist/* /opt/calamari/webapp/content/admin
# cp -rf dashboard/dist/* /opt/calamari/webapp/content/dashboard
# cp -rf login/dist/* /opt/calamari/webapp/content/login
# cp -rf manage/dist/* /opt/calamari/webapp/content/manage

6、calamari是通过httpd运行的,所以重启httpd
# service httpd restart

安装diamond
1、在192.168.54.100任意目录,获取diamond代码
# git clone https://github.com/ceph/Diamond

2、生成diamond安装包
# cd Diamond
# make rpm

3、将生成的diamond-<version>.noarch.rpm复制到所有的ceph服务器142/143/144,并执行
# yum localinstall diamond-<version>.noarch.rpm
# cp /etc/diamond/diamond.conf.example /etc/diamond/diamond.conf
# service diamond restart

4、在所有的ceph服务器上安装salt-minion:
# yum install salt-minion
# mkdir -p /etc/salt/minion.d/
# touch /etc/salt/minion.d/calamari.conf
# echo "master: 192.168.54.100" > /etc/salt/minion.d/calamari.conf
# service salt-minion restart

5、在Calamari服务器(192.168.54.100)上配置防火墙和saltstack认证 
防火墙(允许ceph服务器访问salt-master和carbon)
### salt-master
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 4505 -j ACCEPT
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 4506 -j ACCEPT
### carbon
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 2003 -j ACCEPT
# iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 2004 -j ACCEPT

6、saltstack认证:
当ceph服务器上的salt-minion服务启动之后,会自动向salt-master请求认证。
在Calamari服务器上可以通过下面的命令查看待认证的salt-minion密钥的列表:
# salt-key -L
对这些密钥进行认证:
# salt-key -A
认证成功后可以看到Accepted Keys:
# salt-key -L
Accepted Keys:
qbcomceph142
qbcomceph143
qbcomceph144
部署完成之后,可以在浏览器中直接通过IP访问:http://192.168.54.100/

安装过程中遇到的一些问题
问题1:
/usr/share/selinux/devel/policyhelp is needed
解决:
yum install selinux-policy-doc

问题2:
Compiling /XXX/calamari/rpmbuild/BUILDROOT/calamari-server-1.3.3-4_gb6c5652.el7.centos.x86_64/opt/calamari/venv/lib/python2.7/site-packages/gevent/_socket3.py ...
  File "/opt/calamari/venv/lib/python2.7/site-packages/gevent/_socket3.py", line 183
    def makefile(self, mode="r", buffering=None, *,
解决:
pip install gevent
/usr/lib64/python2.7/site-packages/gevent/_socket3.py去掉183行的*

问题3:
ERROR:  Error installing compass:
ERROR: Failed to build gem native extension.
    current directory: /usr/local/share/gems/gems/ffi-1.9.14/ext/ffi_c
/usr/bin/ruby -r ./siteconf20161201-8020-81bw2s.rb extconf.rb
mkmf.rb can't find header files for ruby at /usr/share/include/ruby.h
extconf failed, exit code 1
解决:
yum install ruby-devel

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值