Openstack能走多远——Openstack、VMware浅析

本文对比分析了OpenStack和VMware的设计理念和技术实现。OpenStack聚焦云感知应用,VMware则关注传统应用模式下的数据中心自动化及资源管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[转载]原创作者如有异议,请提供例证后将在24小时内删除.

生存还是毁灭?openstack还是VMware?每每提到这个话题,业界总似要争个你死我活方才罢休。在国内,openstack更是风光无限。京东、华为、百度等众多企业纷纷基于openstack投入研发,推出各层云服务,构建自身业务相关的云计算生态圈。面对openstack的强劲攻势,VMware真的会败下阵来吗惊讶

本文基于openstack、VMware的应用场景,结合二者设计理念、技术实现,进行简单分析。


设计理念

云生态系统存在云感知应用和传统应用两种应用模式。

图1. 云感知应用和传统应用对比

云感知应用主要有如下特征:

(1)   分布式;

(2)   无状态或者软状态;

(3)   支持水平扩展;

(4)   支持故障切换;

所以,对于云感知应用模式,应用自身处理HA(high availability)和DR(Data Recovery)。

而传统模式应用特征为:

(1)   C/S架构;

(2)   应用自身难于水平扩展,依赖基础框架保障可扩展性;

(3)   依赖基础框架实现故障切换;

对于传统模式,底层框架需要提供FT(容错)、虚拟机HA和自动病毒扫描等一系列特性,保障虚拟机稳态运行。而对于云感知应用,这一切由应用自身维护。即便虚拟机发生故障,启动新的虚拟机取而代之即可。

因为服务器虚拟化而名声大噪的Vmware,近些年来,依托服务器虚拟化的绝对优势在hypervisor上持续构建新的增值特性,不断向上延伸产品栈以夺取更大的市场份额。

Vmware产品从近裸金属层向上依次为:

(1) 最底层ESXi hypervisor,Vmware免费提供裸金属hypervisor ESXi,通过vsphere bundle扩展ESXi功能,提供增值服务;

(2) vSphere ,实际上是ESXi的商业版本。除了ESXi hypervisor,还提供一组企业工具包,如在线迁移,高级安全,网络和存储IO控制等;

(3) vCenter是多节点vsphere环境中的配置、置备、管理的中央控制点。除vCenter Server,Vmware还提供Site Recovery Manager(在线备份),operation management suite(自动运营管理)等插件;

(4) vCloud Director,把基于Vmware的虚拟化数据中心转化为IaaS服务,以完整虚拟数据中心形态提供软件定义的数据中心服务,包括快速置备,数分钟使基础框架可用,包括安全性和资源使用控制。

从Vmware的产品演进脉络,可以看到Vmware更关注数据中心的自动化,资源的自动调度和管理,以及应用交付等。Vmware出售VM Recovery Manager,charge back等软件,而并不出售弹性计算、弹性存储,所以,Vmware的设计理念是cloud out的 — 企业CIO或IT经理是其典型用户,企业中大部分应用是传统模式应用,无法水平扩展,不具备自我发现并切换故障的能力。VMware聚焦具体企业痛点,围绕痛点寻找能够满足丰富应用负载模式的有效方案。

openstack一类的云基础设施,既不是提供增值服务的hypervisor副产品,也不打算解决CIO或IT经理的痛点。从设计之初,openstack就不关注传统应用模式的需求,其设计理念是cloud in — Openstack主张不背负任何传统应用的包袱,抛弃所有当前企业应用,从头做起。构建基础架构IaaS需要周全的考虑如何以统一的方式构建基础架构。openstack聚焦对底层逻辑资源,如计算、对象存储、块存储、网络等资源的逻辑封装,而并不围绕安全、数据可用性、资源审计等企业痛点,这些统统由云感知应用自己负责。

微软William Baker的著名的宠物和牲畜理论也形象的表达了Vmware和Openstack设计理念之间的差异。在传统应用模型中,我们对待服务器就象对待宠物,每个宠物有一个可爱而别致的名字,我们宠爱呵护它们,当它们生病时,我们细心照顾直至它们完全康复。而在云感知应用模型中,每个虚拟机降级成牲畜——虚拟机用编号简单区分,每个虚拟机地位相等,当一台故障时,我们粗暴地将它剔除,并引入另一台虚拟机取代它。


技术实现

Openstack、VMware都是庞大的分布式系统。Openstack Nova是openstack的核心模块,swift、Quantum等项目都是从nova中分离独立出来。Nova主要负责控制、计算虚拟化,和Vmware vCenter对应。

本文从可扩展性、可用性、一致性对Openstack Nova和vCenter做浅显的分析。

(1) 可扩展性

对于分布式来说,架构决定了系统所能支撑的规模。1000台主机,一般来说是单个独立管理域是极限。vCenterServer可管理多达1000台主机和10,000个运行的虚拟机。而Openstack受限于rabbitMQ和数据库,独立管理域一般在200个节点以内,还是有比较大的优化空间的。

(2) 可用性

分布式系统的可用性看似很简单,而实际上分布式系统设计就是design for failure。在分布式系统中,不存在一个点,单单从这个点就可以俯瞰全局,给出确切的系统故障的诊断信息。因为,分布式系统就是由一个个不可靠环节构成的。当一个关节点意识到另一个环节可能故障时,故障的可能恰恰是意识到故障的那个关节点。

Openstack目前采用最原始最直接的方式判断节点管理进程的故障,对于网络、管理中心、虚拟机等故障的自动发现和切换都考虑的不太周全。而Vmware HA采用了一个很简单巧妙的设计,将多种检测方式统一起来,可以系统有效地识别主机故障、虚拟机故障、管理进程故障、主机隔离、网络分割等多种故障。Vmware vCenter 5.5App HA进一步加强了对虚拟机Guest OS和虚拟机内应用的可用性保障。

(3) 一致性

Openstack采用共享数据库保障数据一致性。所有主机和控制中心读写唯一数据库。这种一致性保障方式在分布式系统,或者说IaaS平台似乎比较少见。单机和控制中心共同维护数据库,数据库必然会成为瓶颈。在实际运行中,由于数据库主机、虚拟机状态修改操作不当,而导致VM数据残留的情况也时有发生,需要手动从后台操作数据库,刷新VM信息。而Vmware通过分布式事务始终保持数据一致性。甚至,从外观表现来看,Vmware像是一个去中心化的分布式系统。做过分布式系统都会知道,实现去中心化分布式系统的复杂程度,目前大多数分布式系统都采用中心化的方式简化设计实现。而VMware用户可以从任一单机操作,譬如删除虚拟机,操作引起的数据变化可以实时同步到管理中心。当管理中心故障时,用户的单机操作也不会被拒绝。管理中心恢复的第一时间,单机和管理中心会达到数据一致。

有人说,未来云感知应用模式会是主导,主要采用牲畜模式,Vmware保护VM的特性在牲畜服务模型中不再重要。但是我认为,传统企业的存在不容忽视,如果对现有问题不予解决,又怎能真的让人信服。Vmware的模式抽象资源,对应用要求更少,让用户更关注应用逻辑。Openstack虽然受到众多的厂家支持,但是这也意味着被众多的厂家牵制,未来并不明朗。多少IaaS平台都已渐渐淡出人们的视线,谁又知道它是否会成为下一个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值