云原生技术剖析

2021-01-04 01:47
科学与信息化 2021年1期
关键词:康威应用程序容器

中国联通河北分公司 河北 石家庄 050000

云原生(Cloud Native),是Pivotal 公司的Matt Stine于2013年提出的一个比较抽象的概念,如果把两个单词拆开来看,Cloud 指的就是应用软件部署在云端,而Native指的是应用软件从一开始就是专门为云端特性设计的,从而可以充分发挥云平台的弹性优势。

2015年谷歌牵头成立了云原生计算基金会(CNCF),以推动云原生技术的发展。目前,该基金会成员已有超过一百家企业与机构,包括亚马孙、百度、思科、微软等巨头。CNCF认为云原生系统应该具备以下三个特征:

(1)容器化封装:以容器为基础,简化云原生应用程序的维护。(2)自动化管理:统一进行调度和管理,以实现降本增效。(3)面向微服务:根据高内聚低耦合的,提升应用程序的敏捷性及可维护性。

当前,业界对云原生的看法一致,即云原生包含了四个基本要素:容器、微服务、DevOps、持续交付。要充分理解云原生技术,需要对这四个要素进行分析[1]。

1 容器,云原生框架的基石

容器不是一个新概念,早在1979年就出现了。

也许很多人会将Docker与容器画等号,其实Docker只是容器理念中最普及的一种应用技术。容器的英文单词是Container,含有集装箱的意思,而借用集装箱技术会更好理解的容器技术。

集装箱的特点在于标准化,这样它就可以大量堆叠,装卸也很方便。容器是把程序代码运行所需的相关环境进行打包,封装进了一个系统,就像集装箱一样,直接运走就行,不用关心货船是什么样。

通过使用容器,用户就可以将微服务及其所需的各种配置、环境变量和依赖关系很方便地移动到全新的服务器节点上,而不需要重新做环境配置。

在容器领域,Docker目前是最受欢迎的一种技术,Kubernetes则成为容器编排和管理中最常用的技术。

2 微服务,改变了产品的开发方式

微服务是什么?原来一个产品的开发可能会被拆成几个大模块,然后分给几个团队来做,最后再整合。微服务的思想是把一个产品拆得更细,然后由一个或几个人负责一个服务的开发,每个服务之间都是相互独立的。

微服务的优点很明显,高内聚、松耦合、灵活、易集成,但同时也存在挑战,比如怎样对服务进行切分。其实,早在1968年康威就提出了--康威定律,系统服务的划分应该根据组织架构的功能进行划分,这一点用在微服务领域非常合适:

(1)内聚更强,所有遵循相同业务准则的人聚合在一起,容易解决问题。

(2)服务解耦,使得程序变更更加容易,更加敏捷。

3 DevOps,内部协作更加紧密

DevOps,如果从字面上来理解,是Dev(开发)+Ops(运维)。

众所周知,传统的软件组织把开发、IT运营及质量保障设为各自独立的部门。开发与运营之间存在着“鸿沟”--例如运营人员要求更好的可靠性和安全性,开发人员则希望基础设施响应更快,而业务用户的需求则是更快地将更多的特性发布给最终用户使用。

每个部门都有不同的需求,怎么调和?DevOps的价值这时就体现出来了。DevOps思想的引入对产品的功能开发、测试、交付和维护起到意义深远的影响。其最大的价值在于透过“软件交付”和“架构变更”的自动化流程,更加快捷、频繁和可靠地进行软件的构建、测试和发布。

因此,更深层次的理解,DevOps是一种把“软件开发人员(Dev)”和“IT运维技术人员(Ops)”组织在一起,进行沟通合作的文化、运动。

4 持续交付,云原生的终极目标

怎样理解持续交付?这个概念听着比容器、微服务、DevOps更抽象。其实简单来说,它就是一种能力,就像生产线能持续生产产品一样。

为什么要进行持续交付呢?传统的软件开发,周期通常是以月、季度、年来计算,现在呢?一个应用程序,如果晚上线一个小时造成的损失都可能是非常巨大的,所以要小步快跑、快速进行迭代,这就是持续交付的意义所在,不断地交付软件,不断地修正问题。

如果把云原生的四个基本要素关联起来,会发现持续交付才是最终目标。但要实现持续交付这个目标,容器、微服务、DevOps三个要素缺一不可。

5 云原生的意义

云原生指的不是一个具体的产品,也不是把传统IT架构中的东西搬到云上,而是基于云的一种全新的IT理念,必须要对与之相关的包括应用的架构、应用的开发方式、应用的部署和维护方式等都做出变更,包括弹性、自动伸缩、动态调度等。

云时代我们要以全新的理念来看待软件的架构和基础设施,我们也只有从这个角度理解云原生才能得到正确的答案。未来必然是属于云原生的,企业更新的不应只是工具,更是理念的变革,只有这样,才能真正发挥出云的价值,才能享受新IT技术带来的红利,才能更好迎接云时代的到来!

猜你喜欢
康威应用程序容器
容器倒置后压力压强如何变
2021年普通高等学校招生全国统一考试(乙卷)文科数学
康威与平面几何
难以置信的事情
删除Win10中自带的应用程序
谷歌禁止加密货币应用程序
取米
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序