glusterfs在linux中可通过五种方式安装:一、系统默认仓库;二、添加专用glusterfs仓库;三、离线rpm/deb包手动安装;四、源码编译;五、容器化部署,各适用于不同网络与环境需求。

如果您计划在Linux系统中部署GlusterFS分布式存储,但客户端或服务端无法正常安装GlusterFS软件包,则可能是由于源配置缺失、依赖冲突或系统环境不兼容所致。以下是多种可行的安装方法:
一、使用系统默认仓库安装(适用于联网且支持官方GlusterFS源的发行版)
该方法适用于具备网络连接、且发行版仓库已集成GlusterFS包的环境,如较新版本的Ubuntu或启用PowerTools的CentOS 8。它能自动处理依赖关系,部署快捷。
1、更新系统软件包索引:sudo apt update(Ubuntu/Debian)或 sudo yum makecache(CentOS/RHEL 7)或 sudo dnf makecache(CentOS/RHEL 8+)。
2、安装GlusterFS服务端(集群节点):sudo apt install glusterfs-server -y(Ubuntu/Debian)或 sudo yum install centos-release-gluster -y && sudo yum install glusterfs-server -y(CentOS 7)。
3、安装GlusterFS客户端(仅需挂载的机器):sudo apt install glusterfs-client -y 或 sudo yum install glusterfs-fuse -y。
4、启动并启用glusterd服务:sudo systemctl start glusterd && sudo systemctl enable glusterd。
二、添加专用GlusterFS仓库后安装(推荐用于生产环境的稳定版本控制)
此方式可精确指定GlusterFS主版本(如10.x、11.x),避免系统默认源中过旧或不稳定的包,确保集群节点间版本一致。
1、对于Ubuntu 18.04/20.04,执行:wget -O- https://download.gluster.org/pub/gluster/glusterfs/10/rsa.pub | sudo apt-key add - && sudo add-apt-repository ppa:gluster/glusterfs-10。
2、对于CentOS 7,执行:sudo yum install centos-release-gluster10 -y。
3、刷新仓库缓存并安装:sudo apt update && sudo apt install glusterfs-server -y(Ubuntu)或 sudo yum install glusterfs-server -y(CentOS)。
4、验证安装版本:gluster --version,确认输出为glusterfs 10.x.x或指定目标版本。
三、离线RPM/DEB包手动安装(适用于无外网、高安全隔离或定制化内核环境)
当目标服务器处于封闭网络时,需预先下载对应架构与发行版的完整依赖链RPM或DEB包,并按依赖顺序安装,规避网络不可达导致的中断。
1、在可联网机器上,使用yumdownloader(CentOS)或apt download(Ubuntu)批量获取glusterfs-server及其依赖:yumdownloader --resolve glusterfs-server。
2、将所有.rpm文件拷贝至目标服务器的/gfs目录,并执行:sudo rpm -Uvh /gfs/*.rpm --nodeps(首次安装可跳过依赖检查)。
3、若提示缺失关键依赖(如libxml2、userspace-rcu),需单独补装对应基础库RPM后再重试主包安装。
4、安装完成后,手动创建必要目录并授权:sudo mkdir -p /var/lib/glusterd && sudo chown -R root:root /var/lib/glusterd。
四、从源码编译安装(适用于需启用特定FUSE参数、调试符号或适配定制内核模块的场景)
源码编译提供最高灵活性,可启用--enable-debug、--with-xlatordir等选项,但要求系统预装gcc、autoconf、automake、libtool及libfuse-dev等开发工具链。
1、安装构建依赖:sudo apt build-dep glusterfs(Ubuntu)或 sudo yum groupinstall "Development Tools" && sudo yum install libxml2-devel openssl-devel fuse-devel rpcgen -y(CentOS)。
2、下载指定版本源码包(如glusterfs-11.1.tar.gz),解压后进入目录执行:./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-fuse --enable-debug。
3、执行编译与安装:make -j$(nproc) && sudo make install。
4、更新动态链接库缓存并注册服务:sudo ldconfig && sudo cp ./extras/systemd/glusterd.service /etc/systemd/system/。
五、容器化安装(适用于快速验证、CI/CD流水线或Kubernetes边缘节点轻量部署)
通过Docker或Podman运行GlusterFS服务容器,无需修改宿主机系统,适合测试卷行为、协议互通性或临时故障复现,但不建议用于生产数据持久化。
1、拉取社区维护镜像:docker pull docker.io/gluster/gluster-centos:latest。
2、运行带绑定挂载的容器实例:docker run -d --name gluster-node --privileged -v /gluster-data:/data -p 24007:24007 -p 24008:24008 docker.io/gluster/gluster-centos:latest。
3、进入容器执行初始化:docker exec -it gluster-node bash -c "glusterd --no-daemon && sleep 5 && gluster peer probe localhost"。
4、确认glusterd进程在容器内持续运行:docker exec gluster-node pgrep glusterd,返回非空进程ID即表示服务就绪。










