搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 华为开发者社区 > 从虚拟化到云化

从虚拟化到云化

华为开发者社区 2018-06-28



什么是虚拟化?


虚拟化,是将一台计算机虚拟为多个逻辑计算机。每个逻辑计算机有独立的空间,可运行不同的操作系统,应用程序可以在相互独立的空间内运行,互不影响,显著提高计算机的工作效率。


从虚拟化到云化


虚拟化的本质思想是从物理到逻辑。这种思想在通信系统中也无处不在。从空口的物理信道、传输信道、逻辑信道,到 IP 网络的 VLAN,等等,都有这种思想。虚拟化带来的最大好处是解耦。首先是垂直方向,软硬件解耦,应用程序可以不关心底层的硬件细节。再则是水平方向,应用程序之间的解耦,各应用程序可以选用不同的操作系统,在独立空间运行,互不影响。


虚拟化的定义中还提到一点是显著提高计算机的工作效率。通过共享,从增加统计复用的角度看,可能会提升效率,但最终结果和应用程序的行为模式、系统资源的调度算法有很大关系。当前实际情况呢?麦肯锡统计业务服务器的平均利用率只有 6%,Gartner 乐观些,12%。效率并未得到显著提升。


据说 Intel 当初对虚拟化的支持态度,就因为效率问题而纠结很久。Intel 是卖 CPU 的,提升效率就是砸它的饭碗。当时有识之士搬出 Jevons Paradox(杰文斯悖论):节能技术并不能降低对能源的需求。提升处理效率也不能降低对 CPU 的需求,关键是整体蛋糕能否做大。后来 Intel 决定大力支持虚拟化,在 X86 中内置虚拟化增强功能,并且大力支持虚拟化的软件生态。结果证明 Intel 的决策是英明的。就凭对虚拟化技术和生态的支持能力上,X86 就把 ARM 甩在后面。


什么是云化?


相比虚拟化,云化并没有标准定义(也可能是我没有找到)。现在流行的 CloudNative,业界也没有统一的说法。看了不少文献,业界有两个比较接近的说法:


  • 说法 1:CloudNative 是 DevOps、持续交付、微服务、敏捷基础设施、康威定律等思想的集合;

  • Ÿ说法 2:持续交付、微服务、DevOps 分别描述了 CloudNative 的Why、What 和 How。


看了这个定义,可能是明白的人明白了,不明白的还是不明白。业界还是从 IT 视角,从技术本身来解释云化,确实不太好理解。


华为在 2016 STW 会上讲全面云化的三个特征:第一是硬件的资源池化,第二是软件的全分布化,第三是运行维护管理的全自动化。AT&T 在 Domain 2.0 中,对未来云化网络的三个特征:弹性、开放、自治。两个定义也比较接近,是从 ICT 的视角,讲云化网络的特征。


云化其实还有一个重要的概念是云基础设施。这里面最重要的技术就是云操作系统 (CloudOS)。你可以认为 Windows、Linux 等是单机的操作系统,而 CloudOS 就是云化基础设施的操作系统。开源的 OpenStack 用了 2 年左右的时间,成了云基础设施操作系统的事实标准。这让人们在云基础设施上少了很多的悬念和争论,倒是基础设施上面的 CloudNative,因为概念不统一,成了当前的热门话题。




从虚拟化到云化


虚拟化和云化其实并没有必然的关系,从虚拟化到云化,是一个不准确的说法。不过虚拟化提供的统一计算、存储和网络资源,有利于实现云化的资源池、分布式。所以一般认为,在虚拟化的基础上实现云化,但重申,这并不是一个精确的说法。


无线网络的产品,如果只是虚拟化,对上层软件的影响不大。基础设施通过平台软件来封装,上层软件只需做很小的修改就可以运行在虚拟机上。影响比较大的是 DFX 和运维方式。以前构筑的上下贯通、一体机模式的 DFX 基本都不可用,需要构建新的 DFX 能力。虚拟化下,对基础设施的运维会大大简化。针对框、槽、子系统的基础设施运维方式都没有了,软件和硬件会做到充分的解耦。


如果是云化,则情况更为复杂,除平台外,上层软件还需要做重构。当面的无线网络产品,软件都是按单体来设计的,弹性能力很弱,基本也不具备开放和自治能力。无线产品走向云化的第一步是状态外置,功能和数据解耦。仅是这一步,改动就不小。我们也在探索一种技术,通过嵌入式钩子技术,让产品软件做少量的改动就能做到基本的云化,还在验证中。另外,云化不仅仅是技术,而且包括与之对应的生产模式、交付模式和商业模式,是一个系统工程。从 Single 到 Cloud,无线还有较长的路要走。


无线需要云化吗?


无线需要云化吗?有很多专业的讨论,这里不展开讲。从内部看,持续交付、微服务、敏捷基础设施、康威定律、DevOps 等 Cloud Native 思想,能够提升软件开发效率,促进软件生产力和生产关系的发展。从外部看,云化软件有更好的弹性、可靠性(可恢复性)、可扩展性,更好的开发环境,更好的生态资源,更快的 TTM。按特性上线,快速部署,快速开通,也符合运营商的数字化业务转型诉求。就凭这些,好像优点都占尽,无线软件还是需要云化的吧。


无线云化的场景。首先是部分管道应用可以上云。另外,站点处理资源,包括资源的互连,也可以形成一朵云,就是当前热议的MEC (Mobile Edge Computing)。MEC 的优势是贴近用户,降低时延。中心 DC VS MEC,就如沃尔玛/家乐福超市 VS 好德/联华超市。沃尔玛/家乐福有规模优势,东西多,品种全,但一般都离家比较远。好德/联华东西少,但离家近,一般常用的东西也都有,也是不可少的。好德现在还发挥离家近的优势,可以代收快递,这也是商业模式的拓展。MEC 也一样,只要占据这个点,就有一切可能。进一步拓展,RAN 的资源,如设备、频谱、信道、功放,等等,既然是资源,就可以形成云,当作云来管理,动态共享,这也许才是 CloudRAN 需要发力的方向。


RRU 能上云吗?这个问题不好回答。第一反应,RRU 不可能上云。但 RRU 作为资源,也可以形成云,当作云来管理。不是一定要集中才叫云。富士康在 ODL 开源社区立了一个项目:SD RRH (Software Define Remote Radio Head)。借用 SDN Controller 的思路来管理 RRU,看起来还是很有意思的。




为什么会是富士康?这也是一个亮点。


啰嗦至此,有些认识也不一定对。如果您有更好的看法,也可以在文章下方留言,参与交流讨论哦!


点击阅读原文,了解“SDN Controller 的开放能力 









版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《从虚拟化到云化》的版权归原作者「华为开发者社区」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注华为开发者社区微信公众号

华为开发者社区微信公众号:Huawei_Developer

华为开发者社区

手机扫描上方二维码即可关注华为开发者社区微信公众号

华为开发者社区最新文章

精品公众号随机推荐