操作系统centos5.5版本以上
服务器端和客户端都必须安装以下安装包
#安装DAG RPM Repository的更新包。DAG RPM Repository下载页面为:
#http://dag.wieers.com/rpm/packages/rpmforge-release/
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm
rpm –ivh rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm (如果是32位就安装32位的rpm包)
#GlusterFS需要fuse支持库,需先安装:
yum -y install fuse fuse-devel httpd-devel libibverbs-devel
必备软件:GlusterFs3.2.1
wget http://download.gluster.com/pub/gluster/glusterfs/LATEST/glusterfs-3.2.1.tar.gz
服务器端和客户端都必须安装,安装方法如下:
# tar -xzf glusterfs-3.2.1.tar.gz
# cd glusterfs-3.2.1/
# ./configure –prefix=/usr
# make
# make install
yum –y install flex bison 必须安装
编译安装gluster 3.2.0出错提示
错误提示
cd glusterfs-3.2.0
[root@dbm glusterfs-3.2.0]# ./confiugre --prefix=/usr/
checking for python version... 2.4
checking for python platform... linux2
checking for python script directory... ${prefix}/lib/python2.4/site-packages
checking for python extension module directory... ${exec_prefix}/lib/python2.4/site-packages
checking if python is python 2.x... 2.4
checking if python has ctypes support... no
configure: error: python does not have ctypes support
解决办法
wget http://www.python.org/ftp/python/2.6.5/Python-2.6.5.tar.bz2
rz #--->上传python软件包
Python-2.6.5.tar.bz2
tar jxvf Python-2.6.5.tar.bz2
cd Python-2.6.5
./configure
make
make install
二 安装步骤
2.1 服务器端
1安装之前先进行flex,bison包的安装,建议在线安装:
Yum –y install flex bison
下载glusterfs源码安装包
glusterfs-3.1.3.tar.gz
使用下面命令进行安装:
tar –xvf glusterfs-3.1.3.tar.gz
cd glusterfs-3.1.3
运行配置工具:./configure --prefix=/usr/
进行编译:make
make install
验证GlusterFS是不是安装成功使用下面命令:
$ glusterfs –version
出现下面信息表示安装成功;
glusterfs 3.1.3 built on Mar 29 2011 01:55:58
Repository revision: v3.1.3
Copyright (c) 2006-2010 Gluster Inc.
GlusterFS comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of GlusterFS under the terms of the GNU Affero General Public License.
启动glusterd daemon
service glusterd start
停止glusterd daemon
service glusterd stop
2.2配置卷
2.2.3 前期准备
范例:创建volumes(以创建2台为例)
在配置GlusterFS volumes之前,你需要创建一个包含存储服务器的存储池;而在创建存储池时必须每个存储服务器的GlusterFS service是开启的;
创建存储池peers命令:
$ gluster peer probe SERVER
SERVER表示存储服务器的IP地址
例如我要创建包含两台服务器的存储池使用命令如下:
# gluster peer probe 192.168.12.203
Probe successful
注意:在创建存储池时,需要在主存储服务器依次创建附加服务器的peers,主服务器不需要添加。
查看peers是不是创建成功:
# gluster peer status
出现如下信息表示存储池创建成功:
Number of Peers: 1
Hostname: 192.168.12.203
Uuid: 5070f9cd-bb2f-49b7-a765-f0c04faf2240
State: Peer in Cluster (Connected)
注意此信息中uuid必须是有值的,state处于连接状态,否则不能创建卷。
2.2.4创建Distributed Volumes
# gluster volume create v8 transport tcp 192.168.12.202:/home/mc5/data5/ 192.168.12.203:/home/mc6/data6/
Creation of volume distribute has been successful
红色字体部分需要根据实际情况修改;v8表示卷名;tcp表示传输协议;192.168.12.202表示
存储服务器IP;/home/mc5/data5表示存储服务器存储挂载点。
查看volume 信息:# gluster volume info
Volume Name: v8
Type: distribute
Status: Started
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: 192.168.12.202:/home/mc2/data2
Brick2: 192.168.12.203:/home/mc3/data3
2.2.5创建Replicated volumes
# gluster volume create v8 replica 2 transport tcp 192.168.12.202:/home/mc2/data2/ 192.168.12.203:/home/mc3/data3/
红色字体部分需要根据实际情况修改;v8表示卷名;replica表示卷类型;2表示以2个为一组;tcp表示传输协议;192.168.12.202表示存储服务器IP;/home/mc5/data5表示存储服务器存储挂载点。
注:Replicated volumes要求2个以上为一组才能创建。
查看volume 信息:# gluster volume info
Volume Name: v8
Type: Replicate
Status: Started
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: 192.168.12.202:/home/mc5/data5
Brick2: 192.168.12.203:/home/mc6/data6
2.2.6创建Distributed Striped Volumes
# gluster volume create v8 stripe 2 transport tcp 192.168.12.202:/home/mc5/data5/ 192.168.12.203:/home/mc6/data6/
红色字体部分需要根据实际情况修改;v8表示卷名;stripe表示卷类型;2表示以2个为一组;tcp表示传输协议;192.168.12.202表示存储服务器IP;/home/mc5/data5表示存储服务器存储挂载点。
注:Distributed Striped volumes要求2个以上为一组才能创建;
查看volume 信息:# gluster volume info
Volume Name: v8
Type: stripe
Status: Started
Number of Bricks: 2
Transport-type: tcp
Bricks:
Brick1: 192.168.12.202:/home/mc5/data5
Brick2: 192.168.12.203:/home/mc6/data6
启动卷命令:
# gluster volume start v8
停止卷命令
# gluster volume stop v8
V8表示卷名。
查看卷文件相关日志目录:
tail -f /usr/var/log/glusterfs/bricks/home-mc5-data5.log
红色字体可能因挂载点不同而有所改变需要注意。
2.2 客户端
2.2.1 安装环境准备
fuse module的安装(建议在线安装)
l 运行如下命令进行安装:
$ yum install openssh-server wget fuse fuse-libs openib libibverbs
l 验证安装:
n Fuse模块的验证:
u $ modprobe fuse
u $ dmesg | grep -i fuse
u 如果显示:fuse init (API version 7.10),则表示fuse模块安装成功
2.2.2 gluster软件安装
安装Glusterclient所需的rpm包
glusterfs-fuse-3.1.3-1.x86_64.rpm;
glusterfs-core-3.1.3-1.x86_64.rpm
使用rpm –Uvh glusterfs-*rpm进行安装
同样通过glusterfs –version验证安装是否成功。
至此,所有的安装过程结束,可以开始挂载使用存储了。
2.2.3 挂载卷
客户端挂载存储服务器卷使用:
mount -t glusterfs 192.168.12.202:/v8 /usr/local/movies
192.168.12.202 表示主serverIP
V8表示卷名
/usr/local/movies表示客户端挂载点
验证mount是否成功
$ df –lh
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 128G 33G 89G 28% /
/dev/sda1 1.9G 42M 1.8G 3% /boot
tmpfs 2.0G 0 2.0G 0% /dev/shm
glusterfs#192.168.12.202:/v8
551G 1.4G 521G 1% /usr/local/movies
出现红色字体部分表示已经挂载上存储服务器。
卸载卷
$ umount /usr/local/movies
客户端挂载方法
方法一:
glusterfs -f /etc/glusterfs/glusterfs.vol /usr/local/movies/ -l /var/log/glusterfs.log
方法二:
glusterfs -f $GLUSTERFSPATH/client.vol /mnt/glusterfs
三 GlusterFS软件介绍
GlusterFS是一款开源的分布式存储系统,它基于fuse设计,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。GlusterFS借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源集中在一起,使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。
GlusterFS统一的挂载点
glusterfs卷类型介绍
1、Distributed Volumes
分布卷模式,卷中资源仅在一台服务器上存储,在存储池中非镜像或条带模式。
2、Distributed Replicated Volumes
分布镜像卷模式:创建一个两两互为备份的卷,存储池中一块硬盘损坏,不会影响到数据的使用,最少需要两台服务器才能创建分布镜像卷。
3、Distributed Striped Volumes
分布条带卷:每个文件分布在四台共享服务器上,通常用于大文件访问处理,最少需要4台服务器才能创建分布条带卷。
四 相关文档
官方主页:
http://gluster.com/community/documentation/index.php/Main_Page
服务器安装:
http://gluster.com/community/documentation/index.php/Gluster_3.1_Filesystem_Installation_and_Configuration_Guide
客户端安装:
http://gluster.com/community/documentation/index.php/Gluster_3.1_Native_Client_Guide
挂载卷:
http://gluster.com/community/documentation/index.php/Gluster_3.1:_Mounting_Volumes
http://www.cnkker.com/Article.aspx?PostID=144