执行I/O虚拟化
首先,我们看一个具体的例子。尽管这个例子的重点在于Xsigo VP780 I/O Director和VMware Infrastructure 3(VI3)的使用,但它的原理应该是和其它I/O虚拟化解决方案和服务器虚拟化解决方案相类似的。
有一个数据中心,它有10台ESX主机与VP780 I/O Director相连接。如果没有I/O Director,将大概需要配置60个千兆以太网端口(每台ESX主机6个)。但是如果有I/O Director,我们需要配置多少个呢?
我们假设平均每台ESX主机的服务控制台连接会产生60Mbps的通信量。这就意味着我们可以把所有10个服务控制台连接都整合到一个千兆以太网端口,总共是600Mbps。为了保险起见,我们再添加一个千兆以太网端口,让它们共同分担这些通信量。这样,每个物理端口就大约负担300Mbps。
每台ESX服务器定义2个vNIC,vNIC1和vNIC2。每个vNIC对应一个VP780机柜上的千兆以太网端口,而且2个vNIC都分别作为vSwitch0的上链(uplink)。vSwitch寄宿ESX服务控制台连接。一半的ESX服务器都将使用vNIC1作为它们vSwitch主要的uplink,而另一半则使用vNIC2。这样的配置满足了性能要求,提高了服务冗余,而且还减少了90%的端口总数——从20个降到仅仅2个。
VMotion的网络连接都是以同样的方式处理的。不过,这次必须还得考虑另外一个因素。服务控制台通信主要是从服务控制台导向网络中的其它服务器的,而VMotion通信几乎是完全局限于ESX服务器的。这就意味着我们可以充分利用“inter-vNIC switching”的特点。同一I/O卡和同一VLAN(虚拟局域网)的两个vNIC之间的通信是在VP780机柜内部转换的,不会跑到网络中去。这就意味着我们需要的千兆以太网连接更少了。如果75%的VMotion通信都是在连接到I/O Director的主机之间进行的,那么我们立刻就可以将所需网络连接数从20(10台服务器,每台2个连接)减少到5——而且,这还没考虑VMotion通信频率。
要执行这一步,可以为每台服务器创建2个vNIC,vNIC3和vNIC4。这些vNIC将连接在5个物理Gigabit Ethernet端口之间,作为vSwitch1的uplink(上链)。其中,vSwitch寄宿VMotion的VMkernel端口。由于vNIC的终端在同一I/O卡上,而且是在同一VLAN(虚拟局域网),inter-vNIC switching会自动阻止大多数通信进入Gigabit Ethernet uplink。