一、搭建环境
操作系统:ubuntu 14
ceph版本:ceph-0.88
单个千兆网卡
OSD数:16 *3T硬盘
节点:172.10.3.59 osd:6个;172.10.3.60 osd:10个,mon:1个,mds1个
注:没有使用apt(除一些必要依赖以外,也没有用ceph-deploy,之前用过这次想换个方法,用ceph-deploy比较便捷,方法可以在官网上找到)
二、搭建流程
1、安装软件
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
make -j4
make install
http://docs.ceph.com/docs/master/install/manual-deployment/
2、搭建monitor
cp src/init-ceph /etc/init.d/ceph
uuidgen
vim /etc/ceph/ceph.conf; set fsid = e3de7f45-c883-4e2c-a26b-210001a7f3c2
ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --set-uid=0 --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow *'
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
monmaptool --create --add node1 172.10.3.60 --fsid e3de7f45-c883-4e2c-a26b-210001a7f3c2 /tmp/monmap
mkdir -p /var/lib/ceph/mon/ceph-node1
ceph-mon --mkfs -i node1 --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
touch /var/lib/ceph/mon/ceph-node1/done
comment all osd in /etc/ceph/ceph.conf
/etc/init.d/ceph start
3、加入OSD
ceph-disk prepare --cluster ceph --cluster-uuid e3de7f45-c883-4e2c-a26b-210001a7f3c2 --fs-type xfs /dev/sdb
mkdir -p /var/lib/ceph/osd/ceph-0
ceph-disk activate /dev/sdb1
4、创建文件系统
cephfs:http://docs.ceph.com/docs/master/cephfs/createfs/
ceph osd pool create cephfs_data 8
ceph osd pool create cephfs_metadata 8
ceph fs ls
ceph fs new cephfs cephfs_metadata cephfs_data
ceph fs ls
ceph mds stat
5、客户端挂载
mount -t ceph 172.10.3.60:6789:/ /mnt/mycephfs
附:ceph.conf
1、出现问题:
59的两个osd进程起不来
原因是两个fsid不一样
2014-12-04 09:00:29.955062 7f279bb8c700 -1 osd.2 5 ERROR: bad fsid? i have d4f9fe45-e588-4ca8-b937-e53becdffe26 and inc has a4eab0f5-f917-4867-bef2-46de33909a88
原来在59上我试图用另一个fsid建cluster过,运行过如下命令:
monmaptool --create --add node2 172.10.3.59 --fsid d4f9fe45-e588-4ca8-b937-e53becdffe26 /tmp/monmap
这个命令用新的fsid建立了cluster map
2、解决方法:
/var/lib/ceph/osd/ceph-3/ceph_fsid:d4f9fe45-e588-4ca8-b937-e53becdffe26
这个文件删除
OSD删除
重做OSD
(直接把这个文件的fsid改掉好像也不行,/var/lib/ceph/osd/ceph-3/current/meta这个目录里也有相应记录,所以要重做osd重新生成metadata)
四、初步性能测试
1、iozone大文件测试,文件大小:100G,线程数24
|
读(MB/s)
|
写(MB/s) |
重建
|
49+55=104
|
55+73=128
|
非重建 |
164+256=420
|
72+62=134
|
|
208
|
167
|
|
192
|
107
|
只有一个表示单节点单独测试
因为是直接在本地节点挂载,一部分IO在本地,没有走网络。
2、postmark小文件测试
生成单节点生成十万个4-6K小文件,结果如下图所示: