Coinbase最新撰文:从近期加密市场动态看比特币的价值主张
云原生基础架构是通向云原生时代的基石,对于很多架构师来说,上云之后,架构为什么成为了云原生架构而不是传统的架构,两者有何区别?云原生基础架构是如何演进的?本文进行了全面梳理。
什么不是云原生基础架构?
云原生被谈的很多了,导致概念很乱。有人把云原生基础架构和公有云、容器、容器编排系统等划等号,之所以出现这N ( + ) * D种情况,原因是云原生架构并没有一个统一的概念。
为了更好的理解云原生系统,这里先做一些排除。
首先,云原生并不等于公有云。云原生基础架构不仅仅是在公有云上运行基础架构,这是因为仅仅k - F y v p _ %从云服务商那里租y M o用服务器时长,并不会使你的基础架构云原生化,管理IaaS和运行物理数据中心本质上没区别。
其次,云原生基础架构不等于在容器中运行应用程序。当Netflix率先推出云原生基础架构时,几乎所有的应用程R R 9 E序都是用虚拟机镜像部署,而不* m , C /是容器。打包应用程序的方式并不意味着k g a。
第三,云原生基础架构不意味着只运行一个容器编排器就是云原生。容器编排器提供了云原生基础架构所需的许多平台功能,但并未按预期方式使用这些功能,/ G Z j & 5 B这意味着应用程序将被动态调度为在一组服8 $ : 8 ^ w $务器上运行。这是非常好的起步,但j h m = W :并不是终点,还有很多工作要做。
第四,云原生不是关于微服务或基础架构即代码。微服务可以在较小的不同功能上实现更快的开发周期,但是单块应用程序可& R s t W a ` * o以具有相同的特性,使它们能够通过软件有效管理,并且还可以从云原生基础架构中获益。
这是当前的主要几个认知误区。当然,如果用排除法,不可能将当前的认知一一列举。从热门的词汇看,容器、容器编排器、微服务……如果回到《理解了云原生,才能正确迎接云时代的到来》一文中,会发现当时讲过它们都是云原生的元素,但都不能和云原生基础架构划等号。
什么是云原生基础架构?
要回答这` E 个问题,得先从基础架构说起- [ q 2 s 4 & h。最早谈的基础架构,是服务器g H M Q e d $ ) T,后来有G X g p了虚拟化,再到IaaS、PaaS,基础架构的演变可以说伴随着时代的变迁。这其中基础架构的演进路线是越来R I ? | j J ~ r治不a ( : 5 & ;需要人类做出决定,它仍然使用自动化,但只有当系统不能自动确定; N k b正确要做的事情时才应该通知人。X ! m L r w f - A自治比自动化多了智能化。
总的来看,云Q P 5 9 w D E原生基础架构一个较为通俗的描述,应用可以通过平台层自动完成资源调用、协调,无需人工干预,所有的资源都是可以随时拉起,随时释放,同时以API的方式提供弹性、按需的计算、存c g R M H m t 5储能力。
如果这种解释令人费解,那么0 n a a,我们可以这么比喻,只要符合“杯子”的概念都是“杯子”,但是制作流程和工艺、材质有本质的不同。而大体上,市面上有默认的几种模式,这也就I J Z l 形成了通用的标准。
所以,云原生基础架3 6 w构也没有业内“放之四海而皆准”的标准,它本身也在u v ]随着技q Y b 3 S ~设计、开发和测试。
至于具体的方法实践倒是其次,这部分最重要的是转变观念。原本传统的基础架构运维人员要成为基础架构软件工程师,只有适应了身份的转变,才能更好地到达云原生基础架构的彼岸。
作为一名基础架构工程师,不仅要掌握设计、管理和运维基础架构的基本原则,还要把专业知识应用在构建强健的应用程序中,这些应用程序代表了将要管理和改变的基础架构。
回归技术关键,最重要的一个环节就是API,设计、开发~ a 0 V,乃至最后的应用,API关乎成败。因为U | I / Y S m G 基础架构a & 0 C H !将需要随着时间的推移而变化或者变异,这是云原h G - x I g U生环境的本质。当运维承担改变基础架构的任务时,API的真实价值就体现出来了。
有关API的g 9 % s设计,及更多技术细节这里不做太G / e n ]多讨论,有兴趣的朋友可以找相关书籍查阅,每本书的思想、方法5 D $ 0 X w Y都可能不一致,要学会兼容并蓄,取长补短。
总结全文,云原生/ ! p 2基础架构是基础架构的自然而可能预期的演变。实现云原生基础架构是比较难的,如果你认为云原生基础架构是你可以t a 2 Q L G购买的产品,或者可以运行服务的供应商,显然要失望了,就目前阶段而言,只有极少数产品实现了云原生,比如今年,各大云服务商都在推的云原生数据库算是其中的典型代表。实现云原生这条路还很长,要慢慢学,慢慢I ? { K z N ( |深= a F 6 f I / `入。