多路径乒乓效应导致数据库无法访问

发布时间:  2014-09-23 浏览次数:  1180 下载次数:  38
问题描述
某局点Oracle RAC数据库业务,双机通过多路径使用存储资源。存储设备上有一个LUN0映射给双机使用,但数据库双机中的一台应用服务器无法访问。
产品及版本相关信息:
  • S5000系列
  • 应用服务器为华为ATAE单板
  • 操作系统版本为SUSE 9 SP3
  • 多路径版本为UltraPath for Linux V100R002C01
     
告警信息
无。
处理过程
1. 在命令行下运行upadm show option命令查看Failover功能是否关闭。
# upadm show option
详细信息显示如下:
maxlun = 256
maxpath = 4
maxcontroller = 8
maxarray = 30
failback_interval = 60
optimal_path_check_interval = 60
failed_path_check_interval = 30
iopolicy = round_robin
lbcontroller = off
failover = on
maxtargetid = 512

2. 若failover显示为on,请运行upadm set failover=off命令将Failover功能关闭。
# upadm set failover=off
3. 运行upadm start updateimage命令更新多路径配置。
# upadm start updateimage
4. 运行upadm show option命令确认多路径failover是否已经关闭。
# upadm show option
详细信息显示如下:
maxlun = 256
maxpath = 4
maxcontroller = 8
maxarray = 30
failback_interval = 60
optimal_path_check_interval = 60
failed_path_check_interval = 30
iopolicy = round_robin
lbcontroller = off
failover = off
maxtargetid = 512

----结束
根因
  1. 分析日志发现两台应用服务器都有大量多路径切换LUN0访问路径信息。
  2. 分析日志信息,发现DB1主机到存储设备的A控链路处于Link Down状态。
  3. 分析日志信息,发现DB2与A控链路也处于Link Down状态。 此时存储设备LUN0正在频繁切换工作控制器,数据库日志显示I/O超时。
    由此得出结论:
    多路径乒乓效应导致存储设备反复来回切换LUN的工作控制器,导致数据库无法访问。
     
建议与总结
  • 请不要将一个LUN同时映射给两台及以上应用服务器。
  • 如果在特定应用场景要将LUN同时映射给两台应用服务器,则要在应用服务器上安装集群软件并配制集群预留。
    其它环境下的乒乓效应,参照本案例思路处理,关闭failover功能.
     

END