参考
Git clone repo
#> git clone https://github.com/ceph/calamari.git
#> git clone https://github.com/ceph/calamari-clients.git
#> git clone https://github.com/ceph/Diamond
构建calamari server的rpm包
构建RPM环境的准备
安装linux操作系统
安装virtualbox
安装vagrant
打包calamari-server
打包romana
安装相关软件
安装ceph cluster
ceph就是我们需要管理的集群,这里由于只是一个安装的文档,这里就做一个单节点的快速的安装
安装ceph和ceph-deploy 之前已经配置ceph的rpm源,这里直接用于yum进行安装
[root@calamari ~]# yum install -y ceph ceph-deploy
配置集群
[root@calamari ~]# mkdir /root/ceph
[root@calamari ~]# cd /root/ceph/
初始化配置文件
[root@calamari ceph]# ceph-deploy new calamari
[root@calamari ceph]# vim ceph.conf
我修改了几项便于状态正常,这个根据自己的需要进行配置即可
auth_cluster_required = none
auth_service_required = none
auth_client_required = none
osd_crush_chooseleaf_type = 0
osd_pool_default_size = 2
创建mon
[root@calamari ceph]# ceph-deploy mon create calamari
获取密钥
[root@calamari ceph]# ceph-deploy gatherkeys calamari
部署osd
[root@calamari ceph]# mkdir /node1
[root@calamari ceph]# mkdir /node2
[root@calamari ceph]# ceph-deploy osd prepare calamari:/node1/
[root@calamari ceph]# ceph-deploy osd prepare calamari:/node2/
[root@calamari ceph]# ceph-deploy osd activate calamari:/node1/
[root@calamari ceph]# ceph-deploy osd activate calamari:/node2/
安装calamari-server
之前已经打好了calamari-server的rpm包这里直接安装就可以了
添加salt的源
[root@calamari el6]# vim /etc/yum.repos.d/repo-saltstack-el7.repo
添加
[repo-saltstack-el7]
name=SaltStack EL7 Repo
baseurl=https://repo.saltstack.com/yum/rhel7/
skip_if_unavailable=True
gpgcheck=0
gpgkey=https://repo.saltstack.com/yum/rhel7/SALTSTACK-GPG-KEY.pub
enabled=1
enabled_metadata=1
[root@calamari el6]# yum makecache
安装calamari-server
将calamari-server-1.3.1.1-105_g79c8df2.el7.centos.x86_64.rpm拷贝到系统的/root/下
[root@calamari ~]# yum localinstall calamari-server-1.3.1.1-105_g79c8df2.el7.centos.x86_64.rpm
注意检查下下载的salt相关版本是不是下面的这个版本(其他版本有bug)
salt noarch 2015.8.1-1.el7
配置calamari-server
初始化calmari
[root@calamari ~]# calamari-ctl initialize
[INFO] Loading configuration..
[INFO] Starting/enabling salt...
[INFO] Starting/enabling postgres...
[INFO] Initializing database...
[INFO] You will now be prompted for login details for the administrative user account. This is the account you will use to log into the web interface once setup is complete.
Username (leave blank to use 'root'): root
Email address: test@qq.com
Password:
Password (again):
Superuser created successfully.
[INFO] Initializing web interface...
[INFO] Starting/enabling services...
[INFO] Restarting services...
[INFO] Complete.
这个地方是启动的一些服务的初始化,配置的是访问web的用户名密码,我的是 root,123456
root,inesa2014
修改calamari的密码的方法
修改用户名密码
# calamari-ctl change_password --password {password} {user-name}
[root@calamari ~]# calamari-ctl change_password --password 1234567 root
[root@calamari ceph]# ceph-deploy calamari connect calamari
在所有节点安装diamond
这个是用来收集系统上的监控数据的,然后发送给cabon 这个需要在所有的节点上安装,这个会发送集群的数据和系统的监控数据给监控平台
[root@calamari calamari]# rpm -ivh diamond-3.4.67-0.noarch.rpm
[root@calamari calamari]# mv /etc/diamond/diamond.conf.example /etc/diamond/diamond.conf
[root@calamari ceph]# /etc/init.d/diamond restart
Restarting diamond (via systemctl): [ OK ]
这个地方注意修改配置文件/etc/diamond/diamond.conf 将其中的
# Graphite server host
host = node2
这个地方的host要填写你的calamari的管理平台的那台机器的主机名,这个地方是用diamond收集集群数据和硬件的数据发送到管理平台的机器的carbon进程,然后存储在whisper这个数据库当中的,所有的需要收集数据的机器都需要修改
在所有的节点上安装salt-minion
[root@calamari ceph]# yum install salt-minion
修改配置文件
[root@calamari ceph]# vim /etc/salt/minion.d/calamari.conf
添加salt-master的主机名
master: calamari
重启服务
[root@calamari ceph]# service salt-minion restart
salt-master认证认可
在salt-master上执行认证的工作(也就是安装calamari-server的机器上) 查询当前的认证请求
[root@calamari ceph]# salt-key -L
Accepted Keys:
Denied Keys:
Unaccepted Keys:
calamari
Rejected Keys:
批准认证的请求
[root@calamari ceph]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
calamari
Proceed? [n/Y] y
Key for minion calamari accepted.
查询是否通过认证
[root@calamari ceph]# salt-key -L
Accepted Keys:
calamari
Denied Keys:
Unaccepted Keys:
Rejected Keys:
配置calamari-server机器的文件权限
[root@calamari ceph]# cd /var/log/calamari/
[root@calamari calamari]# ll
total 320
-rw-r--r--. 1 apache apache 0 Nov 28 13:46 calamari.log
-rw-r--r--. 1 root root 291070 Nov 28 14:09 cthulhu.log
-rw-r--r--. 1 root root 0 Nov 28 13:46 httpd_access.log
-rw-r--r--. 1 root root 0 Nov 28 13:46 httpd_error.log
[root@calamari calamari]# chmod 777 -R *
[root@calamari calamari]# service supervisord restart
这个地方是因为执行程序需要对这个日志有权限,不然程序会报错,这里给权限即可,给完权限重启下控制的服务,/var/log/calamari/是calamari的系统的日志目录,有问题可以在这里面查询日志 到这里就配置完了calamari-server的服务了
安装romana
romana是集群的web管理的界面,直接进行安装即可,这个在calamari的server机器上安装
将romana-1.2.2-36_gc62bb5b.el7.centos.x86_64.rpm拷贝到/root/目录下面
[root@calamari ~]# rpm -ivh romana-1.2.2-36_gc62bb5b.el7.centos.x86_64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:romana-1.2.2-36_gc62bb5b.el7.cent################################# [100%]
访问web管理平台 输入当前机器的ip地址即可,默认端口就是80
Bug Issue
- calamari server的时间也diamon节点的时间不同步会导致IOPS和硬盘资源的使用量无法显示问题,配置ntp服务器同步时间,注意同步时区:
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime