Glusterfs分布式文件系统安装调试
Edit by esxu
2015.07.08
概述
GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。GlusterFS借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。
安装部署
Glusterfs安装部署相对来说较简单,几步操作即可完成。
yum源配置
wget http://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo
可直接使用官方的yum源即可,如果是内网可将源同步到本地,目前支持的版本一到centos7.1
创建并挂载本地磁盘
fdisk /dev/sdb and create a single partition
格式化
mkfs.xfs -i size=512 /dev/sdb1
作为brick进行挂载
mkdir -p /export/sdb1 && mount /dev/sdb1 /export/sdb1 && mkdir -p /export/sdb1/brick
写入开机挂载启动文件中
echo "/dev/sdb1 /export/sdb1 xfs defaults 0 0" >> /etc/fstab
执行安装
Server端
yum install -y glusterfs-server glusterfs-rdma.x86_64
如果不使用IB网络,则glusterfs-rdma.x86_64这个软件包就不需要安装,只安装一个server包即可。
启动服务
service glusterd start
添加存储节点
gluster peer probe server2
该命令在任意一台server上执行即可,这里最好使用节点的hostname,这里如果还有第三个存储节点,则还需再执行一次
gluster peer probe server3
添加完server节点后,可进行存储节点状态查看:
[root@jobsub-138-015 locks]# gluster peer status
Number of Peers: 4
Hostname: 11.11.11.209
Uuid: c9f2ecdf-9186-49e2-88b5-992a5351f7b3
State: Peer in Cluster (Connected)
Other names:
192.168.138.19
11.11.11.209
Hostname: jobsub-138-017
Uuid: 0e4544e9-a66a-49c4-8565-3c4ebb5cf94d
State: Peer in Cluster (Connected)
Other names:
192.168.138.17
11.11.11.207
Hostname: jobsub-138-018
Uuid: 8c78cfb6-57da-46b5-8718-d12fe0553fc3
State: Peer in Cluster (Connected)
Other names:
11.11.11.208
Hostname: 11.11.11.206
Uuid: 72b422f1-3e8f-4ec3-ab8b-3067f43b0f6d
State: Peer in Cluster (Connected)
Other names:
192.168.138.16
卷管理
各节点状态都正常后,即可创建volume,这里的volume可以理解为逻辑卷,一个glusterfs文件系统之上可以创建多个volume,卷的类型也有多种:
- 哈席卷
- 复制卷
- 条带卷
以上是glusterfs的三种基本卷类型,可以通过组合的方式创建复合卷
哈席卷:
gluster volume create volume02 transport rdma 11.11.11.205:/jst-data/glusterfs/vol05 11.11.11.206:/jst-data/glusterfs/vol06 11.11.11.207:/jst-data/glusterfs/vol05 11.11.11.208:/jst-data/glusterfs/vol05
transport rdma参数表示该卷类型为RDMA协议卷,默认不添加是TCP/IP卷,也可在创建卷时指定卷同时支持rdma、tcp:
gluster volume create volume02 transport rdma,tcp 11.11.11.205:/jst-data/glusterfs/vol05 11.11.11.206:/jst-data/glusterfs/vol06 11.11.11.207:/jst-data/glusterfs/vol05 11.11.11.208:/jst-data/glusterfs/vol05
如果节点个数非常多,也可通过下面简化命令进行操作
gluster volume create volume02 transport rdma 11.11.11.{205,206,207,208}:/jst-data/glusterfs/vol05
复制卷:
gluster volume create volume02 replica 4 transport rdma 11.11.11.{205,206,207,208}:/jst-data/glusterfs/vol05
这里副本数设置为4,这里有四个server节点,节点的数量必须是副本数的倍数,否则无法创建成功,这里如果副本数设置为2,则卷类型会自动转换为哈希-复制卷。
条带卷:
gluster volume create volume02 stripe 2 transport rdma 11.11.11.{205,206,207,208}:/jst-data/glusterfs/vol05
条带数目设置为2,也就是每个文件会被拆分2份分布在不同的brick上。为了保证数据的安全性,可以创建条带-复制复合卷
条带-复制卷:
gluster volume create volume04 stripe 2 replica 2 transport rdma 11.11.11.{205,206,207,208}:/jst-data/glusterfs/vol05
以上列举了几种常用卷类型的创建方式,创建完volume后,需将卷启动才能使用:
gluster volume start volume_name
客户端配置
安装相关软件包
wget http://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo
yum -y install glusterfs glusterfs-fuse glusterfs-rdma.x86_64
客户端需安装相应的glusterfs软件包才可支持本地方式挂载,否则无法识别glusterfs文件系统。
挂载方式
本地客户端挂载:
mount -t glusterfs -o transport=rdma 11.11.11.208:volume04 /gluster04
只需要写其中一个server的IP即可,volume4是卷名称,/gluster04是目标目录。
NFS方式挂载
mount -t nfs -o vers=3 11.11.11.208:volume04 /gluster04
也支持windows下的CIFS方式挂载
来源:CSDN
作者:ensong_xu
链接:https://blog.csdn.net/xuensong520/article/details/46831171