存储网络中的虚拟I/O技术(上)

日期: 2012-05-22 作者:George Crump翻译:郭镭 来源:TechTarget中国 英文

当下,数据中心的全面虚拟化成为一种趋势,无论是存储网络还是IP网络,其发展目标都必须适应这一潮流,因此虚拟I/O(Virtual I/O)技术便有了广阔的应用前景。如果我们希望在服务器虚拟化和桌面虚拟化应用场景中,创建一个更高效且更经济的存储基础架构,并满足虚拟化应用的I/O请求特点的话,虚拟I/O是必不可少的核心技术。虚拟I/O是一种网络连接技术,既可以用在主机端,也可以在存储网络端实现,当然这两种模式还可以一起使用,贯穿整个基础架构环境。在不同的应用模式之间虚拟I/O的定义会稍有差异。

下文中我们会就此展开分析,看看这两种模式之间的差异以及它们二者是如何协同工作的。 今天,服务器(主机)所使……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

当下,数据中心的全面虚拟化成为一种趋势,无论是存储网络还是IP网络,其发展目标都必须适应这一潮流,因此虚拟I/O(Virtual I/O)技术便有了广阔的应用前景。如果我们希望在服务器虚拟化和桌面虚拟化应用场景中,创建一个更高效且更经济的存储基础架构,并满足虚拟化应用的I/O请求特点的话,虚拟I/O是必不可少的核心技术。虚拟I/O是一种网络连接技术,既可以用在主机端,也可以在存储网络端实现,当然这两种模式还可以一起使用,贯穿整个基础架构环境。在不同的应用模式之间虚拟I/O的定义会稍有差异。下文中我们会就此展开分析,看看这两种模式之间的差异以及它们二者是如何协同工作的。

今天,服务器(主机)所使用的处理器与4、5年前截然不同。过去,一台服务器上只需要运行一个应用程序,因此这台服务器上所有的I/O处理能力可以被单个应用程序所独享。但今天,在虚拟化的数据中心里,主机上的网卡和HBA卡是被多个虚拟机所共享的。在传统的服务器平台体系结构中,网卡和HBA卡这两种I/O适配器是相互独立的,但现在,伴随着iSCSI、NAS和FCoE等技术的发展,网卡和HBA卡有逐渐统一的趋势,或者叫融合。未来的趋势很明显,主机上将只有一种物理I/O端口,所有的协议都通过它来进行通信。

混合I/O时代已经来临

在虚拟化和网络融合的环境中,虚拟机之间要竞争I/O资源,I/O适配器也必须处理多种类型的网络I/O流量和存储I/O流量。问题看起来很好解决,我们只需要配置高性能、高带宽的10 Gbps以太网卡、10 Gbps FCoE卡、以及8 Gbps或16 Gbps的光纤通道卡,就能让主机端更好地处理虚拟机的I/O请求。但事实上更大的挑战在于,如何确保主机能够将合适的带宽资源在合适的时间分配给需要它的虚拟机。

服务器虚拟化应用如今已发展到第三个阶段。在最初的时期,通常只有测试和开发系统才使用虚拟机;后来,人们开始在虚拟机上部署一些优先级较低的系统和负载较轻的应用。因此在前两个阶段,通过简单的轮询、将I/O资源平均分配给每个虚拟机的机制是可行的。但进入到第三阶段,当关键应用和复杂应用开始部署到服务器虚拟化平台之后,如何将合适的带宽资源在合适的时间分配给需要它的虚拟机就显得越发重要。

当那些关键的以及对性能有较高要求的应用系统虚拟化之后,I/O资源就不能再简单的共享,并在虚拟机之间平均分配了。某些虚拟机需要更高的服务级别保证,需要独享固定的带宽。另一方面,轮询机制会造成频繁的系统中断,对CPU的利用率产生负面影响。因此,确保I/O请求的及时响应,已成为重要应用程序能否成功迁移到虚拟化环境的关键因素。

有一个方法可以让关键业务拥有充足的I/O资源,即为每个虚拟机都配置一个网卡或HBA卡,并将运行关键业务的虚拟机与该接口卡绑定。这样工作是没问题,但这种方法既不经济,可能也没有足够的物理空间,而且,如果采用这个方案,那么每台主机上运行的虚拟机的数量也会受到限制。

另一个可用的方案是为主机准备足够的,甚至是超出需求的可用存储和网络带宽,以便主机能够有充足的I/O资源处理请求,并满足其上运行的每个虚拟机的性能要求。但这种方法也不是非常划算,因为大部分虚拟机并非每时每刻都需要较高I/O性能。此外,Hypervisor通常使用循环的排队策略来分配共享的可用的带宽,因此这种方法也需要频繁的系统中断操作,效率方面也有损失。

基于网络适配器的虚拟I/O技术

网络适配器层的I/O虚拟化技术主要由Brocade、Emulex和QLogic等几家公司提供,他们都可以提供支持虚拟I/O功能的高速网络适配器产品。虽然这种适配器仍然要被多个虚拟机所共享,但它仍然能够保证运行关键业务的虚拟机有较高的服务级别。比如说,一个支持虚拟I/O功能的10GigE物理网络适配器既可以划分成多个虚拟网络适配器,也可以为指定的虚拟机群组按百分比分配固定的带宽。

在以上场景中,单块10 GigE的物理网卡可以分成10个1GigE的虚拟网卡并灵活使用。比如,一个虚拟网卡专门用于虚拟机的迁移;另外几个指定分配给那些特殊的虚拟机,以便保证关键应用的性能水平;而其余的虚拟网卡则纳入资源池,供其它的虚拟机共享使用。

因为所有的I/O虚拟化工作都由硬件适配器处理,因此主机端hypervisor虚拟化管理软件层的负担相当小,主机可以回收大量的CPU资源。换句话说,CPU的内核不需要为管理I/O共享而进行频繁的中断操作。这种虚拟I/O技术,不仅自身可以支持更大密度的虚拟机数量,而节约的CPU处理能力也可以用来运行更多的虚拟机。

基于网络适配器的虚拟I/O技术的另一个特性是可以在网卡上创建一个虚拟交换机。这个技术非常有价值,尤其是在服务器虚拟化环境中,它可以极大地降低出入服务器的网络流量。利用这个功能,同一台主机上的两个虚拟机可以直接相互通讯(这种情况很常见)。以往,这种流量都需要经过外部的物理交换机处理。现在,虚拟交换机可以识别本地流量,并将这些流量限制在物理主机的内部。这个功能不但可以为主机内部的虚拟机提升性能,而且还可以提高整个网络环境的效率。

最后要说的是,那些支持I/O虚拟化的网络适配器还可以虚拟所用存储协议的类型。例如,有些卡同时支持FC、FCoE、10Gbps以太网和iSCSI协议,那么用户就能够在不中断服务器或虚拟机运行的前提下随时变更端口的用途。今天,有些适配器还需要reboot才能变更配置,不过这种情况未来肯定会得到改变。

请继续阅读:存储网络中的虚拟I/O技术(下)

相关推荐

  • 2015存储虚拟化管理小贴士

    当讨论管理服务器虚拟化环境的时候,读者们都会对最新的Docker容器技术以及VMware VVOL技术感兴趣。

  • VVOL能否取代VM感知?

    当传统存储硬件无法控制虚拟工作负载时,VM感知存储就可以派上用场。那么VMware的VVOL是否也有能力解决这个问题呢?

  • 不要让备份削弱VM的性能

    如果你的服务器基础设施的20%进行了虚拟化,那么你可能使用任何你喜欢的方法来对待虚拟机备份。但是,当虚拟化达到50%、75%乃至90%的时候,传统备份将大大阻碍高度虚拟化、超融合基础设施的性能。

  • 服务器虚拟化之完美迁移

    为了实现虚拟环境下的完美迁移,众企业还要老实面对诸如数据结构以及资源争用这样的难题。