CephFS环境搭建(一)

一、搭建环境

操作系统: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

[global]
fsid = e3de7f45-c883-4e2c-a26b-210001a7f3c2
mon initial members = node1
mon host = 172.10.3.60
public network = 172.10.3.0/24
auth cluster required = none
auth service required = none
auth client required = none
osd journal size = 1024
filestore xattr use omap = true
osd pool default size = 2
osd pool default min size = 1
osd pool default pg num = 333
osd pool default pgp num = 333
osd crush chooseleaf type = 1

[mon.node1]
host = node1
mon addr = 172.10.3.60:6789

#[osd.0]
#host = node1
#osd addr = 172.10.3.60:6789

#[osd.1]
#host = node1
#osd addr = 172.10.3.60:6789

[mds]
        keyring = /var/lib/ceph/mds/$name/keyring

[mds.node1]
        host = node1

三、遇见的问题及解决

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
注:49+55表示59节点的数据+60节点的数据

只有一个表示单节点单独测试

因为是直接在本地节点挂载,一部分IO在本地,没有走网络。


2、postmark小文件测试

生成单节点生成十万个4-6K小文件,结果如下图所示:

CephFS环境搭建(一)_第1张图片


你可能感兴趣的:(分布式文件系统)