glusterfs分布式文件系统安装调试

青春壹個敷衍的年華 提交于 2019-12-01 21:40:52

Glusterfs分布式文件系统安装调试


Edit by esxu
2015.07.08

概述

GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展能够支持数PB存储容量和处理数千客户端。GlusterFS借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源聚集在一起,使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。

image

安装部署

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方式挂载

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!