正在阅读:锱铢必较 彻底榨干虚拟化iSCSI带宽资源锱铢必较 彻底榨干虚拟化iSCSI带宽资源

2009-08-19 06:42 出处:PConline原创 作者:Heman 责任编辑:heyaorong
1新技术背后的新问题 又爱又恨虚拟化回顶部

    在大力倡导先进技术就是生产力的今天,无论大型数据中心还是一般企业应用,其系统中都能找到虚拟化技术的身影,虚拟化目前正当流行,全世界都认同的三个代表中心思想也让虚拟化技术快速的普及并应用到无数的实际生产环境中。诚然,虚拟化在节省硬件相关的投入和提高闲置服务器使用率方面都有很多的提高,光是看这一点,虚拟化就是无数老板心目中的完美解决方案,能省钱的技术应该是不会有人拒绝的,这也是虚拟化技术一直以来宣称的技术优越性。

新技术背后的新问题 又爱又恨虚拟化

    但是,H总是喜欢说别人不太乐意听到的“但是”。虚拟化有其优越的一面,但是不可否的是虚拟化技术给原先的IT系统带来了巨大的甚至是革命性的架构变化,有位哲人说过的,“变化带来的都是痛苦。”IT管理人员对此是深有所感,他们对于虚拟化可以说是又爱又恨。也不知道是另哪位哲人说过,“爱的原因只有一个,不爱的理由却有千千万万。”

    虚拟化给IT管理人员带来的诸多不适应中显著的一点就是虚拟化独特的管理方式,较从前的他们所熟知的服务器管理和监控方式有了很大的出入。以虚拟化环境的存储系为例, 这种变化尤其明显。企业级虚拟化的Cluster群集的高可用性HA要求虚拟服务器将其虚拟磁盘文件放置于共享存储上面,以此达到满足动态迁移的基本条件。

    此时IT管理人员所不愿意面对的问题就出现了,在非虚拟化环境中,一台物理服务器中运行着一个操作系统,经由一条链路或多条链路连接到交换机,这种环境下网络链路中的流量几乎全部为业务数据流量。但在虚拟化环境下,这一切发生了很大的变化,简单的讲,此时交换机与物理服务器之间的链路中传输的数据流量变得远比以前复杂得多。首先物理链路中将同时传输来自多个虚拟机(VM)中的数据,另外,除了业务数据流量,链路中还增加了虚机机运行时所需要的系统流量,这部分流量是以往非虚拟化环境中所不存在的。

    使用旧有的网络流量监控方式也是无法区分和完全监控物理网络上的同时传递的多个虚拟网络数据,记录物理服务器系统心跳情况和网络端口映射等方式,在虚拟化环境底下基本上都不好用,记录的数据和结果不再是直接显示实际情况,而是叠加不清和重复混乱的数据,如同管道升《我侬词》中描述一般:“你中有我,我中有你”,但系统分析不是谈情说爱,这种纷乱的让IT人员头痛的数据实际上是多个虚拟服务和多种应用程序共同使用一个物理链路所造成,也就是说,在虚拟化系统中,以往同样的工作我们只能使用全新的手段来完成。

 esx
虚拟交换机工作原理

    虚拟服务器会在OS与网卡物理硬件之间创建一个中间层——虚拟交换机(Virtual Switch),就是说一台物理服务器上的各个虚机(OS)通过虚拟交换机可直接进行通信,这部分流量并不会出现在物理交换机上,而是在物理服务器内部被消化掉了。这就给故障排查带来了一些新的挑战,在物理交换机端口上看似正常的流量,而问题可能是被虚拟交换机给掩盖掉了。虚拟化系统中的物理网络产生带宽瓶颈问题变得更为突出,这个以往可能并不存在的问题一下子成了必须要考虑并需要解决的问题。

正确考察应用负载,选择适当虚拟化方案

    上面说到的其实只是虚拟化给网络带宽带来的变化,除此以外,内存磁盘容量和空间、处理器时间、甚至系统总线等等都要一一计算在内。要完全解决这些合理匹配的问题,办法只有一个,就是没有投机取巧的实实在在的进行测试和评估,虚拟化前后的资源使用率是否达到或者超过预期,硬件设备又是否可以提供满足的系统需求。 

2测试系统介绍:回顶部

    PConline企业评测室最近收到了DELL提供的iSCSI存储产品EqualLogic PS6000s,搭配原先的DELL M1000e机箱和M710刀片服务器,搭建起一个模拟企业的虚拟服务器和全千兆网络环境,来验证上面所说的各种隐藏在虚拟化背后的问题。

测试系统介绍:

 dell
Dell EqualLogic PS6000s全部16个盘位

    Dell EqualLogic PS6000s使用的是SSD固态硬盘阵列,其IOps和吞吐性能都远远超越普通硬盘存储产品,完全可以满足各种IO密集和读写吞吐密集型应用服务的苛刻要求。

dell
Dell M1000e机箱和M710刀片服务器

    服务器硬件采用的Dell M1000e机箱和两台M710刀片服务器,使用VMware ESX4配置为两个ESX主机,虚拟服务器在VMware HA和VMware DRS环境中可以实现多个主机之间的动态迁移和高可用特性。

虚拟化环境
使用ESX虚拟化双主机架构

    我们的本意是系统尽量的简化,但能实现基本的Cluster,主机都挂载Dell iSCSI存储作为虚拟的存储系统。简单的系统架构比较方便地监控各个主机、虚机服务器和之间的网络负载,同时也可以预留更多的系统资源用作资源池储备,我们都熟知的木桶短板原理,在系统整体高压力下就会很容易的找到其中最短的那块木板。

3看似简单实际复杂的虚拟网络环境回顶部

表面简单实际复杂的虚拟网络环境

    Dell刀片机箱上附带了两台24口PowerConnect M6220 3层交换机,不过端口主要是用于链接机箱的刀片服务器,背板上外链到主交换机的端口其实也只有少数。

 PowerConnect M6220交换机
PowerConnect M6220

    然后让我们再看看系统中的网络配置,每个刀片配有4个网卡,不过在虚拟化系统中,这等同于4个最多达56口的虚拟交换机,用来分配虚拟网络链接主机上的虚拟服务器。

虚拟网络种类
虚拟网络的三种功能状态

    虚拟网络设备可以指定独占或共享使用物理网络设备,这就意味着一张物理网卡上有可能承载一项数据流量,也有可能是多个数据的共用叠加,另外虚拟网络也分别有三种不同的功能角色赋予不同用途的虚拟链路。

虚拟化环境
ESX主机的虚拟网络配置

    如此这般的经过虚拟化和功能指定的网络,即便每个主机上只有4张物理网卡,但架构拓扑最后也会表达出一个极其复杂的网络关系。 

4iSCSI连接与虚拟文件系统对比测试回顶部

iSCSI启动器连接与虚拟磁盘文件系统对比测试

    Dell EqualLogic PS系列存储设备是基于iSCSI接口的存储产品,iSCSI在目前千兆环境下的链接速度还比不上4Gb或8Gb光纤通道,但iSCSI有一个很显著的优点就是iSCSI基于通用的TCP/IP协议,也就是说,iSCSI设备可以被任何接入网络的服务器所识别,而不管这系统是虚拟服务器还是物理服务器。

    正是上面的原因,对于虚拟服务器和iSCSI存储设备之间就有了两种不同的磁盘挂载方式,一是虚拟主机先与iSCSI设备连接,将iSCSI存储的磁盘资源作为虚拟磁盘划分给其上的各个虚拟服务器使用,对于虚拟服务器来说,存储设备相当于是本地磁盘;第二就是通过iSCSI发起器程序,直接让虚拟服务器与iSCSI存储之间发生通讯,这种方式与物理系统连接iSCSI没有任何的区别。

    虽然上面两个连接方式底层本质上都是通过iSCSI网络进行通信,但是(又是但是),这两种连接方式的性能有一些区别,并且区别还相当的大。衡量存储的性能两个主要指标:IOps和吞吐速度在这两种连接方式下都有很大的性能差异,IOps成绩甚至有接近50%的差别。

  iometer测试
IOps测试结果

    Dell EqualLogic PS6000s的IOps在虚拟服务器不同队列深度的顺序读取IOps性能,iSCSI连接峰值接近75000IOps,而虚拟磁盘文件系统只有40000出头。虚拟磁盘文件性能较为低下这个事实我们早已知道,读写性能下降一半的测试结果也符合我们之前多次测试成绩,因为虚拟磁盘系统会占用部分的虚拟化资源进行驱动和模拟,而iSCSI连接则会动用存储设备本身的控制器性能,对性能的提升都有很大的促进。

iometer测试
吞吐性能测试结果

    吞吐性能的测试结果也是没有意外的由iSCSI胜出,不过对于较为挤占带宽的文件吞吐来说,系统短板应该是出现在千兆的网络连接速度上。从两个吞吐速度来看,虚拟磁盘的速度在100MB左右,这已经是接近千兆网络的全部带宽了。不过测试中有趣和不解的是,Dell EqualLogic PS6000s的吞吐速度长久稳定为144MB/s,这数值大大的超越了千兆的网络速度。  

    但毫无疑问的是此时系统瓶颈出现在网络上,在千兆环境下,iSCSI的链接便利和速度劣势都表现得淋漓尽致。Dell方面曾透露过年底之前会发布万兆的iSCSI产品,也许在万兆连接普及才是iSCSI真正发扬光大扬名立万的时候。

  存储读写时的网络流量
通过虚拟磁盘连接的网络存储 

    如果iSCSI存储时通过虚拟主机划分虚拟磁盘给虚拟服务器使用时,即便这磁盘同样是位于网络上,但无论对磁盘如何操作,都不会显示在其网络性能监控窗口中。这就是前面我们所说的数据流量的不准确。

5多应用业务的复杂网络环境回顶部

多应用业务的复杂网络环境

    我们很多的测试结果已经表明了可以使用虚拟服务器承担高并发高压力的应用服务。我们使用的测试脚本是使用多并发用户的ERP软件和SQL Server数据库。这是典型的IO密集型操作,会占用大量虚拟服务器计算性能和内存。

 ERP压力测试
虚拟CPU使用接近100%

    象ERP这样对后台数据库有大量小数据包操作的应用,虚拟服务器的稳定和可用性已经不必过多质疑,随着并发用户数的增多,处理器和内存使用最终会接近满载,但此时其实对存储的读写操作流量并不算大。 

ESX
ERP基础流量

  此处的ERP基础流量其实是大量的数据库查询操作,X轴为时间轴(180秒),Y轴为数据流量(单位是Byte)。由于ERP查询脚本比较“单纯”,可以看到,流量曲线也比较有规则,其非峰值流量并不大,基本在1MBps以下。

ERP压力测试
vCenter自带的资源性能监控工具

    服务器虚拟化以后,流量叠加所产生的问题不容小视,我们所搭建的测试环境其实很简单,所产生的网络流量也相对“单纯”,但这已经足以说明问题的复杂。

    我们要做的当然是要避免这些问题的发生,首先也是最重要的,在设计全局虚拟化拓扑结构时,要比以往发费更多精力关注由于网络结构变化带来的新性能瓶颈点,如何能让整个网络运行得高效且稳定,初期设计变得尤为重要,一个大的方向就是将应用网络与系统网络相分离。另外,如果多条虚拟网络链路共享使用一个物理网络设备时,对一些大流量的应用,例如对VM进行快照,虽然技术上支持任何时间进行,但为了避免对业务应用造成冲击,这类操作应当尽量选择在网络空闲时进行。

6iSCSI前途光明仍需努力回顶部

iSCSI前途光明

    iSCSI是互连服务器和存储之间的存储访问协议,是基于IP的网络互联。协议是建立在SCSI和TCP / IP协议之上,应用企业现有网络基础设施传输。

    使用IP网络,iSCSI在服务器上iSCSI启动程序和存储设备上的iSCSI目标之间传输块级数据。iSCSI协议压缩SCSI指令,聚合数据到TCP/IP数据包,使用点到点连接发送到网络上。到达到存储设备上,压缩的SCSI指令从TCP/IP数据包内解压进行处理。当iSCSI启动连接到iSCSI目标,存储被操作系统作为一般格式的本地SCSI设备识别。这个过程对应用、文件系统和操作系统是透明的。

    基于软件的iSCSI发起者,可用于所有主要的操作系统上,基本上成本很少甚至没有成本,利用标准的以太网接口的服务器和台式机。这对于虚拟化技术有着另外便捷的一面,尤其是在进行动态迁移的虚拟化操作时,iSCSI完全可以跟随虚拟服务器转移到不同的主机或者是其他iSCSI存储系统上。

    这好比一个固定的邮箱地址,无论家搬到其他什么地方,都可以用原先不变的联系方式进行沟通。而对于其他虚拟化技术不能完全识别和启动的存储设备,当进行虚机迁移,尤其是动态迁移的时候,因为不能识别存储设备会导致迁移失败。

    使用标准的以太网网卡可以将服务器连接到存储,使iSCSI更加简单,也可负担得起。现在,高速CPU能够线速运行iSCSI,仅使用边际量的CPU周期。以太网网卡一般都标准配备服务器,因此不需要增加额外的费用,也不需要特殊的适配卡。光纤设配卡和交换机都是高价设备,就性价比而言,iSCSI SAN比FC光通存储优越不少,从这点来看完全可以说iSCSI未来相当光明。

iSCSI仍需努力

    就测试见过而言,目前企业普及的千兆连接环境,带宽对iSCSI仍然显得不足够。尤其是高端的存储阵列产品,无论是理论计算还是实际测试,很多存储的端口速度都是超过Gb级别的,前兆的环境已经明显成为了iSCSI的系统瓶颈。

    我们都期待着在万兆环境下,iSCSI脱胎换骨的性能表现。但要从千兆升级至万兆,这也是一笔巨大的投入成本。以现在的万兆设备价格看来网络改造升级重铺的投入成本甚至比光纤设备还要昂贵。

    无间道琛哥说的好,“出来混早晚要还的,何去何从各位自己决断”,是选择iSCSI还是固守FC,那只能是仔细考察企业现有的和未来系统需求,将系统各个板的长度都精确预测计算出来,远比一拍大腿的理智得多。

    如果真要赌一把的话,H觉得自己应该会把宝压在iSCSI身上,这样至少系统可利用率更高一些。

为您推荐

加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多
加载更多

网络设备论坛帖子排行

最高点击 最高回复 最新
最新资讯离线随时看 聊天吐槽赢奖品