在企业环境中,文件共享服务的高可用性至关重要。一旦主服务器宕机,业务可能中断。本文将手把手教你如何在 Debian 系统上搭建一个高可用文件共享系统,使用 NFS 作为共享协议,并通过 Corosync + Pacemaker 实现故障自动切换。即使你是 Linux 新手,也能轻松完成配置。

你需要准备以下资源:
node1 和 node2注意:本教程中的“共享存储”可使用 DRBD、iSCSI 或 SAN。为简化演示,我们将使用一个本地目录模拟共享存储,实际生产环境请务必使用真正的共享块设备。
在两台节点上执行以下命令:
sudo apt updatesudo apt install -y corosync pacemaker nfs-kernel-server drbd-utils fence-agents
确保两台机器能通过主机名互相解析。编辑 /etc/hosts 文件:
# 在 node1 和 node2 上都添加192.168.1.10 node1192.168.1.11 node2在任意一台节点(如 node1)生成 Corosync 配置:
sudo pcs cluster auth node1 node2 -u hacluster -p your_passwordsudo pcs cluster setup mycluster node1 node2sudo pcs cluster start --allsudo pcs cluster enable --all
首次使用前需设置 hacluster 用户密码(两台机器必须一致):
sudo passwd hacluster为简化,我们在两台机器上创建相同路径的目录(实际应使用共享磁盘):
sudo mkdir -p /shared/nfssudo chown nobody:nogroup /shared/nfssudo chmod 777 /shared/nfs
重要提示:生产环境中,请使用 DRBD 或 iSCSI 挂载同一块物理磁盘到两个节点,确保数据一致性。否则切换后数据会丢失!
现在我们通过 pcs 命令配置高可用资源:
# 创建文件系统资源(若使用真实共享磁盘,此处挂载)sudo pcs resource create nfsshare Filesystem \ device="/dev/sdb1" directory="/shared/nfs" fstype="ext4" \ --group nfsgroup# 若仅测试,可跳过文件系统,直接创建 NFS 导出sudo pcs resource create nfsserver systemd:nfs-server --group nfsgroup# 创建虚拟IPsudo pcs resource create virtual_ip IPaddr2 ip=192.168.1.100 cidr_netmask=24 --group nfsgroup# 设置资源启动顺序sudo pcs constraint order start virtual_ip then nfsserver
如果你只是模拟测试(无真实共享磁盘),可使用以下简化命令:
sudo pcs resource create nfsserver systemd:nfs-server op monitor interval=30ssudo pcs resource create virtual_ip IPaddr2 ip=192.168.1.100 cidr_netmask=24sudo pcs constraint colocation add nfsserver with virtual_ip INFINITYsudo pcs constraint order start virtual_ip then nfsserver
编辑 /etc/exports 文件(两台节点都要配置):
/shared/nfs 192.168.1.0/24(rw,sync,no_root_squash,no_subtree_check)
然后重新加载 NFS 配置(Pacemaker 会自动管理服务启停,此步仅为验证):
sudo exportfs -ra查看集群状态:
sudo pcs status你应该看到 nfsserver 和 virtual_ip 在同一节点运行。
从客户端挂载测试:
sudo mount -t nfs 192.168.1.100:/shared/nfs /mnt然后手动关闭当前运行节点(如 node1),观察是否自动切换到 node2。客户端应几乎无感知(短暂卡顿后恢复)。
通过本教程,你已成功在 Debian 上搭建了一个基于 NFS 的高可用文件共享系统。该方案利用 Corosync + Pacemaker 实现自动故障转移,极大提升了服务可靠性。记住,在真实环境中务必使用共享存储(如 DRBD 或 SAN),并配置 STONITH 机制。
掌握 Debian高可用文件共享、NFS高可用集群、Debian HA配置 和 共享存储高可用 这些关键技术,将为你的企业 IT 架构打下坚实基础。
本文由主机测评网于2025-12-06发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025123831.html