云计算下半场,运营商如何拥抱开源?

(2)、虚拟化:这里提到的虚拟化特指X86服务器虚拟化技术。在云计算发展初期,该技术主要由VMware、Citrix等IT巨头垄断,相关产品虽然功能全面、性能不俗,但价格也十分昂贵。现如今随着开源KVM技术日趋成熟,越来越多的企业开始构建基于开源KVM技术的云资源池,以期大幅缩减虚拟化软件购置成本。KVM的全称为Kernel Virtual Machine,翻译为中文就是内核虚拟机。KVM是典型的二类虚拟机架构(从VMM所处层次可将虚拟化软件划分为一类虚拟机架构和二类虚拟机架构,一类的VMM处于硬件层之上,自身就是一个操作系统。二类的VMM处于宿主机操作系统层之上,自身可看作一个应用程序),它的宿主机操作系统涵盖CentOS、Ubuntu、Debian等多个Linux发行版。

(3)、容器:容器是轻量级的操作系统级虚拟化,可以让我们在一个资源隔离的进程中运行应用及其依赖包。在众多容器引擎技术中,Docker无疑是明星级解决方案。Docker是PAAS提供商dotCloud开源的一个基于LXC的高级容器引擎,基于go语言开发并遵从Apache2.0协议开源。

2、网络:虚拟交换机

虚拟交换机:大部分商业虚拟化软件中都自带虚拟交换机的组件,例如VMware的vDS、vSS。但对于开源的虚拟化软件而言,其自带的网络功能通常比较简单,这就需要额外的虚拟交换机弥补这一短板问题,OVS(Open vSwitch)则是该领域最热门的开源项目。OVS是由Nicira公司使用C和Python语言开发,并遵循开源Apache2.0许可的多层虚拟交换机,其初衷是让大规模网络通过可编程实现自动化扩展。它既可以作为一个软件交换机运行在虚拟化层,也可以作为交换芯片的控制栈实现,支持多种标准管理接口和协议(NetFlow, sFlow, SPAN, RSPAN, CLI, LACP, 802.1ag)。它也支持多种虚拟化技术,包括KVM、Xen和VirtualBox。

3、存储:分布式存储

分布式存储:云计算发展至今,可以说是一部软件定义一切(SDX)的技术发展史。从早期的X86服务器虚拟化(可以理解为软件定义计算),到软件定义网络(SDN)、软件定义存储(SDS),再到大一统的软件定义数据中心(SDDC),每种技术都曾在业界倍受关注。在这些SDX技术中,软件定义存储可以算是继软件定义计算后,最为实用的一类。何为实用技术?笔者认为有两项评判标准最为关键,其一是看这项技术与以往技术相比是否有显著进步(如架构的革新、功能的增加或性能的提升),其二是看这项技术的性价比。软件定义存储技术显然符合以上两点要求。首先,SDS与以往的存储技术相比,是一种全新的分布式架构,因此也有“分布式存储”的提法。这种“去集中化”的思想源自于谷歌等大型互联网企业,它不仅降低了IT系统的存储故障风险,同时可以大幅提升存储IOPS性能,甚至让存储容量在线扩展成为现实,以上三点都是长久以来困扰IT系统存储管理员的难题。其次,SDS完美地实现了软、硬件解耦,这点与X86服务器虚拟化类似。二者不同之处在于X86服务器虚拟化的松耦合架构带来了在线热迁移、计划内零宕机等特性,SDS的松耦合架构则使专用存储硬件演变为通用X86服务器,这大幅降低了IT系统存储设备的投资开销。目前业界最热门的开源分布式存储项目非Ceph莫属,作为一款同时支持对象、块、文件的统一存储系统,Ceph也是当前OpenStack生态系统中呼声最高的开源存储解决方案。

4、云操作系统

在云计算发展初期,有关云操作系统的市场争夺从未停歇过。除了VMware、Citrix、微软推出的商业云管理平台软件外,开源项目也是遍地开花,包括CloudStack、OpenStack、Eucalyptus、OpenNebula等多个平台。从现阶段的发展形势来看,OpenStack基本已成为云操作系统的不二选择。师承亚马逊AWS的OpenStack自2010年10月第一版(Austin)到最新版(Pike),已历经16个版本,从最初的Nova、Swift两大模块到如今大大小小上百个模块,被认为是仅次于Linux的第二大开源社区项目。近两年,各行各业基于OpenStack的云平台方案如雨后春笋般出现,而真正能给OpenStack一个准确定义的人却很少。有人认为它是云管理平台,有人认为它是云计算平台,还有人把它与VMware虚拟化相对应,正所谓“一千个人眼里有一千个哈姆雷特”,你把它看作什么只能表示你关注它哪方面,并不表示它就是什么。笔者倾向于将其看作是“现行最通用的云计算标准体系架构”,它的日益成熟规范了以往云计算领域各类错综复杂的技术概念,实现了各厂家云解决方案的和谐统一。可别小看这一点,毕竟能让全世界不同语言(各类IT产品接口)的国家(各IT厂家)搁置争议、沟通合作(统一适配)的组织也就联合国了。从这点来看,OpenStack就是云计算世界的“联合国”角色。