这是关于网络架构设计两部分系列中的第一篇。想了解关于在网络架构中整合I/O虚拟化方面的知识,请点击第二篇:如何将I/O虚拟化整合到网络体系架构中。
服务器虚拟化对于数据中心I/O网络架构的需求非常强烈。当物理主机上安装多个工作负载时,他们需要更多的网络带宽。除此之外,还需要更多的网络节点来处理不断增加的数据流。既然网络资源被多个应用所共享,如何确保关键应用能够得到足够的网络资源则变得相对复杂,也会深深影响关键应用的性能和可用性。这篇文章能够帮助IT系统管理员们来理解虚拟化环境的网络需求,如何建立一个适合自己需求的网络架构来提高性能并节约成本。
理解虚拟化环境下网络设计
IT最令人惊艳的地方是对于创新的不断追求以及对数据中心管理者的全新挑战。服务器技术的发展取决于网络能力。我们将数据通过一种网络方式进行传输,其传输能力的高低直接取决于相关传输设备的性能。换句话说,如果一台10千兆以太网(GbE)的设备可用,并不代表这个性能永远存在。作为一台当前连接在架构中的服务器,能够处理这种数据吞吐量的能力是必要的。因此,网络架构中升级或扩展的设计是非常重要的一环。
简单点来说,我们可以这么看:网络设计可以比作设计一座城市的道路系统。在设计阶段,明确哪个人走哪条路是非常重要的,还有哪些地方的交通会繁重,从哪里开始,到哪里结束,以及某些线路在某段时间内会进行改变等。如果一个道路系统没有足够的道路,那就会产生交通堵塞。如果这种事情发生,情况会变得越来越糟,时间延误和疑惑会接踵而来。在这个时候,任何工程师最不希望看到的是一个烦躁的司机(或用户)。反过来说,建立20条道路虽然可以缓解交通堵塞,但也会造成不必要的投入浪费。另一个担忧是所有这些存在的额外道路可能会鼓励更多的交通流量,最终导致的问题是小路连接到大路的时候造成交通堵塞。如果你理解网络,你会知道开始变慢的网络最终会导致停止,用户就会因为时间延误而不开心。如果你设计的太过于铺张,你会浪费钱也会为将来的网络带来额外的问题。
适合的网络容量设计,像道路设计,需要从细心的容量测量开始。这表明每个设计都必须涉及到环境的每个细节。如果10台物理主机带着100个虚拟机(VMs)运行在一个资源环境中,工程师就要理解这个网络结构会变得复杂。然而,如果这个环境是两台虚拟机上运行4个虚拟机,那就会相对简单得多。
设定一条好的基准线的方法是监控目前的工作负载并将这些性能结果作为参考。我们稍后来学习结合度量工具。如果没有测试,就没有一个客观的方法来规划网络性能——猜测是非常不可靠的。如果用猜测来做设计,常常会给一个可行的部署方案带来更多的错误或者超支。
虚拟化 vs. 物理机
从技术的角度来看,在虚拟机和物理机之间有着一些关键的区别。然而,从网络流量的角度来看,我们可以看到很多相似点。无论工作负载是物理的或是虚拟的,从两种形式产生的流量会产生不同的模式来交由IT工程师管理。
在传统的物理服务器环境中,资源管理牵涉到的问题会使用资源分离的方式解决。这就意味着一台主机只能运行一个工作负载,而且每个工作负载只能使用专用的I/O硬件资源。因为这些物理服务器都是单独连接在需要的网络上,这样不仅能够确保安全,也能保证性能。这些物理上不同的网络使用分离设备的方法来防止入侵威胁、拒绝服务攻击(DDoS)和其他主机上的应用故障等问题。
由于服务器虚拟化的介入,物理主机的模式发生了一些改变。在虚拟化的帮助下,IT经理创建了一个可按需部署的灵活的资源池。任何服务器可以在理想状态下运行任何应用,而单台服务器需要充足的网络连接数来满足上面运行的所有应用。这能够帮助冗余、故障切换、灾难恢复和其他方面的业务连续性能力,而传统的物理服务器环境要办到就比较困难。
对于未来增加网络连接的需要,虚拟服务器需要专属的管理网络系统,如IPMI和VLAN的管理,而且还需要外接存储连接,比如专属的iSCSI或者FCoE的端口,又或者由光纤通道连接的特殊存储区域网络(SAN)的端口。如果需要虚拟机在其他的物理端口中可移动自如,一个好的SAN环境是必需的。这就需要更多的连接性和接口的设计。
虚拟化环境设计
可以分享的也是最重要的诀窍是:千万不要去买最昂贵的网络硬件设备,如果只是因为你觉得它会有帮助。
一台10GbE能力的HP ProCurve 交换机可能要耗费几千美元但却不一定在环境中需要被用到。额外的交换机模块也会大幅度的提高成本。首要的事情是一次针对核心网络带宽的分析。其次,是对未来的规划。在理解当前的需求和未来的预期后,一位IT经理才能够在不超出预算的情况下建立起一套合适的网络架构。
更重要的是,在仔细规划的前提下,网络容量需要能够使工作流畅并带有一定增长空间。记住,高端的交换机并不代表它能够提升性能。一个在网络设计中最容易被忽视的环节是线缆的连接。检查布线设置,可以非常迅速地确定切换环境可以处理的接口类型。简单的迭代升级,如从CAT 5E升级到CAT 6E,能够导致巨大的架构优化。实际上,行业分析师预测80%-90%的新的线路安装都会采用CAT 6E。向后兼容,如果CAT 5E能够支持的应用,CAT 6同样能够支持。
备注:把所有旧的网络连线替换成最新的CAT 6E布线不会立即使你拥有千兆的传输能力。除非每一个网络环境中的部件是基于千兆的,否则没有哪个网络架构能够被称为一个“真正千兆”的网络架构。