在IT技术快速发展的今天,虚拟化技术日趋成熟,由于其在资金节省和IT效率提高上的优势日益明显,越来越多的企业也开始部署虚拟化平台。在企业环境中部署虚拟化平台的存储系统时,在考虑到性能的同时,还要充分考虑负载均衡和高可用性,这是确保整个虚拟化基础平台能够提供高质量可靠服务的基础。本文主要以VMware vSphere环境下的IBM DS5100为例来介绍如何进行存储设备的HA构架和配置,文章主要包括如下几个主要内容
IBM DS5100的基本内部结构介绍
高可靠性SAN构架设计
光纤交换机Zone的设计和配置(基于IBM Storage Area Network Web Tool)
存储系统Array、LUN的设计和配置(基于IBM System Storage DS Storage Manager)
示例环境介绍
在概述部分已经提到,本文主要以VMware vSphere 4.1环境下的DS5100为例来介绍存储的HA架构和配置,下面图1则是的笔者要介绍的虚拟化架构环境SAN组网示意图。
▲图1 SAN网络示意图
在图1中,在整个架构中包括三种类型的设备,Host Server, SAN Switch和Storage System。Server Group中的Host Server是用于部署vSphere4.1的应用服务器,用于运行所有的虚拟机,每一个Server Group在VMware环境中会配置为一个Cluster,每个Cluster中的所有机器会共享一定的存储空间。上图中的Storage System为这些应用服务器提供虚拟化需要用的存储空间, SAN Switch则是实现了Host Server和Storage System的连接。为了实现SAN网络上的高可用性,所有的Server和Storage System同时连接两台SAN Switch。在上述的虚拟化环境下, 每个Server Group只连接一个Storage System,Server Group 1/2/3分享Storage System1上面的存储空间,Server Group 4/5/6分享Storage System2上面的存储空间。在后面的组网、架构设计和配置时,会依据这个组网结构为基础进行说明。
IBM DS5100的基本内部结构
IBM System Storage DS5000系列磁盘存储系统是IBM的中端高性能磁盘存储系统,集成度非常高,从架构上能够支持线性的可扩张性,同时也能够非常容易的根据用户需求来进行负载均衡的定制,来实现高IOPS和MBPs的要求,能够在支持大容量的同时保证优异的性能,非常适合于虚拟化和整合。
为了有效的提升存储的I/O性能并做到高可靠性,就需要设计一套符合该存储特点的组网模式,因此,我们需要先大概了解一下DS5100的基本内部结构,在此基础上,便可以设计出能够充分发挥其优势的架构连接模式。如图2所示,DS5100主柜有两个相同的Controller模块,每个Controller模块有8个磁盘通道端口(红框部分,连接存储扩展柜),共分为4组,每一组的2个端口是通过一个回路开关(loop Switch)来控制的。每个Controller模块还有8个主机连接端口(篮框部分,连接主机或者SAN Switch),这8个主机连接端口由2个主机接口卡提供,每个卡上有4个端口,所有这些端口可以根据需要定制为4GB FC接口或者8GB FC接口。
▲图2 DS5100主机后面板接口示意图
DS5100的两个Controller模块之间通过内部连接模块连接,能够实现快速有效的控制交互和数据传输。每个Controller模块内部有一个专有ZIP ASIC芯片,该芯片被设计于专门支持I/O操作,来计算RAID的冗余信息,通过这个芯片来实现基于硬件的奇偶校验计算,这样会比通过软件计算快很多,这能够有效的保证整个系统的性能。
图3是DS5100的内部机构示意图,从图中可以看到,每个DS5100 Controller内部的磁盘通道端口模块和主机连接端口模块以Zip Processor模块为枢纽实现了内部连接,在DS5100内部这些通信是通过PCI Express总线来实现的。每个Controller模块的两个主机接口卡提供了8个主机接口,两个4口的4GB FC芯片组来连接磁盘通道接口, 其中一个4口4GB FC芯片组通过回路开关(loop Switch)连接本Controller模块上面的8个磁盘通道接口,另一个4口的4GB FC芯片组连接另外一个Controller模块上面的8个磁盘通道接口。
同理,另外一个Controller模块上的两个4口4GB FC芯片组也通过回路开关分别连接两个Controller模块上的16个磁盘通道端口。这样,就可以实现每个Controller都可以随时访问16个磁盘通道端口,每个主机接口通道的数据,都可以通过主机接口卡、Zip Processor模块、4口的4GB FC模块和回路开关来连接所有的磁盘通道接口。DS5100内部的处理芯片会根据各个通道接口的负载、扩展柜的连接情况、LUN的划分情况和数据读写目的来判断如何进行分流和回路开关的控制,最大程度上实现负载的均衡。
▲图3 DS5100主机内部结构示意图
提示:试试“← →”可以实现快速翻页
高可靠性的SAN架构设计:主机与扩展柜链接
1.存储系统主机和扩展柜的连接
通过上一节DS5100的内部结构介绍可以了解到,DS5100有2个Controller,多个内部模块和端口,要实现高可靠性的架构,就必须要充分考虑冗余和负责均衡,即应该把主机通信和存储扩展柜的连接尽量的分布到所有的模块,芯片组和端口。
在连接磁盘存储扩展柜时,考虑到冗余和负载均衡,每个扩展柜都要同时连接Controller A和Controller B。同时考虑相邻的磁盘通道端口是通过一个回路开关控制,因此,建议使用如图4所示的配对方式。这样,在只有4个存储扩展柜的时候,可以采用图5所示的连接方式,可以完全使用所有的内部模块和回路开关模块。当存储扩展柜有8个时候,采用图6所示的连接方式,这样会使用了全部的磁盘通道端口。当扩展柜的数量大于8个时候,就需要两个或多个扩展柜先串联,然后再按照图6的方式连接到主柜。
▲图4 DS5100存储柜连接配对图
▲图5 四个扩展柜时连接示意图
▲图6 八个扩展柜时连接示意图
提示:试试“← →”可以实现快速翻页
高可靠性的SAN架构设计:存储与SAN Switch连接
2.存储主机系统和SAN Switch的连接
在图1所示的组网示意图中提到,该环境里面是有两套存储系统和两个SAN Switch,每个存储系统将会支持3个Server Group.为了实现高可用性和负载均衡,两个DS5100主机需要同时连接两个SAN Switch。考虑到在可能的SAN Switch损坏或者某个Controller损坏的情况下还能够实现一定的负载均衡,建议采用如图7所示的连接方式,每个Controller的两个主机接口模块分别连接不同的SAN Switch,即两个Controller的1~4号主机连接端口连接到SAN Switch1, 5~8号主机连接端口连接到SAN Switch2。在这种情况,若任何一个SAN Switch损坏,DS5100的Controller A和Controller B还是能够有效的进行负载均衡;若DS5100的任何一个Controller损坏,两个SAN Switch也能够进行负载均衡。极端情况下,任何一个SAN Switch和一个Controller同时损坏的情况下,还是能够实现Host Server到DS5100存储系统的路径可达。
为了便于理解,在图7仅仅列出一个DS5100和2台Host Server跟SAN Switch的连接方式, 第二个DS5100和其他所有的Host Server也采用类似的方式同时连接。
SAN Switch的选择:在保证系统接口速度满足的基础上,要保证有足够的端口数,连接两个DS5100总共需要16个端口,连接Host Server时,每个Host Server只需要一个端口。
▲图7 SAN Switch组网示意图(1个DS5100和部分host Server)
3.Host Server和SAN Switch的连接
同存储主机系统类似,为了保证Host Server的高可用性,每个Host Server都配置了两个HBA光纤适配卡,两个HBA卡分别连接SAN Swith1和SAN Switch2.如图7所示。为了便于在SAN Switch上的配置,也为了便于后期的维护和纠错,建议每个Host Server的两个HBA接口连接到两个SAN Switch的相同编号的接口上。
光纤交换机Zone的设计
把DS5100和Host Server都连接SAN Switch后,整个SAN网络的物理连接部分基本完成。要实现所有的Host Server能够方便的连接到所需要的存储空间,同时要保证高可靠性和负载均衡,在光纤交换机和存储内部的配置也非常关键,本节先介绍光纤交换机想过的设计和配置。
1.光纤交换机Zone的设计
在SAN网络中,Zone是一个非常重要的概念,非常好的设计和配置Zone,能够消除许多潜在的常见问题,同时还能够保证充分发挥系统的性能。FC SWITCH上的Zone功能类似于以太网交换机上的VLAN功能,它是将连接在SAN网络中的设备(主机和存储),逻辑上划到为不同的区域内,使得不同区域中的设备相互间不能通过网络直接访问,从而实现网络中的设备之间的相互隔离。由于本文描述的场景是用于虚拟化的场景之下,有效的配置Zone还能够在保障性能的同时减低Host Server上面Multipath的数量,优化Host Server上vSphere的寻址管理能力。
在这里,我们推荐一个创建Zone的最佳实践,那就是为每一个主机到存储的连接单独创建一个Zone,在图7中可以看到,每个DS5100存储的Controller A和Controller B分别有4个FC主机接口连接到SAN Switch上,因此,在创建Zone的时候,在SAN Switch上面,我们应该为每个Host创建至少2个Zone,分别连接到相应存储的Con