ceph提供:对象存储,块设备,文件系统。
Ceph存储集群至少需要一个Ceph Monitor,Ceph Manager和Ceph OSD(对象存储守护进程)。运行Ceph Filesystem客户端时也需要Ceph元数据服务器。
Monitors :ceph-mon维护集群状态的映射,管理守护进程和客户端之间的身份验证,高可用至少需要3个Monitors 节点
Managers:Ceph集群的当前状态,高可用性通常至少2个Managers节点
Ceph OSDs:存储数据,处理数据复制,恢复,重新平衡,并通过检查其他Ceph OSD守护进程来获取心跳,为Ceph监视器和管理器提供一些监视信息。冗余和高可用性通常至少需要3个Ceph OSD。
MDSs :ceph-mds 文件系统存储原数据服,Ceph块设备和Ceph对象存储不使用MDS
手动部署
ceph版本 minic 13.2
主机名 | ip地址 | 系统版本 | ceph版本 | 节点 |
node01 | 172.16.50.104 | minic 13.2 | mon,osd | |
node02 | 172.16.50.111 | minic 13.2 | osd | |
node03 | 172.16.50.131 | minic 13.2 | osd |
系统初始化
关闭selinux
启用epel源:yum install epel-releas
添加ceph源:/etc/yum.repos.d/ceph.repo 内容如下:
安装ceph
Mon节点部署
创建配置文件:/etc/ceph/ceph.conf
为群集创建密钥环,并生成监视器密钥。
生成管理员密钥;生成client.admin 用户,并将用户添加到密钥环。
生成一个bootstrap-osd密钥环,生成client.bootstrap-osd用户,并将用户添加到密钥环。
将生成的密钥添加到ceph.mon.keyring环中
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring
使用主机名、主机IP地址和FSID生成监视器映射,保存到/tmp/monmap
uuid=a7f64266-0894-4f1e-a635-d0aeaca0e993
name=node01
ip=172.16.50.104
monmaptool --create --add $name $ip --fsid $uuid /tmp/monmap
在mon主机上创建默认数据目录
mkdir /data/ceph/mon -p
初始化mon
touch /data/ceph/mon/ceph-$name/done
chown ceph:ceph /data/ceph/ -R
systemctl enable ceph-mon@$name
systemctl start ceph-mon@$name
验证monitor运作
ceph -s
在运行ceph-mon守护程序的每个节点上,还应该设置ceph-mgr守护程序。
ceph-mgr部署
创建身份认证密钥
将输出保存到 /var/lib/ceph/mgr/ceph-node01/keyring
文件中
启动
systemctl enable ceph-mgr@node01
验证mgr:
添加osd以node02为列
将配置文件/var/lib/ceph/bootstrap-osd/ceph.keyring
,/etc/ceph/ceph.conf
拷贝到需要安装osd服务器
scp /etc/ceph/ceph.conf root@node02:/etc/ceph
ssh node02
UUID=$(uuidgen)
OSD_SECRET=$(ceph-authtool --gen-print-key)
ID=$(echo "{\"cephx_secret\": \"$OSD_SECRET\"}" | ceph osd new $UUID -i - -n client.bootstrap-osd -k /var/lib/ceph/bootstrap-osd/ceph.keyring)
mkdir /data/ceph/osd -p && ln -s /data/ceph/osd/ /var/lib/ceph/osd/ceph-$ID
ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-$ID/keyring --name osd.$ID --add-key $OSD_SECRET
ceph-osd -i $ID --mkfs --osd-uuid $UUID
chown ceph:ceph /var/lib/ceph/osd/ceph-$ID -R
systemctl enable ceph-osd@$ID
systemctl start ceph-osd@$ID
在查看集群状态
至此可以使用对象存储,及块设备(生产不建议这样使用至少需要3个mon节点,2个mgr节点)
它是基于mgr python的插件
启用dashboard插件
生成自签名证书
配置dashboard监听
ceph config set mgr mgr/dashboard/node01/server_addr 172.16.50.104
ceph config set mgr mgr/dashboard/node01/server_port 1888
配置dashboard认证
原文:http://blog.51cto.com/11889458/2139175