NFS存储超时导致XenServer重启
2015-02-12 by dongnan
环境
CloudStack 4.4
XenServer 6.2
问题描述
XenServer 集群三次无故重启,先后排除UPS
电源、服务器硬件设备、网络设备等。
所有服务器同时重启,查看系统日志发现大量 nfs: server 10.0.0.X not responding, timed out
NFS 服务器IOwait
等待严重
问题原因
发现如果 xenserver
无法得到 nfs
存储响应,会尝试多次连后由 heartbeat
守护进程自动重启服务器。
Feb 11 09:51:04 xen-34 heartbeat: Potential problem with
/var/run/sr-mount/7c71a215-8b19-d623-2f99-88654be0cfaa/hb-0021f92c-b3cc-4180-b1a7-a9082a347aee:
not reachable since 26 seconds ..
#...省略
Feb 11 09:51:51 xen-34 heartbeat: Problem with
/var/run/sr-mount/7c71a215-8b19-d623-2f99-88654be0cfaa/hb-0021f92c-b3cc-4180-b1a7-a9082a347aee:
not reachable for 73 seconds, rebooting system!
解决方法
- 临时调整
NFS
写入磁盘策略由sync
同步写入 变更为async
异步写入,注意async
存在数据丢失的风险。 - 更换存储设备。
关于NFS的缓存IO机制
sync
,代表资料会同步写入到内存与磁盘中。async
,则代表资料会先暂存于内存当中,而非直接写入磁盘。
参考
配置NFS服务器