Apr 232013
 

从知道Gluster到现在,其实时间不短,当时单位用gluster对外提供网盘的服务,搜狗拼音,算是国内最大的Gluster用户,不过现在好像都在做迁移。

这次测试安装,其实遇到很多恶心的问题,估计都是软件的bug。Gluster的安装配置,倒是非常简单,简单到你基本没啥可做的,我就把安装和测试过程记录一下,没啥技术含量。

 

参考文档 原文

准备

我的实验环境是2个节点,一个客户端,gluster群集设置

  1. 关闭selinux
  2. 关闭iptables,避免各种端口访问的麻烦
  3. 网卡绑定,我使用mode=0,交换机不做任何设置
  4. 使用epel源,目前源里的gluster版本是3.2.7
  5. 采用FQDN 访问,你需要自己搞定,设置hosts文件,所有节点包括客户端
  6. 硬盘有一个单独的分区 /data 作为gluster数据存储空间

安装

在群集节点g132上

[root@g132 ~]# hostname
g132.chenshake.com
yum -y install glusterfs-server
chkconfig --levels 235 glusterd on
/etc/init.d/glusterd start 

在另外节点g132  也是相同操作

配置

Gluster的配置非常简单

添加节点,我是从g132节点进行添加其他节点

gluster peer probe g133

查看节点情况

# gluster peer status
Number of Peers: 1

Hostname: g133
Uuid: ad311d76-1d72-4950-b1e7-191291c0ab17
State: Peer in Cluster (Connected)

添加volume

为了方便测试,我们在两个节点的 /data 目录下,创建 data01目录

数据存放一份

gluster volume create testvol g132:/data/data01 g133:/data/data01

数据存放2份,这就需要你添加volume的时候是双数

gluster volume create testvol replica 2 g132:/data/data01 g133:/data/data01

条带化,看你希望条带化到几个节点,你自己调整 (我没测试)

gluster volume create testvol stripe 2 g132:/data/data01 g133:/data/data01

创建完volume后,会提示你启动volume,这个经常会忘记

gluster volume start testvol

查看gluster运行情况

netstat -tap | grep glusterfsd

查看volume情况

gluster volume info

查看节点

gluster peer status

客户端

其实服务器端,也可以当客户端,不过我还是专门找了一台机器作为客户端

yum -y install glusterfs-client

mount gluster目录

mkdir /test
mount.glusterfs g132:/testvol /test

你也可以用这个命令

mount -t glusterfs g132:/testvol /test

查看情况

[root@g140 ~]# mount
/dev/sda5 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/sda1 on /boot type ext4 (rw)
/dev/sda2 on /data type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
g132:/testvol on /test type fuse.glusterfs (rw,allow_other,default_permissions,max_read=131072)

df查看

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda5              93G  1.5G   87G   2% /
tmpfs                  16G     0   16G   0% /dev/shm
/dev/sda1             194M   33M  152M  18% /boot
/dev/sda2             394G  199M  374G   1% /data
g132:/testvol         788G   83G  666G  11% /test

测试

dd测试,不过不算是太准确.

cd /test
dd if=/dev/zero of=/mnt/glusterfs/test.img bs=1024k count=1000

iozone 进行压力测试

如果你直接使用DD,不见得可以测试出真实带宽,估计是和多线程有关。

安装

wget http://www.iozone.org/src/current/iozone3_414.tar
tar xvf iozone3_414.tar -C /usr/local/src/
cd /usr/local/src/iozone3_414/src/curren
make linux-AMD64
cp iozone /usr/bin/

测试

cd /test/
mkdir n140
cd n140
iozone -t 250 -i 0 -r 512k -s 500M -+n -w

 

附注

查看命令帮助,这个非常有用,gluster很多命令和别的软件有区别

gluster help
gluster peer help
gluster volume help

删除节点

gluster peer help
gluster peer datach g133

删除birck

gluster volume info
gluster volume remove-brick testvol g132:/data/data01

如果你要删除volume,那么你需要停止volume服务

gluster volume stop testvol
gluster volume delete testvol

  11 Responses to “CentOS 6.4 测试GlusterFS 3.2.7”

  1. 为什么做迁移呢?gluster 有什么问题吗?

  2. 不用raid,直接的裸盘,当然有的不做raid可能识别不了多个硬盘

  3. 请问使用过配置文件搭建gluster吗?能否发个参考文档看看

  4. 太感谢了,我一直不知道cp iozone /usr/bin/ 这一步,然后用iozone总找不到命令。原来这一步就是加入环境变量

 Leave a Reply

(required)

(required)