同服务器虚拟化一样,I/O虚拟化增加了一层抽象层来简化和优化数据中心运营。就I/O虚拟化而言,访问接口卡的服务器与实际的网卡(NIC)之间存在一个抽象层。I/O虚拟化的目标是能够跨多台服务器共享这些接口卡。
这项技术依赖于这样一个假设:大多数数据中心服务器不能在每时每刻完全利用网卡的最大能力。I/O虚拟化试图通过使更多的服务器访问每块网卡来更好地利用可用带宽。需要注意的是,I/O虚拟化并不向服务器提供带宽,它只是确保更多的可用带宽得到利用。
选择网卡共享方式
实施I/O虚拟化的第一步是了解这些系统采用什么方式,来对网卡和主机总线适配器(HBA)进行虚拟化。当前主要有三种共享网卡的方式。
第一种方式是不同服务器轮流使用接口卡。该方式适用于那种只在一天某些时刻被使用的昂贵的专用网卡。
第二种方式是使用允许每个端口被单独使用的多端口卡。尽管这没有提高带宽的使用率,因为每台服务器都有它自己的端口和带宽,但它的确降低了成本。例如,一个4端口卡每端口的价格,一般比购买4块独立网卡更便宜。但是,这时的挑战是多数服务器不能利用这么多的I/O端口。I/O虚拟化通过以每端口为基础共享网卡解决了这个问题,这样既发挥了多端口卡节省费用的优势,也使每个端口的使用情况得到改善,不过,还是没有得到完全的利用。
最后一种方式,也是最理想的方式,是选择支持单根I/O虚拟化(Single Root I/O Virtualization,SR-IOV)的网卡。这类网卡具有使多个主机共享一块网卡的智能性,非常适合I/O虚拟化系统。目前市场上万兆网卡还不多,而多数下一代FCoE(以太网光纤通道)卡将支持这项标准。根据使用的系统,支持SR-IOV的网卡应当能够跨多台服务器,有选择地共享这类网卡的带宽。
I/O虚拟化系统中的SR-IOV卡之所以使多个主机可以共享一块网卡,是它假定不同的服务器需要的峰值带宽分布在不同时间段。虚拟化系统支持一旦带宽使用需要超出一块卡的吞吐量,就将I/O溢出到备用卡上。
确定网卡与服务器的连接途径
在选择用于共享的网卡后,下一步是选择与访问I/O虚拟化系统的服务器连接的方式。目前,主要有三种方式:以太网、InfiniBand和PCIe。
由于PCIe卡就是被共享的,因此乍看起来PCIe似乎是最自然的合适选择。但是,PCIe并不是作为物理服务器之外的网络标准来设计的。
InfiniBand和以太网都是为连接网络而设计的,但不适合传送PCIe传输流。 InfiniBand具有支持PCIe带宽需求的性能,但它在后台互联(back-end interconnect)领域之外的采用率比较低。
另一方面,以太网非常普及,而且联网很方便。以太网目前若想传送PCIe传输流需要向以太网卡添加特殊的逻辑。未来,这种能力可能被内建到标准以太网卡中。
这三种连接方式的费用也相差很大,PCIe是最便宜的选择,以太网次之,InfiniBand最贵。总之,用户选择连接标准时必须根据自身情况,例如所需要的性能、网络可伸缩性,以及已有使用的技术等,来仔细研究每一种方式。
筛选服务器
最后一步是确定哪些服务器将用于I/O虚拟化系统。如果采用第一、二种网卡共享方式,即多台服务器轮流共享一块网卡,或每台服务器各分配一端口的方式,提供给服务器的带宽将被锁定。如果采用支持SR-IOV的共享卡方式,最大的问题则是,可能由于某台服务器消耗I/O资源过大,而导致其它服务器得不到I/O资源。尽管一些系统可以防止这种情况的发生,但这可能意味着为了保持系统内所有服务器的正常运行,那些对I/O资源要求较高的服务器将难以获得完全的满足。
最好的做法是确定环境中可能会具有这类高I/O需求的服务器,为它们提供独立的连接。你还可以利用备用卡,那样的话,I/O可溢出到备用卡。如果你知道将出现需求激增,多数I/O虚拟化系统还允许你动态地将特定网卡分配给特定服务器。
实施I/O虚拟化的最安全的方式之一,是将它用作冗余卡。因为多数服务器都具有冗余网络和存储连接,在一部10服务器机架中,这意味着多达20块额外的网卡。因此,可以将这些冗余网卡中的1~2块网卡转移到I/O虚拟化系统中,这可以通过将二级连接映射到 I/O虚拟化系统中的网卡上来完成。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
Windows Server 2012 SR-IOV技术工作原理解析
SR-IOV技术允许Windows操作系统和微软的Hyper-V或VMware的ESXi等hypervisor对服务器的磁盘I/O设备进行封装,管理甚至共享。
-
解读I/O虚拟化的概念和价值
数据中心架构师是否可以跨多个技术周期扩展他们的计算、网络和存储连接,而无需供应商进行技术锁定或执行重大升级呢?I/O虚拟提出了一个解决方案。
-
“美妙的技巧”:把I/O虚拟化整合到网络架构中
对于IT管理员来说,在着手网络接口设置时,还有许多选项内容要考虑。我们将讨论I/O虚拟化如何整合到网络体系架构中,以帮助降低硬件成本。
-
通过以太网来实现I/O虚拟化?这个真的可以有
已经部署了Xsigo公司融合网络架构和I/O虚拟化技术的数据中心经理们对未来充满了憧憬,但目前为止该公司对Infiniband(无限带宽联网技术)的依赖或许会限制……