标签:style http color os 使用 io for ar 文件
根据http://ovirt-china.org/mediawiki/index.php/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2Ceph_Calamari
原文如下:
Calamari是管理和监控Ceph集群的工具,并且提供REST api。
建议的部署平台是ubuntu,本文使用CentOS 6.5。
# git clone https://github.com/ceph/calamari.git # git clone https://github.com/ceph/calamari-clients.git # git clone https://github.com/ceph/Diamond
# yum install gcc gcc-c++ postgresql-libs python-virtualenv # cd calamari && ./build-rpm.sh
# yum localinstall ../rpmbuild/RPMS/x86_64/calamari-server-<version>.rpm
使用yum可以自动解决依赖,如果手动安装依赖的可以这样:
# yum install postgresql-server salt-master salt-minion supervisor # rpm -ivh ../rpmbuild/RPMS/x86_64/calamari-server-<version>.rpm
# yum install npm ruby rubygems # npm install -g grunt grunt-cli bower grunt-contrib-compass # gem update --sytem && gem install compass # cd calamari-clients # make build-real # make dist
make dist会在上级目录生成calamari-client的压缩包;
手动解压缩,建立mkdir -p opt/calamari/webapp;
在解压生成的目录下,手动更新目录结构和内容:
# for dir in manage admin login dashboard >do >mkdir -p ../opt/calamari/webapp/content/"$dir" >cp -pr "$dir"/dist/* ../opt/calamari/webapp/content/"$dir"/ >done
重新制作压缩包,然后根据Makefile里面的rpm target手动执行rpmbuild:
# rpmbuild -bb --define "_topdir /xxx/calamari-clients/../rpmbuild" --define "version 1.2" --define "revision rc2_49_g3e3686d" --define "tarname /xxx/rpmbuild/SOURCES/calamari-clients_product_1.2.tar.gz" SPECS/clients.spec
# yum localinstall RPMS/x86_64/calamari-clients-1.2-rc2_49_g3e3686d.el6.x86_64.rpm
# calamari-ctl initialize
这一步在最后重启服务(主要是cthulhu)的时候一直没有结束,根据搜索到的信息,说是supervisord的问题,升级到3.0以上就不会有问题了。
# cd ../Diamond # git checkout origin/calamari # make rpm
master: {fqdn}
{fqdn}对应calamari服务器的域名。
启动salt-minion服务:
# service salt-minion restart
### 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
saltstack认证:
当ceph服务器上的salt-minion服务启动之后,会自动向salt-master请求认证。
在Calamari服务器上可以通过下面的命令查看salt-minion密钥的列表:
# salt-key -L
刚刚启动salt-minion服务的ceph服务器会出现在Unaccepted Keys列表之后,要使得Calamari能够通过saltstack管理ceph服务器,需要对这些密钥进行认证:
# salt-key -A
# ausearch -m avc -c httpd -se httpd_t -o anon_inodefs_t | audit2allow -R -M httpd_anon_inodefs # semodule -i httpd_anon_inodefs.pp
生成的SELinux模块规则如下:
require { type httpd_t; } #============= httpd_t ============== fs_rw_anon_inodefs_files(httpd_t)
HTTP 503 SERVICE UNAVAILABLE Vary: Accept Content-Type: text/html; charset=utf-8 Allow: GET, HEAD, OPTIONS { "detail": "No mon servers are responding" }
经过研究还是SELinux的限制,通过ausearch配合audit2allow生成相应的模块,可以解决问题。
生成的SELinux模块的规则如下:
require { type var_run_t; type httpd_t; class sock_file { write getattr }; } #============= httpd_t ============== allow httpd_t var_run_t:sock_file { write getattr }; files_read_var_files(httpd_t) init_stream_connect_script(httpd_t)
在centos6.5安装了一下Calamari,期间出现了一些rpm的问题。安装完成后,运行
calamari-ctl initialize进行初始化,最后一直停止在restart,此文说 这一步在最后重启服务(主要是cthulhu )的时候一直没有结束,根据搜索到的信息,说是supervisord 的问题,升级到3.0以上就不会有问题了。
试图升级supervisord,但需要python2.7等,只能作罢,以后再折腾吧。
首页可以打开,但登陆后出现Server Error(500):
标签:style http color os 使用 io for ar 文件
原文地址:http://my.oschina.net/renguijiayi/blog/307313