为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

容器和无服务器计算的发展趋势

2019-12-15 6页 doc 197KB 15阅读

用户头像 个人认证

IT人

暂无简介

举报
容器和无服务器计算的发展趋势容器和无服务器计算的发展趋势导读容器和无服务器计算正在改变人们对操作系统的期望。企业计算跟久了,你会开始谈论“堆栈”。这是一个术语,指的是在现代数据中心运行的复杂软件层次,堆栈中最基本的部分是操作系统,它管理堆栈中的其他部分如何使用硬件。多年来,微软和Linux供应商一直在争取控制这个基本的和利润丰厚的部分。但是随着云计算的发展,其他部分的重要性越来越突出。容器允许应用程序独立于操作系统运行,是这种发展的火花之一。容器编排软件如Kubernetes越来越重要,意味着一些曾经由操作系统完成的资源管理现在可...
容器和无服务器计算的发展趋势
容器和无服务器计算的发展趋势导读容器和无服务器计算正在改变人们对操作系统的期望。企业计算跟久了,你会开始谈论“堆栈”。这是一个术语,指的是在现代数据中心运行的复杂软件层次,堆栈中最基本的部分是操作系统,它管理堆栈中的其他部分如何使用硬件。多年来,微软和Linux供应商一直在争取控制这个基本的和利润丰厚的部分。但是随着云计算的发展,其他部分的重要性越来越突出。容器允许应用程序独立于操作系统运行,是这种发展的火花之一。容器编排软件如Kubernetes越来越重要,意味着一些曾经由操作系统完成的资源管理现在可以在其他地方处理。此外,微软Azure首席技术官MarkRussinovich表示,事件驱动的无服务器开发技术的出现可能会导致我们对堆栈中操作系统的思考方式发生更多变化。“如果你看一下容器发展的方式,那么基本上就是操作系统模型的一个演变。它们有文件系统的视点。“Russinovich表示,“如果你看看一个应用程序试图做什么,就有可能摆脱这种抽象。”操作系统还是有用的:为了响应服务器上运行的应用程序的基本需求,必须负责分配硬件资源。但它所扮演的角色可能会发生很大的变化,这种转变可能会对未来的数据中心如何被整合起来产生深远的影响。这可能会对红帽和微软带来问题——红帽和微软已经积极支持云计算,但是仍然通过向服务器厂商和建立内部数据中心的公司销售传统操作系统而赚大钱。同时,这可以为创业者们提供一些有趣的机会,以新的方式来开发历史上需要花费大量资源来开发和维护的产品。就像FPGA(现场可编程门阵列)在人工智能研究人员中流行起来(这要归功于它们的灵活性),轻量级的操作系统(保证你只需要一个简单的包来完成所有的工作)可能会成为计算的云原生方法。操作顺序操作系统的名字或多或少意味着:这是一个操作计算机的系统。操作系统作为高级应用程序活动与硬件组件(如处理器、内存和存储)之间的桥梁,传统上它们是上述堆栈中最重要的组件之一。Unix曾经是企业计算的主流操作系统,而随着互联网在20世纪90年代后期起飞,水平扩展的低端服务器的崛起使得Windows进入了企业组合。大约在同一时间,一个名叫LinusTorvalds的人正在领导一个项目来完善Unix的开源版本。现在有几十个Linux的企业计算机版本,包括RedHatEnterpriseLinux和AWS的定制Linux发行版。MicrosoftAzure(朝着与操作系统无关的方向发展)现在为其客户提供8种Linux选项——这些服务以前都是Windows。大多数云供应商也提供一系列Linux选择。现在我们看到了另一个转变。2000年代最热门的企业技术是虚拟机——由于引入了VMware的硬件虚拟化和软件,公司可以在单个处理器内核上运行多个应用程序。虚拟机还在广泛使用中,它需要将操作系统的副本与其余的应用程序软件一起打包才能运行,而称为虚拟机管理程序的软件管理这些虚拟机的部署方式。现在,基于操作系统级别虚拟化的容器允许开发人员将更多的应用程序打包到单片硬件上。容器也很有趣,因为它们不需要有操作系统代码就可以工作,这意味着它们可以很快启动,特别是与虚拟机相比。Russinovich说,虚拟化使人们能够从相同的硬件中获得更多的性能,容器则又有了新的飞跃。容器成为核心容器正在改变人们对操作系统的期望。我们可能正处于21世纪企业计算机操作系统“瘦身”运动的开始阶段。像CoreOS这样的公司以及像Alpine和CentOS这样的开源项目都倡导精简操作系统,相信操作系统高层部分的许多复杂性可以通过容器管理软件和Kubernetes(容器时代的管理程序)来处理。 “我们从一开始就看到容器会改变人们对操作系统的看法。”CoreOS联合创始人兼首席技术官BrandonPhilips表示,“我们推出了以容器为中心的全系列操作系统。”在容器之前,企业应用程序必须与操作系统紧密集成,因为它们依赖运行的所有组件——二进制文件和库——必须在操作系统中可用。容器允许开发人员将这些二进制文件和库与他们的应用程序打包在一起,而不必带上操作系统,这意味着操作系统本身不必提供广泛的应用程序依赖项。减轻负载可能会有一些有趣的效果。一方面,操作系统越不复杂,就越趋于稳定。而在这个每个人都在攻击别人的世界里,意味着如果软件较少,则可以发现和利用的软件漏洞更少。Phillips表示,如果代码基数较小,操作系统开发人员就更容易更新和修补系统。他说:“因为害怕破坏应用程序,操作系统经销商一直害怕更新,但容器化改变了这一点。”在这种改变的最后端是unikernel,其中应用程序或多或少地管理硬件资源。unikernel基本上删除了传统上由操作系统处理的管理层,并将在系统的处理器上直接运行应用程序所需的所有东西封装起来,从而消除了对传统应用程序依赖的大量操作系统组件的需求。抓住重点当谈到像unikernel这样的想法时,有很多怀疑论者。三星Joyent公司的首席技术官BryanCantrill去年曾经提出了一个相当尖锐(但是非常有品牌意义)的观点,那就是为什么unikernel的概念还没有准备好用于生产系统。他在最近一次谈话中也谈到了相关内容。他阐述了一个古老的关于技术发展的真理:一个系统开始很简单,然后添加功能来做很酷的事情(或者为了销售更多的软件),直到系统变得如此臃肿,直到最终一种功能简单而有效的东西来颠覆它。然而,对于一个中等规模的科技公司来说,一个简化的操作系统要求你做更多的工作来将应用软件所需的所有组件拼凑在一起。一些团队会喜欢这种灵活性,而其他团队则会感到过于复杂。红帽产品管理总监GunnarHellekson表示:“Linux发行版的诞生是有原因的,因为人们不想把所有的软件包都捆绑在一起。让别人做这个工作是有价值的。”很可能,像Kubernetes这样的工具变得更容易使用和更成熟,从而导致容器使用量的又一次爆炸增长,轻量级操作系统的价值可能开始显现。但无服务器技术的兴起可能完全避开了这样的争论。像无服务器开发这样的事件驱动编程模型进一步离开了操作系统层,可以使应用程序开发人员根本不用考虑操作系统。像AWSLambda或AzureFunctions这样的服务不仅可以处理硬件资源,还可以抽离操作系统层,使开发人员能够专注于事件、期望结果,以及最适合自己情况的云供应商。保持简单过去几十年来,在抽象出计算机实际工作的复杂性方面,我们已经看到了稳步发展,这为软件开发的爆炸式增长以及全新产业的开启铺平了道路。然而,我们必须时刻提醒自己,尽管尖端云计算技术引发了各种会议和技术讨论,仍然有很多公司在过时的技术上运行得足够好,这可能会减缓对有前景的新型企业方法计算的采用。让操作系统规模和角色变化所带来的好处对于数量足够多的企业来说是有意义的——这需要一定的时间,而对于某些类型的工作负载,这种情况可能永远不会发生。但是,在这样的环境中可能会有一些类型的应用程序可以蓬勃发展,并且总会有新想法和使用最新工具构建的应用程序出现(这些工具过去是不可靠或不能大规模使用的)。Phillips说,软件开发人员倾向于寻找使他们的工作更轻松、更快的解决。对于他们来说,这更少地关于操作系统,而更多的是关于,“我的应用程序是否在运行,而操作系统是否让它继续工作?”1
/
本文档为【容器和无服务器计算的发展趋势】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索