软件定义的数据中心已经来临

  • Abel Avram
  • 臧秀涛

2012 年 9 月 26 日

话题:微软云计算AzureDevOps

VMware 和微软提供了软件定义的数据中心的解决方案。在软件定义的数据中心中,所有的资源——包括计算、存储、可用性、网络和安全等——都实现了虚拟化和自动化。本文主要关注的是其中新加入的特性:虚拟化网络与安全。

为了提供一个完全自动化的数据中心,VMware 和微软正在进行最后的努力。完全自动化的数据中心可以作为云解决方案的基础,不管是公有云、私有云还是混合云。VMware 将该技术称作软件定义的数据中心(SDDC,Software-defined Datacenter),而微软称之为软件定义的网络(SDN,Software-defined Networking),后者指的是数据中心谜题中需要实现自动化的最后一部分。计算、存储和可用性等资源实现自动化已经有很多年了,但是各大公司仍然一直致力于网络的虚拟化和自动化,以及与之相关的策略和安全等问题。目前有两个典型的解决方案,一个是 VMware 的 vCloud Suite,另一个是微软的 Windows Server 2012 和 System Center 2012 SP1,Virtual Machine Manager。

在最近的VMware World 2012大会上,VMware 宣布,vCloud Suite 5.1为构建包括网络和安全在内的所有资源虚拟化、池化和自动化的数据中心提供了可能。vCloud 的网络与安全层可以创建多租户虚拟化网络,该网络可以动态修改以适应新的需求,包括虚拟防火墙、VPN、负载均衡和VXLAN网络。VMware 云基础设施事业部安全与网络部门的 VP/CTO,Allwyn Sequeira,解释到软件定义的网络有几个关键属性

  • 抽象。网络抽象为一组网络端口(以及虚拟的网络接口卡与虚拟机端)。而安全抽象为一组端口防火墙和端点内省。这些抽象分别通过虚拟交换机(vSwitch)和虚拟防火墙(vShield)实例化,并以一种向外扩展的方式部署在每个主机管理程序上。网络和安全虚拟化层有效地将 VDC 从底层的物理网络和防火墙架构中解脱了出来,也为创建栈体系提供了逻辑基础。
  • 池化。vSwitches 池化到虚拟分布式交换机(VDS,virtual distributed switches)中。端口池化到端口组中。逻辑网络调节这些接口组,它们可以跨数据中心实例化(VXLAN)。端口防火墙在 vShield App 或 Edge 中实现。基于虚拟机的安全可以通过 vShield Endpoint 以及端点安全合作伙伴的产品来实现。因为向外扩展这种部署方式的特性,这些池是弹性的,而且是数据中心范围的,可以按需分配给租户或应用的所有者。
  • 服务注入。为了使额外的抽象能直接注入到虚拟层中,平台必须是可扩展的。这些额外的抽象包括加密、入侵检测与防范、反病毒、应用交付控制器、数据泄露预防、广域网优化控制、监控工具和其他 L4-7 服务等。网络和安全虚拟化层为这类设备的直接注入提供了一个逻辑环境。
  • 自动化。正如虚拟机是服务器虚拟化的容器,虚拟数据中心(VDC,Virtual Data Center)就是 SDDC 的容器。通过 vCloud Director,VDC 可以完全自动化地部署,还可以基于策略来部署计算和存储资源,而将网络和安全的部署委托给 vCloud 的网络与安全子系统。一个集中的命令与控制机制(vShield Manager)会列出所有的抽象与池,它还要负责管理功能,并将这些池映射到租户或应用等高层实体的需求之中,还要与高层的虚拟化容器进行配合。多租户、隔离、弹性,以及 RESTful 接口的可编程性,都是在这里处理的。

在最近的一篇博客文章中,微软的 Windows 网络团队的总经理 Sandeep Singhal,以及 SCVMM 团队的部门项目经理 Vijay Tewari,他们讨论了内置于 Windows Server 2012 和 System Center 2012 SP1 中的软件定义的网络能力,利用虚拟化网络,客户不需要修改 IP 地址,即可将其数据中心迁移到 Windows Azure 云中,他们也解释了这是如何做到的:

Hyper-V 虚拟化网络能够在一个共享的物理网上创建多租户虚拟网络,这为云带来了网络灵活性。 每个租户都有一个完整的虚拟网络,包括多个虚拟子网和虚拟路由。(有些现有的虚拟化解决方案假定租户只有一个子网!)在每个主机上,Hyper-V 使用可以动态更新的 SDN 策略,将一个租户网络与其相应的直达目标的流量联系起来。SDN 策略也决定了哪个虚拟机的这些租户虚拟机能够与其通信,此举提供了必要的隔离。因此,Hyper-V 网络虚拟化允许将租户的负载放到物理数据中心内的任何地方。租户网络甚至可以使用私有的物理地址(可以复用其他租户使用的地址),通过使用自己的 IP 地址,租户可以将现有的负载快速迁移到云中。实际上,Windows Server 2012 支持可以互操作的 cross-premise 连接,所以你可以无缝地将公有云中的子网连接回你的本地网络。

我们的 SDN 解决方案更进了一步,在 Hyper-V 虚拟交换机上,支持丰富的流量控制策略。以每个虚拟机为基础,你可以配置安全策略用以限制流量类型(和目标)。为了确保关键任务服务总能够使用必要的网络容量,你还可以为特定的虚拟机预留带宽。为了避免流量饥饿,或者支持各种计费模型,你甚至可以申请带宽上限。更重要的是,这些网络控制策略是动态的,因此可以实时调整。

Singhal 和 Tewari 声称,他们的网络虚拟化解决方案已经在 Azure 数据中心的产品中进行了测试,“在 4000 个物理主机上,能够协同数以万计的虚拟机之间的通信”。 另一方面,VMware 声称其解决方案是建立在开放标准之上的,可以将第三方服务(包括使用硬件和虚拟化设备)插入到虚拟网络的不同位置来访问流量,具体细节请参考其白皮书

查看英文原文The Software-defined Datacenter Has Arrived


感谢贾国清对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

微软云计算AzureDevOps