Skip to content

GlusterFS 部署

环境准备

系统类型配置磁盘IP地址主机名所需软件
openEuler 24.03(LTS)2C4G500GB192.168.148.120gfs-data01glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
openEuler 24.03(LTS)2C4G500GB192.168.148.121gfs-data02glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
openEuler 24.03(LTS)2C4G500GB192.168.148.122gfs-data03glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
openEuler 24.03(LTS)1C2G-192.168.148.123gfs-clientglusterfs glusterfs-fuse

部署步骤

  1. 配置主机之间的解析(在此所有主机配置相同,在此只列举data1节点的配置);
  2. 在所有data节点上安装GlusterFS(在此所有主机配置相同,在此只列举data1节点的配置);
  3. 在data1节点上进行创建集群,其他节点会同步配置;
  4. 在多个data节点创建数据存储的位置;
  5. 在data1节点创建数据存储的卷(复制卷),其他节点会同步配置;
  6. 在client客户端节点上安装gluster客户端工具并测试挂载;
  7. client客户端节点测试存放文件;
  8. 扩展:Gluster的管理命令;

配置主机之间的解析(所有主机)

bash
cat >> /etc/hosts << EOF
192.168.148.120 gfs-data01
192.168.148.121 gfs-data02
192.168.148.122 gfs-data03
192.168.148.123 gfs-client
EOF

# 测试
ping gfs-data01 -c 2

磁盘格式化

所有data节点执行

bash
# XFS格式化
parted

# 为每个节点添加存储磁盘(如 /dev/sda、/dev/sdb),分区并格式化为 XFS 文件系统:
mkfs.xfs /dev/sdb1

# 创建挂载目录并配置永久挂载(编辑 /etc/fstab)
mkdir -p /data
echo "/dev/sdb1 /data xfs defaults 0 0" >> /etc/fstab
mount -a

安装GlusterFS

所有data节点执行

bash
dnf -y install glusterfs glusterfs-server glusterfs-fuse

# 启动服务
systemctl start glusterd

# 开机自启
systemctl enable glusterd

# 检测进程
ps -aux | grep glusterd

创建集群

在data1节点上进行创建集群

bash
# 添加节点1
gluster peer probe gfs-data01
# 添加节点2
gluster peer probe gfs-data02
# 添加节点3
gluster peer probe gfs-data03

# 查看集群状态
gluster peer status

存储卷配置

bash
# 所有data节点执行
mkdir -p /data/gfs-volume

# 查看存储卷信息
gluster volume info

# 创建存储卷(任意data节点执行)
gluster volume create gfs-volume replica 3 \
    gfs-data01:/data/gfs-volume \
    gfs-data02:/data/gfs-volume \
    gfs-data03:/data/gfs-volume \
force

# 启动卷
gluster volume start gfs-volume

客户端测试

安装软件

bash
dnf install glusterfs-client -y

挂载gfs

bash
mkdir /data
echo 'gfs-data01:/rep-volume  /data  glusterfs  defaults,_netdev  0 0' >> /etc/fstab
mount -a

验证挂载

bash
df -Th
touch /data/{1..10}.txt
# 到data节点查看是否生成