文件服务器层 NFS 部署 — RPC 原理、export 配置、高可用方案
概述
Day32 是 NFS 的实操部署篇,深入 RPC 通信机制(服务注册与寻址、版本协商、传输协议选择)、NFS 共享导出配置(export 选项详解:rw/ro、sync/async、wdelay/no_wdelay、subtree_check)、服务端与客户端配置示例、以及基于 Keepalived + Rsync 的 NFS 高可用方案。
核心内容
RPC(Remote Procedure Call)
- 进程:
rpc.statd(状态监控)、rpc.mountd(挂载认证)、rpc.nfsd(NFS 服务本身)、rpcbind(端口映射) - 通信流程:客户端请求 → rpcbind(查端口)→ NFS 服务端 → 本地文件系统
export 核心选项
rw/ro:读写/只读sync/async:sync 更安全但慢,async 性能高但有丢数据风险wdelay/no_wdelay:多写合并 vs 立即写入subtree_check/no_subtree_check:跨子目录检查 vs 跳过root_squash/all_squash:root 降级为普通用户 / 所有用户降级
客户端挂载
mount -t nfs server:/share /local/mount/etc/fstab配置自动挂载netstat -r查看 NFS 连接状态
NFS 高可用方案
- Keepalived:虚拟 IP(VIP)漂移,故障自动切换
- Rsync:主备数据同步(
rsync -avz) - 脑裂风险:使用
nfs-paxos或第三方仲裁