IT运维管理,创造商业价值!
中国IT运维网首页 | 资讯中心 | 运维管理 | 信息安全 | CIO视界 | 云计算 | 最佳案例 | 运维资源 | 专题策划 | 知识库 | 论坛

采购指南:搭建企业级iSCSI SAN 有门道

2008年04月03日
/

  当你历尽艰辛说服主管筹得iSCSI SAN计划的资金,当你踌躇满志地想为数据中心的每个服务器集群配备SCSI磁盘阵列,或是某台服务器负载超出了内部存储的速度,你不得不考虑升级,这时的你大概就想着要组建梦寐以求的iSCSI阵列,并迫不及待对管理层许诺要建立起内部统一高速的以太网来。

  听我一言,且慢实施你的规划。因为也许你会认为iSCSI通过现有的网络加以改造就能无需花费太多精力去实现。然而,有些问题却使我们冷静下来。现有的网络应用都是在假定网络连接有失败这个前提下设计的,而操作系统则从不认为它的磁盘驱动器会有无法访问的时候。两者的冲突使得只要网络上有一台中毒的笔记本占用着带宽,哪怕仅仅只有几分钟,都会使得服务器访问它们的磁盘变得困难重重。不难看出,建立iSCSI SAN的首要条件就是将iSCSI的通信搭建在专有的VLAN(虚拟局域网)上,最好是选择独立的千兆网络。

  交换机的选择

  企业级的交换机对于iSCSI显得必不可少。我曾将一个低端的24口的千兆交换机用以iSCSI:1-16端口连接服务器,18-24端口连接磁盘设备,并把它置于10M集线器连接起的以太网中,结果千兆交换机很快地过载,导致了数据包的大量丢失及性能的急剧下降。原因在于用户级的交换机不支持多端口间的线速交换功能,所以在传输过程中会发生无提示的丢包情况。

  所以还是得选择企业级非阻塞型的交换机,比如Extreme Networks和Foundry Networks公司出品的交换机。即便选择了正确的交换机,我们还需意识到如果服务器与交换机仅有单一的千兆路线连接,那么磁盘阵列的访问也将面临失败的风险。也许电缆上一次小的故障,交换机端口略微的松动,都可能导致线路的中断。后果可能会使数据丢失,应用中断,更严重的是使你的数据库陷入崩溃。

  自Kalpana的10M以太网交换机以来,服务器管理员就开始应用NIC teaming技术来降低单网卡端口连接带来的风险,同时这种技术又增加了服务器和网络间的带宽。后来大部分的服务器网卡的驱动又增添了功能:当多个网卡连接到同一交换机时,传输负载可以在这多个网卡间自动保持平衡。这些使得服务器和交换机端口间的连接中断的风险大大降低,但并不能消除由于交换机故障带来的中断风险。

  当一个SAN交换机出现单点故障时,对于数据中心的影响就好像中子弹的爆炸。你的设备都外表完好无损的摆着,然而内部所有的连络完全陷入了中断,数据资料彻底无法访问,死寂般地好似失去灵魂的人。我们不想看到这一幕的发生,宁愿相信交换机厂商那50,000小时平均无故障运作时间的承诺,然而我们又都知道故障总是在最糟糕的时候发生。

  目前来说最佳的解决方案是MPIO(多路径输入输出),它可以使得iSCSI接口和磁盘阵列间建立起多重连接,并能指定数据传输的以太连接和路径。因为MPIO运行在第三层上,所以不像运行在第二层上的NIC teaming技术需要所有的连接必须处于同一个广播域中,它给服务器的每一个以太网卡都分配了独一的IP地址,所以连接可以在不同的子网间建立。

  MPIO能为iSCSI initiator所支持,大部分情况下无须额外的费用。但有些磁盘存储生产商,如EMC和Network Appliance,对于在它们的磁盘阵列中使用MPIO的用户需要购买额外的MPIO驱动。

  综上所述,你最好要为重要的应用程序而增加交换机的数量,而且每个服务器与磁盘阵列的连接至少有两个。除此之外,连接带宽也必须足够大,以便当发生磁盘阵列与交换机的连接失败时,能承担起服务器与磁盘阵列间所有数据的传输。

  Jumbo Frames的应用

  目前,iSCSI和存储厂商都努力在iSCSI SAN上应用”Jumbo Frame”技术。早在以太网还是处于半双工的网络时,最大的帧规定为1,500比特,这是为了确保任一节点不独占整个网络的带宽。但问题是现在的主机服务器操作系统从硬盘读写的单位为一簇4KB,甚至于更大。如果帧传送的大小不能超过1,500b时,那么iSCSI数据就必然需要成倍的提高发送频率才能满足需要。然而这又导致了TCP/IP协议栈占用CPU过高情况的发生,因为数据的分割、校检、组合等过程处理的帧大大增加。小数据包也导致了带宽易被占用的情况,因为更多的时间花在了帧之间的间隔上,并且帧报头的处理和校检也需要时间。

  为了解决这个问题,现在的企业级千兆以太网设备都不同程度地支持了Jumbo Frame。我们发现应用了Jumbo Frame的iSCSI性能表现上提高了5%左右,同时服务器CPU的利用率降低了2-3%。虽然这其中CPU利用率这一项也可能有TOE和HBA的“减负”作用在内,但总的说来,Jumbo Frame的应用提高了整体的性能。

  应用Jumbo Frame,首先要确保所有iSCSI网络上的设备,包括交换机、网络接口卡和目标设备等的最大帧尺寸设为相同。Jumbo Frame没有统一的最大尺寸,通常设备支持的范围在9,000 byte到16KB。但是,如果将服务器或存储阵列的最大帧尺寸设的大于交换机的话,通常你的iSCSI系统表现上会更好一些。当然,一旦你的传输数据超过了交换机的最大帧尺寸,还是会发生磁盘I/O错误。

  网卡的选择

  虽然大部分的操作系统支持iSCSI软件网卡接口,所以原则上容许任何以太网卡用来连接服务器和iSCSI磁盘阵列,但我们并不推荐你使用旧式的千兆以太网卡。旧式网卡主要针对的是工作站,而工作站内部通信主要是靠带宽仅达千兆的32位PCI总线,网卡需要和其他是设备共享总线通道。而服务器以太网卡使用的是速度快的多的PCI-X或PCI-E总线通道,并有板载硬件TCP/IP校检和装卸,这能降低CPU处理iSCSI数据的利用率,如Broadcom的NetXtreme板载控制芯片就被大多数服务器所采用。

  另外,即使是选用了新型的网卡,一定要注意给它安装上生产商特定的驱动,因为Windows自带的驱动通常不支持网卡的高级功能,如Jumbo Frame和TCP校检和装卸。

  如果选用了Alacritech或Chelsio公司的TOE卡,那么它的功能则更为强大。首先,它的卡载处理器能从硬件上处理TCP的分割和再组装,还有校检计算等。其次,TOE卡还能加速任一形式的TCP交通,并能与软件模拟的以太网卡并行工作。而像QLogic和Adaptec出品的iSCSI HBA,不仅能支持TCP管理中的装卸,甚至能支持更高级的iSCSI协议。这对主机操作系统而言,更像是一个磁盘控制器,而不仅仅是一个以太网卡了。

发表评论请到:http://bbs.cnitom.com

相关阅读

图文热点

企业实施云计算的最大优势是什么?
企业实施云计算的最大优势是什么?只要你最近没有像鸵鸟那样把头埋进沙子里,那你肯定听说过云计算。云计算可以定义...

本类热点