GlusterFS操作记录(4) GlusterFS快速安装部署配置

GlusterFS作为分布式共享文件系统也用了很多年了,简单好用,但是一直没有系统化记录下来,很是零散。这次趁着Kubernets集成GlusterFS作为共享存储,尽量记录些东西。
GlusterFS操作记录(1) GlusterFS简述
GlusterFS操作记录(2) GlusterFS存储卷类型介绍
GlusterFS操作记录(3) GlusterFS架构介绍
GlusterFS操作记录(4) GlusterFS快速安装部署配置
GlusterFS操作记录(5) GlusterFS+Heketi配置(独立部署)
GlusterFS操作记录(6) GlusterFS+Heketi在Kubernets上的集成配置

GlusterFS简单配置

部署一个可用的GlusterFS集群很简单,产线使用可以根据应用场景进行调优。这里记录简单的安装过程进行体验。之后可以阅读研究Gluster的admin Guide文档学习研究如果管理GlusterFS以及选择适合应用场景的卷类型。

部署可以手动命令行一步一步的部署也可以使用其他集成工具或者脚本,例如ansible,可以参考文档。这里记录逐步安装的方式。 实验根据官方文档进行,文档

1. 准备3个节点,并初始化

主机ip地址角色备注
gluster-server-110.99.7.11gluster-server
gluster-server-210.99.7.12gluster-server
gluster-server-210.99.7.12gluster-server
gluster-client-110.99.7.10gluster-server挂载共享卷

初始化包括设置主机名称,网络,DNS等等,这里直接省略了。

配置/etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

10.99.7.10 gluster-client-1
10.99.7.11 gluster-server-1
10.99.7.12 gluster-server-2
10.99.7.13 gluster-server-3

2. 格式化并挂载磁盘

每个虚拟机主备一块或者多块磁盘,并分别格式化,这里举例/sdb

parted /dev/sdb -s 'mkpart primary xfs 0% 100%'
mkfs.xfs -i size=512 /dev/sdb1
mkdir -p /data/brick1

# 产线挂载可以使用uuid,或者label,防止磁盘损坏导致磁盘挂载顺序混乱
echo '/dev/sdb1 /data/brick1 xfs defaults 1 2' >> /etc/fstab 
mount -a && mount

我测试服务器上没有挂载额外的数据磁盘,直接创建一个目录使用。

# 每个服务端主机上执行
mkdir -p /data/brick1  #可以创建多个,用于scale测试

3. 安装glusterFS

gluster根据用户有很多个组件,这里简单安装有些组件就不配置了。

# 每个服务端主机上执行
yum install centos-release-gluster -y
# 我们选择5.2版本
yum list glusterfs --showduplicates|sort -r
    glusterfs.x86_64                  5.2-1.el7                      centos-gluster5
    glusterfs.x86_64                  5.1-1.el7                      centos-gluster5
    glusterfs.x86_64                  5.0-1.el7                      centos-gluster5
    glusterfs.x86_64                  3.12.2-18.el7                  base     

yum -y install glusterfs-server glusterfs-fuse

systemctl enable glusterd.service
systemctl start glusterd.service
systemctl status glusterd.service

4. 配置防火墙

这里是简单安装测试,没有深入配置防火墙。可以全部放行,或者直接关闭防火墙

# 直接关闭防火墙
systemctl stop firewalld.service
systemctl disable irewalld.service

5. 配置授信池(将节点加入到集群)

# 在gluster-server-1上将 2,3加入进来
gluster peer probe gluster-server-2
gluster peer probe gluster-server-3

# 在gluster-server-2或者3上(新版本没有必要了,之前版本需要时因为主机名称解析的问题)
gluster peer probe gluster-server-1

#任意节点
[root@gluster-server-1 ~]# gluster peer status
Number of Peers: 2

Hostname: gluster-server-2
Uuid: 6f32f6d4-9cd7-4b40-b7b6-100054b187f7
State: Peer in Cluster (Connected)

Hostname: gluster-server-3
Uuid: 5669dbef-3f71-4e3c-8fb1-9c6e11c0c434
State: Peer in Cluster (Connected)

以上使用的是主机名称方式,需要配置hosts文件,也可以使用IP地址方式.后期可以修改文件/var/lib/glusterd/peers/{uuid},添加hostname2或者调换hostname1和2,重启glusterd生效。
# cat /var/lib/glusterd/peers/5669dbef-3f71-4e3c-8fb1-9c6e11c0c434 
uuid=5669dbef-3f71-4e3c-8fb1-9c6e11c0c434
state=3
hostname1=gluster-serever-3
hostname2=10.99.7.13

6. 创建一个存储卷

gluster volume create volume0 replica 3 gluster-server-1:/data/brick1/volume0 gluster-server-2:/data/brick1/volume0 gluster-server-3:/data//brick1/volume0 force

#备注 这里使用force参数是因为我没有使用挂载磁盘,而是使用的root分区下的一个目录,不然会报错
#volume create: volume0: failed: The brick gluster-server-1:/data/brick1/volume0 is being created in the root partition. It is recommended that you don't use the system's root partition for storage backend. Or use 'force' at the end of the command if you want t

gluster volume start volume0 
   #volume start: volume0: success

gluster volume info
	Volume Name: volume0
	Type: Replicate
	Volume ID: 8936cef1-125b-4689-963c-b558725925bc
	Status: Started
	Snapshot Count: 0
	Number of Bricks: 1 x 3 = 3
	Transport-type: tcp
	Bricks:
	Brick1: gluster-server-1:/data/brick1/volume0
	Brick2: gluster-server-2:/data/brick1/volume0
	Brick3: gluster-server-3:/data/brick1/volume0
	Options Reconfigured:
	transport.address-family: inet
	nfs.disable: on
	performance.client-io-threads: off

7. 配置客户端,测试存储卷

yum install centos-release-gluster -y
yum -y install glusterfs glusterfs-fuse

mkdir /volume0
mount -t glusterfs gluster-server-1:/volume0  /volume0

[root@gluster-client-1 glusterfs]# df -h
	...
	gluster-server-1:/volume0  100G  2.1G   98G   3% /volume0

[test]
for i in `seq -w 1 100`; do cp -rp /var/log/messages /volume0/copy-test-$i; done

ls -lA /volume0/copy* | wc -l
100

[任意server节点]
备注:因为我们是3副本模式,只有3个brick,所有每个节点上都能看到全部100个文案
ls -lA /data/brick1/volume0/copy*

到这里,glusterfs的服务端集群安装配置以及客户端测试已经完成,默认配置的安装还是很简单的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值