英文版git
Cloud native technologies empower organizations to build and run scalable applications in modern, dynamic environments such as public, private, and hybrid clouds. Containers, service meshes, microservices, immutable infrastructure, and declarative APIs exemplify this approach.These techniques enable loosely coupled systems that are resilient, manageable, and observable. Combined with robust automation, they allow engineers to make high-impact changes frequently and predictably with minimal toil.docker
The Cloud Native Computing Foundation seeks to drive adoption of this paradigm by fostering and sustaining an ecosystem of open source, vendor-neutral projects. We democratize state-of-the-art patterns to make these innovations accessible for everyone.架构
中文版app
云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的表明技术包括容器、服务网格、微服务、不可变基础设施和声明式API。这些技术可以构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师可以轻松地对系统做出频繁和可预测的重大变动。负载均衡
云原生计算基金会(CNCF)致力于培育和维护一个厂商中立的开源生态系统,来推广云原生技术。咱们经过将最前沿的模式民主化,让这些创新为大众所用。框架
今天着重就其中的”云原生的表明技术包括容器、服务网格、微服务、不可变基础设施和声明式API“详细描述个人认知运维
容器化,自己并非特别先进的技术,至少不是最近今年的新兴技术,最近其忽然火爆的缘由与云的充分发展有关,与google的大力推广有关,也与目前容器的分层设计逐层依赖有关。
随着k8s的容器编排技术成为业界的逐流,容器化已经不止是containerd这样的容器引擎+docker这样的容器描述技术,容器编排已经包含在容器化这个概念之中。
而k8s对容器自己的抽象仍是比较复杂的微服务
我的不认为服务网格和云原生有必然联系,有点反潮流。
目前服务网格最大的问题是牺牲性能来知足,架构-低耦合、功能上的诉求。后续数据面板与控制面板之间的边界须要从新划分,以在性能和架构、功能 之间达到一个平衡。性能
微服务 是分治思想在软件架构领域的落地方法。将一个复杂的问题,分解为多个小范围的简单问题来处理
这个过程当中须要用到RPC,而针对RPC又引伸出微服务治理,基于微服务治理又有不少的实践--灰度发布、蓝绿发布、金丝雀发布、故障演练(delay or abort)ui
不可变基础设施,能够理解为对生产环境的基础设施不容许进行运维层面的修改。
全部对其的修改都是经过修改有版本管理的源代码(有点相似于gitops的概念,通常是修改dockfile)来完成。
声明式API对我来讲才是最颠覆之前认知的一个东西在最初的时候好比有一个负载均衡后面挂5个无状态的vm,当其中一台vm宕机的时候,之前咱们会收到一个告警,运维或者是devops决定是否马上重启这台机器,或者申请新的vm来替换它(在底层资源作的比较好的时候是能够作到相似于云的状态的或者直接用云服务)。而在云原生领域里当编排框架发现应用的状态与声明的终态不一致时,会优先用集群的资源去进行恢复终态,当没法达成终态时才会去执行告警等操做。节省了大量的运维成本。