环境
操作系统:centos8
gluster 9版本
server22 192.168.6.22 gluster-server
server23 192.168.6.23 gluster-server
server26 192.168.6.26 gluster-client
提前关闭防火墙
准备磁盘
在22 23节点上准备一个新磁盘 /sdc,
使用 XFS 文件系统格式化磁盘
mkfs.xfs -i size=512 /dev/sdc
/data/brick1 目录挂载到 /dev/sdc磁盘, fstab文件是开机启动挂载
mkdir -p /data/brick1
echo '/dev/sdb1 /data/brick1 xfs defaults 1 2' >> /etc/fstab
mount -a && mount
也可以用ext4格式化
sudo mkfs.ext4 /dev/sdc
mkdir -p /data/brick1
echo '/dev/sdb1 /data/brick1 ext4 defaults 1 2' >> /etc/fstab
mount -a && mount
服务端
编辑源 vim /etc/yum.repos.d/glusterfs.repo, gpgcheck=就是不校验
[myglusterfs]
name=glusterfs
baseurl=https://buildlogs.centos.org/centos/8-stream/storage/x86_64/gluster-9/
enabled=1
gpgcheck=0
这里有其他版本:Index of /centos/8/storage/x86_64
在22 23 节点安装软件
yum install glusterfs-server
有时会报错 nothing provides python3-pyxattr needed by glusterfs-server-8.3-1.el8.aarch64
手动安装这个包
wget https://buildlogs.centos.org/centos/8/storage/x86_64/gluster-9/Packages/p/python3-pyxattr-0.5.3-18.el8.x86_64.rpmyum install -y python3-pyxattr-0.5.3-18.el8.x86_64.rpm
再安装gluster-server
启动 GlusterFS 管理守护进程:
service glusterd start
检查守护程序的状态:
service glusterd status
配置受信任池,从“server22”执行
gluster peer probe server23
检查 server1 上的对等体状态
gluster peer status
看到如下:
Number of Peers: 1
Hostname: server23
Uuid: d9c71ac7-c155-4594-a848-2c820b52190f
State: Peer in Cluster (Connected)
设置卷
卷类型有多种,这里设置 “复制卷”,这样就有高可用性
在所有服务器上:
mkdir -p /data/brick1/gv0
从任何一台服务器:
gluster volume create gv0 replica 2 server22:/data/brick1/gv0 server23:/data/brick1/gv0
成功操作后,您应该会看到类似以下内容:
volume create: gv0: success: please start the volume to access data
- 然后启动新创建的卷:
gluster volume start gv0
查看卷信息:
gluster volume info
客户端
在26节点执行
# 将FUSE可加载内核模块(LKM)添加到Linux内核
modprobe fuse
# 验证是否已加载FUSE模块
dmesg | grep -i fuse
# 安装glusterfs-client客户端
yum -y install glusterfs-client
# 创建挂载目录
mkdir /mnt/gluster
# 挂载/gv0
mount -t glusterfs server22:/gv0 /mnt/gluster
此时26的/mnt/gluster目录 就挂载到了 创建的卷gv0上,在26目录里创建的文件在22,23的 /data/brick1 目录下会出现