0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

云原生的目的是构建和运行可弹性扩展的应用

SSDFans 来源:全栈云技术架构 作者:云原生计算研究报 2021-11-08 16:25 次阅读

CNCF,The Cloud Native Computing Foundation的缩写,云原生计算基金会。这是业界首个以云原生为主题的组织。

本文摘录自“云原生计算研究报告”,内容重点分析了微服务、云原生的起源,云原生计算基金会,从云计算到云原生,云原生计算对于中国企业客户的价值等。

CNCF 从属于 Linux 基金会。Linux 基金会是一个非盈利性联盟,其目的在于协调、规范、保护、宣传 Linux发展,以便最大限度地保持各个商业公司基于开源 Linux构造的商业发行版之间的兼容性。Linux 基金会是 2007年,由开源码发展实验室(Open Source Development Labs,OSDL) 与自由标准组织(Free Standards Group ,FSG) 联合起来成立的。Linux 基金会扶持与孵化了多个成功开源项目,如:开源虚拟机 XEN、开源软件定义网络 OpenNFV 和 OpenSwitch、开源人工智能可迁移模型ONNX 等等。

2014 年,Cloud Foundry 成 立 基 金 会, 并 隶 属 于Linux 基金会。2015 年 7 月,云原生计算基金会(CNCF)成立,也隶属于 Linux 基金会。云原始生计算基金会(CNCF)宣称:我们致力于加强和维护一个厂商中立的开源生态体系,来推广云原始生技术。

CNCF 基 金 会 给 云 原 生 下 了 明 确 定 义:云原生的技术有利于各组织在公有云,混合云、私有云环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施、声明式 API。这些可靠的自动化手段、云原生技术,使工程师能够轻松地对系统做出切实可行的改进和可预测的重大变更。

从定义中我们可以理解,云原生的目的是构建和运行可弹性扩展的应用,手段是代表云原生的核心技术,如容器、服务网格、微服务、不可变基础设施、声明式 API 等。

自从人类走入局域联网、互联联网、分布式计算、多层技术架构时代以后,我们的技术栈就日益复杂:

前端层:

◇ 开 发 框 架:JQuery、BootStrap、AngularJS、React、Vue、Flutter

◇ 开发技术:移动原生开发技术、小程序开发技术

前端服务层:

◇ 开发框架:Struts、Ruby on Rails

◇ 开发技术:JSP、ASP.NET、HAProxy/Ngnix

◇ 开发语言:PHP、Python、Ruby、Perl、Node.JS应用逻辑层:

◇ 开发框架:SpringCloud

◇ 中间件技术:Kafka、Zookeeper

◇ 开发语言:Golang、JavaC#

数据层:

◇ 存储:Ceph、GlusterDFS、HDFS

◇ 数 据 库:MySQL、Hbase、Redis、MongoDB、NEO4J

◇ 数据工具:ELK、Flume、Presto、ElasticSearch

◇ 数据计算平台:Hadoop MR、Spark、Flink

系统层:

◇ 中间件技术:Docker、Kubernetes

◇ 开发语言:Rust

CNCF 的领导厂商为 Google,目前有 500 多个企业成员加入了 CNCF,铂金级的会员包括:

应用厂商:SAP、Oracle

IaaS 厂 商:AWS、Azure、 阿 里 云、IBM Cloud、Google Cloud、JD Cloud

系统软件厂商:Red Hat、VMWare

网络厂商:Cisco、华为

IT 设备厂商:Dell、NetApp、富士通

芯片厂商:IntelARM

CNCF 最 早 起 源 于 2007 年 Google 研 发 出CGroups,这种技术机制,可以使 Linux 进程能够做到对IT 资源(如 CPU、磁盘、网络)的限制与隔离。2007 年,CGroups 被 集 成 到 Linux 的 内 核 当 中(2007 年,KVM虚拟机技术也被纳入到 Linux 内核中)。2008 年,Linux发布新版本,Linux 容器功能包含在内。

2013 年,Docker 创业公司推出第一个开源容器引擎版本。2014 年,Google 开源容器资源管理与调度平台 Kubernetes,并纳入到 CNCF 基金会的孵化项目中。Google 希望借助 Kubernetes,统一管理多个操作系统之上的所有容器技术,不限于 Docker 公司出品的容器。

经过六年的孵化毕业以及业界其他产品的兼容性认证,CNCF 也形成了一个完整的技术栈图谱:

服务管理产品线:服务网格 Linkerd 和 Istio

中间件层产品线:远程调用中间件 gRPC、消息队列中间件 Nats、消息分发中间件 CloudEvents

数据层产品线:对象文件存储 Rook、关系数据库Vitess(基于开源 MySQL)、KV 数据库 TiKV

容器层:Containerd(是 Docker 的底层运行时管理器,2017 年被 CNCF 接受)、容器网络接口 CNI、容器网络发现 CoreDNS

容器管理层:容器资源管理 Kubernetes、容器镜像仓库管理工具 Harbor、容器镜像分发工具 DragonFly、容器运行日志管理工具 Prometheus、容器运行安全监控工具 Falco

2019 年 10 月,CNCF 发起第一次用户调查(CNCF Survey 2019), 共 收 到 1337 份 有 效 问 卷, 欧 洲 占37%、美洲占 38%、亚洲占 17%,三分之二的人来自软件 / 技术 / 专业服务厂商,其中 41% 是软件架构师、24% 是后端开发工程师、39% 是 DevOps 运维工程师,71% 的人工作在 100 人以上的公司,30% 的人工作在5000 人以上的公司。

服务器使用:15% 的公司拥有 5000 台以上的服务器,70% 的公司拥有 20 台以上的服务器。62% 的服务器是公有云服务器,30% 的服务器是私有云服务器。

容器使用:84% 的公司已经使用容器技术,容器数量大于 250 个的公司超过 50%

Kubernetes 使用:82% 的人在使用 Kubernetes 技术

服务网格使用:18% 的人使用服务网格

无服务器技术使用:41% 的人在使用无服务器技术

Open API 技术使用:14% 的人对外输出 API

CNCF 数据存储技术使用:14% 的人在使用 CNCF 的数据存储技术

持续集成 / 持续发布技术使用:40% 的人使用无状态测试

52% 的人认为云原生计算可以让部署更有效率,45%的人认为云原生计算可以让应用更具有弹性伸缩,39% 的人认为云原生计算可以提高可迁移性和应用高可用性。

对SpringCloud+CloudFoundry,和容器 +Kubernetes 两个生态体系的技术对比:

3af5ae5e-3f59-11ec-9195-dac502259ad0.png

3b575eba-3f59-11ec-9195-dac502259ad0.png

从 对 比 中 我 们 可 以 洞 察 到,CNCF 形成 的 容 器 +Kubernetes 生 态 体 系 已 经 和SpringCloud+CloudFoundry 生态体系旗鼓相当,CNCF把过去暴露在应用框架和应用中间件层的技术下沉到系统层,应用开发人员、测试员、部署实施和配置人员、运维人员,已经不用在应用层级关心这些复杂技术。而且,CNCF 并不主打微服务,而是主打无服务器编程Serverless。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 云计算
    +关注

    关注

    39

    文章

    7779

    浏览量

    137377
  • 服务器
    +关注

    关注

    12

    文章

    9141

    浏览量

    85381
  • 人工智能
    +关注

    关注

    1791

    文章

    47240

    浏览量

    238355

原文标题:云原生,看这一篇就够了!

文章出处:【微信号:SSDFans,微信公众号:SSDFans】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何选择云原生机器学习平台

    当今,云原生机器学习平台因其弹性扩展、高效部署、低成本运营等优势,逐渐成为企业构建和部署机器学习应用的首选。然而,市场上的云原生机器学习平台
    的头像 发表于 12-25 11:54 63次阅读

    构建云原生机器学习平台流程

    构建云原生机器学习平台是一个复杂而系统的过程,涉及数据收集、处理、特征提取、模型训练、评估、部署和监控等多个环节。
    的头像 发表于 12-14 10:34 117次阅读

    什么是云原生MLOps平台

    云原生MLOps平台,是指利用云计算的基础设施和开发工具,来构建、部署和管理机器学习模型的全生命周期的平台。以下,是对云原生MLOps平台的介绍,由AI部落小编整理。
    的头像 发表于 12-12 13:13 93次阅读

    梯度科技入选2024云原生企业TOP50榜单

    近日,国内专业咨询机构DBC德本咨询发布“2024云原生企业TOP50”榜单。梯度科技凭借自主研发的“梯度智能云平台”入选该榜单,彰显公司在该领域的行业竞争力。
    的头像 发表于 12-06 11:35 259次阅读

    软通动力荣登2024云原生企业TOP50榜单

    近日,DBC德本咨询发布“2024云原生企业TOP50”榜单,软通动力凭借自研的“天鹤云原生数据库平台” 荣登该榜单第8名,彰显了公司在该领域的行业竞争力。
    的头像 发表于 12-04 11:27 224次阅读

    云原生和数据库哪个好一些?

    云原生和数据库哪个好一些?云原生和数据库各有其独特的优势,适用于不同的场景。云原生强调高效资源利用、快速开发部署和高伸缩性,适合需要高度灵活性和快速迭代的应用。而数据库则注重数据一致
    的头像 发表于 11-29 10:07 134次阅读

    k8s微服务架构就是云原生吗?两者是什么关系

    和安全性,使开发者能够更轻松地构建和部署现代化的应用程序。然而,云原生不仅仅局限于Kubernetes或任何单一的技术,它是一种方法论和最佳实践,涵盖了多个技术和理念,旨在充分利用云计算的优势来构建和
    的头像 发表于 11-25 09:39 139次阅读

    云原生和非云原生哪个好?六大区别详细对比

    云原生和非云原生各有优劣,具体选择取决于应用场景。云原生利用云计算的优势,通过微服务、容器化和自动化运维等技术,提高了应用的扩展性、更新速
    的头像 发表于 09-13 09:53 386次阅读

    基于Arm架构的Azure虚拟机助力云原生应用开发

    子系统 (CSS) 所构建的解决方案专为运行现代通用云工作负载而设计,并且通过优化,为云原生产品提供更高的效率和性能。
    的头像 发表于 09-05 15:54 1792次阅读

    京东云原生安全产品重磅发布

    “安全产品那么多,我怎么知道防住了?”“大家都说自己是云原生的,我看都是换汤不换药”在与客户沟通云原生安全方案的时候,经常会遇到这样的吐槽。越来越的客户已经开始了云原生化的技术架构改造,也意识到
    的头像 发表于 07-26 10:36 469次阅读
    京东<b class='flag-5'>云原生</b>安全产品重磅发布

    从积木式到装配式云原生安全

    从这两个方面分别进行分析和解决。 新技术带来新的安全风险 云原生的概念定义本身就比较抽象,从诞生到现在也经历了多次变化。2018年CNCF对云原生的概念进行了重定义:云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中
    的头像 发表于 07-26 10:35 296次阅读
    从积木式到装配式<b class='flag-5'>云原生</b>安全

    基于DPU与SmartNic的云原生SDN解决方案

    个轻量级,移植的运行环境,逐渐成为云原生时代基础设施的事实标准。Kubernetes通过网络插件(CNI,Container Network Interface)实现灵活地配置和管理集群中的容器网络,确保容器之间的有效通信和网
    的头像 发表于 07-22 11:44 693次阅读
    基于DPU与SmartNic的<b class='flag-5'>云原生</b>SDN解决方案

    云原生是大模型“降本增效”的解药吗?

    云原生AI正当时
    的头像 发表于 02-20 09:31 387次阅读

    米哈游大数据云原生实践

    近年来,容器、微服务、Kubernetes 等各项云原生技术的日渐成熟,越来越多的公司开始选择拥抱云原生,并开始将 AI、大数据等类型的企业应用部署运行云原生之上。以 Spark 为
    的头像 发表于 01-09 10:41 585次阅读
    米哈游大数据<b class='flag-5'>云原生</b>实践

    ubuntu下部署envoy并作为前端代理方法

    Envoy 是一个开源的高性能、扩展的代理服务,最初由 Lyft 公司开发。它设计用于处理现代的微服务架构中的网络通信,并提供了许多功能,包括负载均衡、服务发现、路由、认证、授权等。Envoy 被广泛用于构建和部署
    的头像 发表于 01-08 18:08 386次阅读
    ubuntu下部署envoy并作为前端代理方法