Ubuntu Server 12.04下部署glusterfs
1.安装环境
Linux:Ubuntuserver 12.04.1 LTS 64bit 2台
分布式文件系统:Gluster
测试环境:一台作文件服务器端(192.168.56.133),一台作客户端(192.168.56.131)
- 安装glusterfs服务器端
2.1上传glusterfs-3.4.1.tar.gz文件到/usr下(U盘挂载形式上传),gluster需要fuse库来支持,但是ubuntu sever12.04默认已经安装了fuse,因此无需再安装。
2.2 到/usr文件夹下解压,命令为:tar -xzvf glusterfs-3.4.1.tar.gz ,
2.3 编译安装,进入glusterfs-3.4.1文件夹下命令为:cd glusterfs-3.4.1 (进入目录,下述命令需要在该目录下执行),编译安装,命令为:./configure --prefix=/usr (设定安装目录),运行此命令会报一系列找不到依赖软件环境的错误下面介绍。
2.4安装依赖环境。在运行编译安装命令时系统会依次提示需要安装gcc环境、安装flex
bison环境、OpenSSL crypto环境、make软件,可以按如下命令依次安装,安装gcc:sudo
apt-get install gcc ;安装flex bison:sudo apt-get install flex bison ;安装OpenSSL:
sudo apt-get install libssl-dev;安装 make:sudo apt-get install make ;最后再运行编译安装命令:./configure --prefix=/usr ,即可编译完成。
2.5 运行完编译命令后,运行 make命令,例如:# make,然后运行install命令,例如:# make install,但是过程中会报错:make:****[ install-recursive ] Error 1,解决办法是使用sudo运行:# sudo make install ,至此glusterfs 安装完毕。检查是否安装成功可运行此命令测试:gluster -V,如果能够正确显示gluster的版本和版权信息即成功。
2.6 启动glusterfs,命令为:# /etc/init.d/glusterd start。
2.7 配置卷(如果集群中有多个结点的话要依次进行此步骤操作,但本例就一个服务器只改一个即可)。
依次登陆各个服务器启动glusterd;并将每个服务器对应的多个ip信息,添加到配置文件中,以testServer服务器为例:(集群由几个服务器节点构成,就添加几个,此处例子是一个)
登陆testServer服务器
sudo vi /etc/hosts
把如下信息写入hosts 文件:
192.168.56.133 testServer
............
****.****.****.**** ******
****.****.****.**** ******
2.8 添加集群节点(若集群中有多个结点可进行此操作,本例中服务器端就一台电脑可跳过此步骤)
创建GlusterFS集群:
$ gluster peer probe SERVER
SERVER表示存储服务器的hostname。例如要创建包含四台服务器的GlusterFS集群使用命令如下:(在d182 服务器上输入)
# gluster peer probe d183
# gluster peer probe d184
# gluster peer probe d185
注意:在构建GlusterFS集群时,需要在其中任意一台存储服务器上依次将其他存储服务器添加到集群中。
添加完集群之后,登陆集群中的其他服务器,例:从d182登陆d183
查看集群信息指令:
gluster peer status
显示信息如下:
Number of Peers: 3
Hostname: 192.168.1.182
Uuid: f97d4478-9374-41b9-b296-fb9840ff1a42
State: Peer in Cluster (Connected)
Hostname: d184
Uuid: 503d8c85-03c5-40be-8bbe-f19419f3d985
State: Peer in Cluster (Connected)
Hostname: d185
Uuid: 3697827c-23e5-4238-9f8c-10c1a920bcdb
State: Peer in Cluster (Connected)
显示红色字体”Connected”,为集群节点添加成功,但其中d182是以192.168.1.182这个ip加入集群的,需要换成hostname
登陆集群中的集群中的另一个节点:
例:登陆d183服务器
执行指令:
gluster peer detach 192.168.1.182
gluster peer probe d182
集群节点添加完毕。
2.9 建立分区或磁盘挂在目录
sudo mkdir -p /export/red5Streams (若有多个节点则在所有存储节点建立),然后把整个磁盘挂载到该文件夹下: sudo mount /dev/sda1 /export/red5Streams。(所有节点执行挂载,分区或磁盘容量要尽量一致(对于replica模式的卷尤为重要,这种模式下会以容量小的分区或磁盘为准)
2.10 创建逻辑卷
单台服务器的创建命令为:
gluster volume create test-volume 192.168.56.133:/export/red5Streams
多台服务器的创建命令为:
gluster volume create gv0 replica 2 192.168.1.1:/export/brick1 192.168.1.2:/export/brick1
建立卷时有三种模式:Stripe(RAID0)、Replicate(RAID1)和DHT(分布式Hash),默认是DHT,后边跟的数字意思是几个为1组,此示例中为2个为一组建立replica卷,类似RAID1。
查看volume 信息:# gluster volume info
2.11 启动卷
gluster volume start test-volume 。
3.客户端搭建
客户端软件环境可以通过命令获取;sudo apt-get install glusterfs-client
3.1客户端挂载存储服务器卷使用:
sudo mount -t glusterfs 192.168.56.133:/test-volume /usr/movies
Test-volume表示卷名
/usr/movies表示客户端挂载点