您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 云计算 > 正文

云原生的“春天”来了吗?

发表于:2021-11-25 作者:高玉娴 来源:至顶网

在IT界,大家喜欢把传统的IT架构比喻成“烟囱式”架构,在这个框架下每一个业务线都是一个独立的“烟囱”,并且通常由不同的开发团队去构建和运维,不但技术栈不同,彼此之间也不互通,所以,数据就很难在不同业务之间形成流动。

以容器为代表的云原生技术可以很好地解决这个问题。它相当于把传统架构中的“烟囱”拆成一个个的“积木”(也就是“容器”),然后再根据特定的业务需求,灵活选择所需的“积木块”进行重新组合。如此一来,数据的边界就不再被限制于某个系统,可以在企业内真正流动起来。

容器技术大约在20年前就已经出现,但直至2013年Docker诞生之后,它才真正被带入大众视线;而随着2014年Kubernetes 项目的发布,容器技术又得以迅速普和落地。虽说是“大器晚成”,但近两年来,容器却得到了肉眼可见的飞速发展和应用。

数据的表现是最直观的。根据中国信通院《2020云计算发展白皮书》的调查报告显示,2019年43.9%的企业表示已经使用容器技术部署业务应用,计划使用容器技术部署业务应用的企业也占到了40.8%;Gartner在《预测分析:全球容器管理(软件和服务)》报告中则预计,到2024年将有75%的大型企业会在生产中使用容器技术;而针对中国市场,IDC的推断是,到2022年60%的中国500强企业将投资云原生应用和平台的自动化、编排和开发生命周期管理。

特别是在经历了疫情冲击之后,敏捷与创新更加成为企业必备的技能,而由于容器具有像积木一样的灵活性,能够帮助企业在开发和运维过程中解放出更强大的生产力、提升创新力,因此,正在被视为越来越重要的存在。

过去几年中,至顶网围绕云原生技术调研并采访了来自金融、制造、零售等各行业企业,试图从中了解大家对于容器、Kubernetes、微服务等云原生技术的接纳和应用程度,以及这个过程中的挑战和解决方案。基于这些,我们认为——云原生技术的“春天”可能真的来了。

云原生技术有何魅力?

1. 提高开发迭代效率

江泰保险经纪股份有限公司(以下简称“江泰保险”)是我国开业的第一家保险经纪公司,业务涉及风险查勘、风险评估、保险办理、安排分保、协助索赔等一系列保险经纪服务,目前在全国设有140多家分支机构。随着近几年来业务规模的扩张和消费者市场的改变,同时为了应对新兴的数字化保险中介平台的冲击,江泰保险大量采用了云计算、容器、移动互联网等技术。

新技术的应用效果不仅迅速而且明显。江泰保险总裁助理李玉存告诉至顶网记者,现在,基于微服务架构和容器技术,公司内部平均每天可以上线1-2款保险产品,最快的3小时就能上线。要放在过去,一个新保险产品从头至尾没有2、3个月绝对不可能投放到市场。仅仅在2019年的上半年,江泰保险就一口气开发了7个系统。

在微服务架构中,容器就像是一个个的“小服务器”,并且它足以满足基础开发环境的快速部署,所以对于开发人员来说,只要把接口定义清楚就可以快速进行功能开发,不必再去考虑服务器、操作系统等这些繁琐的问题,所以开发效率也就随之提升。而开发效率的提升,就意味着开发、部署和运维成本的降低。对于企业来说,这是非常具有吸引力的。

2. 支持流量高并发

再以某大型证券机构为例。通过以容器和Kubenetes为核心构建的容器云平台,该证券机构实现了开发测试生产环境一致性,这同样使得它的单体应用研发从过去的半年时间缩减到天,互联网类应用则实现了秒级的服务实例伸缩。据了解,平台上线三年以来,生产环境容器部署实例数达到数百个节点,支持的业务系统达到二十多个。

可见,除了加快开发的速度,容器技术在支持复杂的系统运维方面也是个潜力股。这一特性对于金融以及互联网等常常要应对高流量并发的行业来说,岂止是“真香”。

过去,企业应对流量高峰,往往要靠购买服务器进行扩容,即便有现成的服务器,也要重新安装软件,然后部署。一系列操作之后,黄花菜都凉了。而采用容器技术,只要通过几个命令就可以进行应用服务的快速扩容,这个时间可以是几分钟,甚至几秒。

更重要的是,如果是在流量低谷期,用户也同样可以通过非常简单操作,比如敲几个命令行,就能快速释放计算资源,这会在很大程度上帮助企业减少成本的浪费。

3. 实现资源弹性伸缩和灵活管理

事实上,几乎对于所有企业,无论是从时段还是业务分布来看,信息和流量的并发都不可能是均匀分布的,所以计算资源也不可能长期只投放于某一时段或者只针对某一个业务,灵活应变才是最可靠的做法。

在接受至顶网记者采访时,华夏银行技术部主管以微信银行的业务重构为例,介绍了华夏银行如何利用容器技术,实现总分行之间资源的灵活调用、分配和拓展。举例来说,对于华夏微信银行的微信消息推送,通常在某个分行举行线下或线上营销活动(如6.18活动)时,消息推送量需求就会迅速提升,此时,通过容器技术,就可以快速调用系统内的闲置资源来满足消息分发需要。

另外,微信银行的业务在不同分行通常会有比较强的定制化诉求,比如某个分行要开发一个新的理财产品,另一个分行要提供定制化的缴费服务,此时,基于容器平台,总行就可以提前做好一套整体的开发标准和基础服务,然后由分行根据自己的服务需求做定制化改造和开发,这不但能够减少重复的开发工作,还能实现总分行在服务方面的协同和能力共享。并且,由于容器与容器之间是相互隔离的,还能很好地保证开发和部署在不影响总行整体业务运行的情况下进行。

可以预见,在正在到来的混合多云时代,容器的这身“本领”会继续让它的应用和普及之路更加一路畅通。它灵活“穿梭”于公有云、私有云、本地数据中心等不同环境的资源,可以帮助企业实现多环境之间的无缝切换和管控。这种“统管”能力,将是未来每个企业都需要的。

应用有何门槛?

至此,容器技术的好处已经跃然纸上。但是,和所有技术一样它也不是十全十美的。比如,因为它的易用性和产品化程度有限,所以对于企业中的很多技术人员来说,使用门槛比较高。具体的难点可能来自方方面面,包括复杂的部署和管理环境,安全和网络问题,应用拆分以及人才问题等等。

根据至顶网DWorks调研显示,企业认为其中相对棘手的是容器复杂的部署环境所带来的管理难题(占比25.9%)。由于不需要为每个容器加载操作系统和内核,因此与虚拟化环境相比,容器化能够在给定的基础架构中实现更高的工作负载密度,所以就增加了容器部署和管理环境的复杂性。归根结底,这是技术优劣势取舍的事。

再拿企业最关心的安全问题举例。容器所带来的安全挑战,已经与传统的安全问题完全不同。过去,一台服务器通常只会跑为数不多的几个应用,但如前面所说,容器可以把企业业务拆分成无数个小应用,所以一台服务器上可能会运行上百个应用,加上调用频度、更新频次以及在多个环境之间的迁移频率变高,风险也就随之变得更加无时不在、无处不在。

与此同时,企业自身的战略布局和思维转变也很重要。比如,在容器化的过程中,企业还会遇到“Yes or No”以及“How”的问题。因为容器技术的采用,势必涉及大量传统应用的改造,对于传统企业来说,这些是一大笔的原始投资。因此,丢给企业的是两个难题:第一,哪些应用要进行容器化改造,哪些不适合跑在容器上;第二,如果要拆分,应该拆到什么样的颗粒度。

不一样的企业、不一样的业务应用可能会有不同的答案。比如,如果一个应用上线之后半年、甚至一年内既不需要扩容、缩容,也不需要升级回稳,那可能就不太适合上容器,只要放在虚机或者物理机上就行;如果是面向C端的客户或者面向渠道的新型应用,就比较适合放在容器上。对此,企业需要制定出一套更适用于自己的标准。

总而言之,随着这两年来企业的需求量越来越大,技术本身及相关标准也越来越成熟和完善,越来越多的技术服务提供商都在推出相关的产品和解决方案,挡在企业面前的这道“墙”,最终也会慢慢被拆掉。

平台有何选择?

那么,下面就来看看市场上都有哪些比较容器产品可以选择。

应该这么说,目前主流的云服务商都推出了他们各自的容器及服务(CaaS)产品。从全球范围来看,AWS有Kubernetes-less Elastic Container Service (ECS)与Elastic Kubernetes Service (EKS)、微软Azure有Kubernetes Service,Google 有Kubernetes Engine (GKE),而IBM/红帽、VMware、SUSE/Rancher等,也都是容器领域的领跑者。

根据Forrester在2020年第三季度的多云容器开发平台研究报告分析,红帽、Google和Rancher被列为三大领导者。其中,红帽的OpenShift是部署最广泛的多云容器平台,在许多公有云、私有云和本地环境都拥有强大的开发和统一运维体验。对于企业来说,OpenShift就像是一个底座,在这之上,企业可以根据自己的需求,灵活移动和统一管理所有的应用。在收购红帽之后,IBM推出的Cloud Paks企业级容器化解决方案,其底座就是OpenShift。

Google和Rancher也各有千秋,Forreste认为Google的最大优势是强大的DevOps自动化,而对Rancher的评价是可以极大地简化大规模的多云Kubernetes管理。

而在国内,华为云、阿里云、腾讯云等主流云服务商也为企业提供了很多容器产品和服务选项。比如,华为云有云容器引擎CCE、容器镜像服务SWR、应用编排服务 AOS;阿里云有容器服务ACK、边缘容器服务、容器镜像服务ACR;腾讯云有容器服务TKE、弹性容器服务EKS、容器镜像服务TCR。此外,还有很多专注PaaS领域的容器云服务厂商,包括博云、灵雀云、时速云等等。

不久前,IDC发布了针对中国市场的《PRC SDC Software Market Overview, 2020H1》报告。报告显示,华为云容器软件市场份额位列中国第一,达到24%。此外,值得注意的是,在这份Top 5的名单中,已经不全是云计算大厂,深耕容器领域多年的博云也突入全国前五,在容器创新型厂商中脱颖而出。

所以,如今在产品和技术支持层面,可供企业的选择还是相当多的。当然,如果企业自己的技术实力足够强大,也并不一定要采用技术提供商的容器产品和服务,完全可以进行自主研发,或者从开源社区等渠道来获得技术支持。在至顶网DWorks调研中,通过这两个方式来使用容器技术的企业分别都占到了23.1%。拿江泰保险来说,他们的容器平台就是纯自研的。而由于Dokcer和K8s从根源上都衍生于开源社区,所以仍然有很多技术人员会倾向于这一方式。

总结:“春”已来,“花”会开

每一个新事物从诞生到发展,从应用到大规模普及,都会经历一个过程。无论是原始时期的石器,还是工业时代的蒸汽机,或是20世纪横空出世的计算机,虽然生产工具不断变化,但其发展轨迹大抵如此。

而现如今的云原生,正在从试水应用阶段慢慢进入普及阶段,市场上既有需求,有挑战,也有解决方案,在这样一个环环相扣的链条中,技术得以走出“实验室”,走出“PPT”,走进企业的业务和应用场景。在这其中,技术也在经过一轮轮的实践和验证,持续被完善,加速被普及。

所以,我们有理由相信,以容器为代表的云原生技术将迎来更进一步的发展,被更多企业接受,在更多业务场景中被应用。我们有理由相信,云原生的“春天”已来!而和所有“春天”一样,容器市场也必将迎来“百花争艳”之景。