服务器GlusterFS配置实战:从安装到卷创建与客户端挂载
GlusterFS是一套可横向扩展的分布式文件系统,适合把多台服务器的本地磁盘聚合成一个共享存储池。
本文以两台CentOS 7服务器为例,讲清服务器GlusterFS配置的完整步骤:从环境准备、安装、组池、建卷到客户端挂载和验证。
环境准备与主机解析
准备两台服务器,分别作为存储节点,假设IP为 192.168.1.10 和 192.168.1.11,主机名设为 node1 和 node2。
每台服务器至少挂载一块独立数据盘,例如 /dev/sdb,用于存放GlusterFS数据。
先在所有节点配置主机名解析,保证互相能通过主机名通信:
echo "192.168.1.10 node1" >> /etc/hosts
echo "192.168.1.11 node2" >> /etc/hosts
关闭防火墙或放行GlusterFS所需端口。
测试环境可直接停用firewalld:
systemctl stop firewalld
systemctl disable firewalld
生产环境建议放行 24007、24008 以及 49152-49251 等端口。
安装GlusterFS服务
在 node1 和 node2 上分别执行以下命令,添加官方仓库并安装服务端:
yum install -y centos-release-gluster
# 根据系统版本选择,例如 glusterfs-server-9
yum install -y glusterfs-server
systemctl start glusterd
systemctl enable glusterd
检查服务状态,确认 active (running):
systemctl status glusterd
如果启动失败,优先查看 /var/log/glusterfs/glusterd.log 中的报错。
组建信任存储池
在任意一个节点执行加入操作,将另一台服务器加入集群。
以下命令在 node1 上运行:
gluster peer probe node2
查看池状态,两个节点都应显示 Peer in Cluster 且状态为 Connected:
gluster peer status
如果显示 Disconnected,先检查主机名解析、网络连通性和 glusterd 服务是否正常运行。
创建复制卷
先在两台服务器上创建数据目录,例如:
mkdir -p /data/gluster/brick1
在 node1 上创建复制卷 replica-vol,副本数为2,保证数据在两节点各存一份:
gluster volume create replica-vol replica 2 node1:/data/gluster/brick1 node2:/data/gluster/brick1 force
启动卷:
gluster volume start replica-vol
查看卷信息,确认 Status: Started 且 Number of Bricks: 1 x 2:
gluster volume info replica-vol
若提示brick目录非空或已属于其他卷,需要清理后重试。
客户端挂载与读写验证
在需要访问存储的客户端服务器上安装客户端软件:
yum install -y glusterfs glusterfs-fuse
创建挂载点并挂载卷:
mkdir -p /mnt/glusterfs
mount -t glusterfs node1:/replica-vol /mnt/glusterfs
写入测试文件并检查两个节点是否同步:
echo "gluster test" > /mnt/glusterfs/test.txt
ls /data/gluster/brick1/
在 node1 和 node2 的brick目录下都应看到 test.txt。
若未同步,用 gluster volume heal replica-vol info 查看待修复条目。
常见故障与避坑要点
- peer probe失败:多半是主机名无法解析或防火墙未放行,先用
ping node2和telnet node2 24007测试。 - 卷启动失败:检查brick目录是否存在、权限是否为
root或对应用户,以及是否已被其他卷占用。 - 客户端挂载超时:确认客户端能解析存储节点主机名,并放行
24007、24008和49152-49251端口。 - 数据不同步:复制卷依赖两节点在线,节点离线后重新上线需触发自愈,可用
gluster volume heal replica-vol full手动修复。 - 生产环境不要用force参数:
force会忽略目录非空等检查,仅建议测试时使用。
收尾检查
完成服务器GlusterFS配置后,建议做三项复查:gluster peer status 确认节点互联,gluster volume info 确认卷状态为 Started,客户端实际写入文件确认两个brick目录都有数据。
这套基础配置适合内部文件共享和备份存储,后续可根据需要调整副本数或增加节点扩展容量。