详解IBM DS 存储 Failover 的三种模式

简介:

在之前的《IBM DS 存储几种常见的问题(1)》文章中简单描述了failover,提过有时间会写一篇关于failover mode的文章,因此才有了下文。

先来解释下什么是ADT/AVT,同样地,摘录自redbook中的一段话:

ADT is a built-in feature of controller firmware that allows logical drive-level failover rather than controller-level failover .ADT is not a failover driver. ADT provides storage systems with the flexibility to work with certain third-party failover software.ADT是控制器firmware中允许在lun层面上failover而不是在控制器层面上failover。ADT不是failover驱动,它提供存储系统和第三方failover 软件灵活配合。

怎么理解ADT是在lun层面failover,而不是controller层面,请往看下。

根据控制器firmware和多路径软件版本的不同,多路径驱动在控制器failover时会执行不同的动作。有三种failover mode。

1,AVT/ADT(Automatic Logical drive Transfer),如果主机类型被设置为enable AVT/ADT,多路径驱动会将IO重定向到另一个正常的controller。那这个surviving controller会接管lun并处理IO。只有受影响的lun才会切换到另一个controller上。当path恢复后,会自动redistribute lun到preferred controller上。这种模式在7.77.xx.xx及以前的版本被支持。

   如下图,当主机访问lun0时,发现通过A控访问不了,那多路径软件会通过B控来访问lun0,并且只有被访问的lun0会切换到B控上,没有受影响的lun2则不会切换。再回头看看,是不是lun层面的failover?确实是,因为它只是将受影响的lun切换到surviving controller上。

image

2,RDAC failover mode(RDAC mode == non-AVT mode),如果主机类型被设置为disable AVT/ADT或non-AULA,多路径驱动会发出一个”mode page 2C”给surviving controller,让它接管所有的lun,此时所有的lun都会切换到surviving controller上。接着surviving controller就会高高兴兴地接管lun并处理IO。但区别是即使一切都optimal了,surviving controller也不会把lun的控制权交还给之前的controller。霸道吧,此时就需要管理员手动redistribute lun了。这种模式在所有控制器firmware中都支持。

   如下图,当主机通过A控访问lun0和lun2,发现访问不了,多路径软件发出mode page 2C后,B控会把所有的lun都接管过来。而这第2种模式就是和第1种模式对应的controller级别的failover。

image

3,ALUA(Asymmetric Logical Unit Access) mode,在7.83及以后,如果主机被设置为enable ALUA,这就有点复杂了。举个例子,

   如下图,A控还是好的,但是到达A控的路径fail了,这种情况下,如果enable ALUA,那么B控会将IO还交给A控来处理,而不是接管LUN并自己处理IO,这就比较大方了吧,呵呵。当然也不能老是这样“傻大哈”啊,占用自己资源不说,还得不到任何好处。如果这条到达A控path 在过去5分钟之内shipped 超过 75%的IO,那对不起了,B控会将lun“夺”过来,自己处理IO。这样也算得对起A控了。。

   使用了ALUA,那就减少了一些不必要的transfer。

image

总结:(1)、第1种是ADT/AVT enable,第2种是RDAC(ADT/AVT disable),那有人会有疑问了,有没有RDAC(ADT/AVT enable)这种模式呢,答案是No,请看下面一句话:

ADT/AVT is a feature provided with code which help in volume transfer from one controller to another AND only one feature can stay on Host either RDAC from IBM or ADT/AVT enabled from IBM with third party failover driver. If both (RDAC and ADT/AVT enabled) are being used at the same time then Lun thrashing will occur which causes. 即要么是IBM的RDAC(ADT/AVT disabled),要么是ADT/AVT enabled配合第三方failover驱动,两者选其一!


写到这里,有的用户会有问题了,如果客户不使用RDAC,使用自己的multipath driver,那可以么?答案是,如果AVT是enabled,那就可以。如果是disabled,那failover就不会生效,即一旦有路径中断,那就造成lost access了。

Anyway,Be sure that the operating systems are using RDAC when you disable AVT. Otherwise, it loses access to the logical drive, since other systems will not failover properly as their multi-path I/O driver is based on AVT.


image

     (2)、 7.77.xx.xx和之前的firmware支持AVT/ADT和RDAC的failover模式,7.83.xx.xx和以后的版本只支持RDAC和ALUA的模式,不支持AVT/ADT。

     (3)、下面的表格列出了不同OS下哪种failover mode被enable。

image

   (4)、各种主机类型下默认的ADT状态:

image

PS:更多关于IBM DS系列存储的文章,请点击

IBM DS Storage ISCSI Configuration

IBM Copy Service--Flashcopy Introduction

IBM copy service--flashcopy 实验

IBM Copy Service—VolumeCopy

IBM copy service—ERM

IBM DS3500 with Windows 2008 Multipathing

IBM DS Storage--Replace drive option

IBM DS Storage Upgrade Controller Firmware

IBM DS 存储几种常见的问题(1)






本文转自 taojin1240 51CTO博客,原文链接:http://blog.51cto.com/taotao1240/1135679,如需转载请自行联系原作者
目录
相关文章
|
5月前
|
存储 Linux 数据库
服务器数据恢复—IBM存储raid5多盘损坏导致阵列崩溃的数据恢复案例
服务器数据恢复环境: IBM某型号存储,6块sas硬盘组建一组raid5,划分一个lun分配给Linux服务器并格式化为OCFS2文件系统,共享给虚拟化使用,存放的数据包括24台liunx和windows虚拟机、压缩包文件和配置文件。 服务器故障: raid5阵列中成员盘坏了多块,阵列失效,数据丢失。
服务器数据恢复—IBM存储raid5多盘损坏导致阵列崩溃的数据恢复案例
|
11月前
|
SQL 存储 分布式计算
IBM Data Lake:发现事实,数据模式和临时报告
IBM Data Lake:发现事实,数据模式和临时报告
IBM存储增值经销商
本文研究全球及中国市场IBM存储增值经销商现状及未来发展趋势,侧重分析全球及中国市场的主要企业,同时对比北美、欧洲、中国、日本、东南亚和印度等地区的现状及未来发展趋势