一文了解我国贡献给CNCF云原生基金会开源项目(201025)

标签: 微服务架构 | 发表时间:2020-10-25 14:41 | 作者:人月神话
出处:http://blog.sina.com.cn/cmmi

今天整理下我国贡献给CNCF云原生基金会的开源项目,对于云原生解决方案我在前面写过相应的文章进行介绍,但是没有系统的整理过我国贡献到CNCF的开源项目。今天结合CNCF最新的云原生全景图,做下初步整理,由于项目太多也仅仅只能整理一些重要项目。

CNCF基金会和开源项目孵化

一文了解我国贡献给CNCF云原生基金会开源项目

 

CNCF,英文全称为Cloud Native Computing Foundation,中文译为“云原生计算基金会”。成立于2015年12月11日。CNCF是Linux基金会旗下的基金会,可以理解为一个非盈利组织。

当年谷歌内部一直用于编排容器的Borg项目开源了,为了该项目更好的发展,谷歌与Linux基金会一起创办了CNCF。同时,谷歌把Borg用Go语言重写,更名为Kubernetes并捐赠到CNCF。

成立这个组织的初衷或者愿景,简单说就是推动云原生计算可持续发展;帮助云原生技术开发人员快速地构建出色的产品。

根据CNCF基金会官网我们可以,最近几年CNCF组织和开源项目加入发展迅猛,看到已经有超过200个以上的项目加入了CNCF开源项目中。而对于国内的类似腾讯,华为,阿里,青云,京东等也都是基金会的重要成员单位。

如上图所示,CNCF项目分为Sandbox、Incubating和Graduation三个阶段。根据成熟度级别,每个CNCF项目会逐步走过它的早期Sandbox以及孵化阶段从而毕业。

被CNCF接受并成为Sandbox项目需要至少2个TOC的sponsor的支持才能够进入到正式的孵化阶段。而到了孵化阶段的项目需要满足所有Sandbox的需求,并且必须提供至少三个独立的终端用户成功地使用在生产环境中的资料信息,在质量和范围方面都能够得到证明才能够正式毕业。

虽然当前加入的项目很多,可以看到,实际当前已经毕业的项目很少,只有类似Kubernetes, Prometheus,Envoy,CoreDNS等几个项目已经完全毕业。而其它诸多项目都还处于沙箱和孵化阶段中。

自动化,配置中心和容器管理

一文了解我国贡献给CNCF云原生基金会开源项目

 

KubeEdge

在19年3 月,CNCF 基金会及技术委员会全体一致同意开源智能边缘项目 KubeEdge 加入 CNCF 社区,成为 CNCF 在智能边缘领域的首个正式项目。

KubeEdge 全面支持端、边、云协同、服务网格通信能力,提升了性能和节点管理规模。依托 KubeEdge 原生开源边缘计算平台,边缘计算将云端计算能力延伸到靠近终端设备的边缘节点,目前已经广泛应用于工程质检、OCR、人脸识别、驾驶行为分析等边缘场景。

Apollo

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。Java客户端不依赖任何框架,能够运行于所有Java运行时环境,同时对Spring/Spring Boot环境也有较好的支持。

对于Apollo当前已经成为一个大家主流采用的应用到微服务架构开发,特别是多团队协同中的配置中心。特别是对于配置信息实时刷新,缓存,配置信息维度管理,前台提供操作界面等方面都优于Spring Config配置中心。

HarBor

由 VMware 公司中国团队为企业用户设计的 Registry server 开源项目,包括了权限管理(RBAC)、LDAP、审计、管理界面、自我注册、HA 等企业必需的功能,作为一个企业级私有 Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用 Registry 构建和运行环境传输镜像的效率。

当前在DevOps和容器云的集成方案中,HarBor成为一个主流采用的镜像库管理和存储方式。当前HarBor已经处于毕业状态。

Dragonfly

Dragonfly(蜻蜓)是阿里自研的 P2P 文件分发系统,用于解决大规模文件分发场景下分发耗时、成功率低、带宽浪费等难题。大幅提升发布部署、数据预热、大规模容器镜像分发等业务能力。

开源版的 Dragonfly 可用于 P2P 文件分发、容器镜像分发、局部限速、磁盘容量预检等。它支持多种容器技术,对容器本身无需做任何改造,镜像分发比 natvie 方式提速可高达 57 倍,Registry 网络出流量降低99.5%以上。

容器编排,协同,服务注册,远程调用

一文了解我国贡献给CNCF云原生基金会开源项目

 

对于容器编排,当前由Google贡献的Kubernetes已经成为主流,不再叙述。

KubeSphere(QKE)

KubeSphere 是一款独立的分布式容器管理平台,这是青云 QingCloud 正式发布的开源项目,已于今年4 月份正式加入CNCF 和Linux 基金会,本次大会发布了高级版交付QKE(QingCloud Kubernetes Engine) 服务,这在提供K8s 集群内核的基础上,屏蔽掉底层IaaS 运维管理复杂度之外,同时还完整继承了KubeSphere 体系化的平台层管理功能、DevOps 和微服务治理工具,监控告警工具以及应用管理组件,帮助开发者以最低成本完成容器转型。

Nacos

阿里开源的Nacos服务注册中心和服务配置中心。当前也是被大量在微服务架构应用中采用。

Nacos 支持基于 DNS 和基于 RPC 的服务发现(可以作为springcloud的注册中心)、动态配置服务(可以做配置中心)、动态 DNS 服务。

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。

Dubbo

阿里开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

SOFA-RPC

蚂蚁金服自主研发的分布式的系统中间件,包含金融级云原生的架构所需要的各种组件,其中包括微服务的研发框架、RPC调用框架、服务的注册中心、分布式定时任务、限流/熔断机制、动态配置的推送功能、分布式的链路追踪、Metrics监控、分布式高可用队列、分布式事务框架、分布式数据库代理等组件。是在金融领域完整的分布式解决方案。

可以看到该解决方案提供基于RPC调用的完整接口服务治理管控能力。

蚂蚁金服金融级分布式架构 SOFAStack 中的 3 个项目加入这次最新版本的 Cloud Native Landscape ,分别是 SOFAMosn、分布式链路跟踪系统 SOFATracer、RPC 服务框架 SOFARPC 。

Tars

腾讯开源的Tars,不仅仅是一个高性能的RPC调用框架,也可以看作是一个完整的基于RPC的微服务开发和治理框架。Tars 是基于名字服务使用 Tars 协议的高性能 RPC 开发框架,同时配套一体化的服务治理平台,帮助个人或者企业快速的以微服务的方式构建自己稳定可靠的分布式应用。

API网关和服务网格

一文了解我国贡献给CNCF云原生基金会开源项目

 

对于API网关,可以看到Kong网关,暂时没有看到国内开源贡献到CNCF的API网关产品。对于GoKu实际上是一款不错的API网关产品,基于go语言,性能也不错,但是处于半开源状态。

Sentinel

阿里开源的Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。2020 年,推出 Sentinel Go 版本,继续朝着云原生方向演进。

对于ServiceMesh部分,在前面谈云原生的时候曾经谈到华为和阿里都有自己的Mesher解决方案,但是在当前的CNCF全景图里面暂时没有看到。

监控,日志和链路跟踪

一文了解我国贡献给CNCF云原生基金会开源项目

 

在这块当前可以看到,应用到容器云环境的主流还是Google开源的Prometheus监控。当前很多云原生解决方案中也进行了集成。

SkyWalking

Skywalking是由国内开源爱好者吴晟(原OneAPM工程师,目前在华为)开源并提交到Apache孵化器的产品,它同时吸收了Zipkin/Pinpoint/CAT的设计思路,支持非侵入式埋点。是一款基于分布式跟踪的应用程序性能监控系统。另外社区还发展出了一个叫OpenTracing的组织,旨在推进调用链监控的一些规范和标准工作。

当前对于SkyWalking也是常用的微服务架构体系中的服务链路跟踪工具。

SOFATracer

蚂蚁金服开源的服务链路跟踪工具,前面已经做过介绍。

Alibaba Cloud Log Service

阿里开源的阿里云日志服务

听云

当前商用的APM主流的包括OneAPM和听云,在云原生全景图里面有听云,但是实际APM产品并没有开源,或者不清楚具体开源了哪个部分的内容。

数据库和流处理

一文了解我国贡献给CNCF云原生基金会开源项目

 

TiKV和TiDB

TiKV 是一个分布式事务键值数据库,最初是为了补充 TiDB 而创建的。TiKV 采用 Rust 构建,由 Raft 提供支持,受到 Google Spanner 和 HBase 设计的启发,提供简化的调度和自动平衡,但不依赖于任何分布式文件系统。

TiDB 是 PingCAP 公司自主设计、研发的开源分布式关系型数据库,是一款同时支持在线事务处理与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP)的融合型分布式数据库产品,具备水平扩容或者缩容、金融级高可用、实时 HTAP、云原生的分布式数据库、兼容 MySQL 5.7 协议和 MySQL 生态等重要特性。

刘奇,PingCAP创始人&CEO。开源黑客,知名开源项目 TiDB / TiKV / Codis 作者,曾任职豌豆荚 / 京东,擅长分布式数据库和分布式缓存。

应用开发和持续集成

一文了解我国贡献给CNCF云原生基金会开源项目

 

ServiceComb

ServiceComb 作为 Apache 开源组织下的一款微服务框架,其前身为华为云的 微服务引擎 CSE (Cloud Service Engine) 云服务。它意味着国内一款微服务框架在华为和 Apache 组织的共同努力下,随着微服务市场的火爆,一定会让越来越多的开发者所喜欢。

存储

一文了解我国贡献给CNCF云原生基金会开源项目

 

YRCloudFile

近日,CNCF 发布最新版本的 Cloud Native Landscape,焱融云的存储软件 YRCloudFile 被列入云原生全景图谱,位于云原生存储象限中,是中国首个被收录的容器持久化存储产品。YRCloudFile 是焱融云推出的一款全面支持容CNCF器存储的高性能分布式文件存储产品,可支持多种容器编排框架,为企业用户提供容器持久化存储服务。



 

相关 [cncf 生基 开源] 推荐:

一文了解我国贡献给CNCF云原生基金会开源项目(201025)

- - 人月神话的BLOG
今天整理下我国贡献给CNCF云原生基金会的开源项目,对于云原生解决方案我在前面写过相应的文章进行介绍,但是没有系统的整理过我国贡献到CNCF的开源项目. 今天结合CNCF最新的云原生全景图,做下初步整理,由于项目太多也仅仅只能整理一些重要项目. CNCF,英文全称为Cloud Native Computing Foundation,中文译为“云原生计算基金会”.

Google开源LevelDB

- 酿泉 - Solidot
Google宣布在BSD许可证下开源其键值存储引擎LevelDB. LevelDB C++库可用于多种不同环境,如被浏览器用于存储最近访问的网页缓存,或者被操作系统使用去储存安装的软件包和依赖包清单,或被应用程序用于存储用户设置. Google称,即将发布的新版Chrome浏览器,就包含了基于LevelDB的IndexedDB HTML5 API实现.

再论开源

- - 谢益辉
几年前我写过一些关于开源的 想法,如今再来看开源,我觉得问题已经不在说教上,而是在趋势上. 倒退十年或更久,那时候程序员相对还比较稀缺,软件闭源开发出来之后别人模仿的成本高,而这些年计算机教育的普及让码农数量变得越来越多,更多人懂编程了,模仿的成本大幅下降. 写软件作为谋生的目的已经在弱化,更多的是为了自己的实际需求,或社区名声:你不开源.

SoftEther VPN开源

- - Solidot
日本筑波大学的全球分布式公共VPN中继服务器软件SoftEther VPN正式在GPLv2许可证下开源,源代码托管在Github、SourceForge和Google Code上. SoftEther VPN是VPN Gate的底层VPN引擎,在开源之后用户将可以编译出自己定制的二进制包. SoftEther VPN提供了一种分布式的免费公共VPN中继服务,服务器由志愿者托管,因此很少能提供长时间的VPN连接,但代理服务器的不断变化也增加了封杀难度.

Facebook 开源 Detectron

- - 最新更新 – Solidot
Facebook 在 Apache 2.0 许可证下 开源了它的目标识别平台 Detectron, 源代码托管在 GitHub 上. Detectron 用 Python 开发,基于 Caffe2 深度学习框架. Facebook 同时公开了超过 70 个预先训练的模型. Detectron 项目始于 2016 年,实现了一系列最新的目标识别算法如 Mask R-CNN,该软件平台在社交巨人的视觉感知系统的进步上扮演了重要角色.

ios代码开源

- - CSDN博客移动开发推荐文章
本人从10年开始搞ios开发,从菜鸟到现在的入门,期间遇到了许多困难,也总结了一些东西,本着开源精神,希望大家共同成长的目的把这个工程开源出来.. 这个工程是从11年到13年之前完成的.主要是我平时用到的一些基础功能模块.其中有其他开源的代码和我自己写的一些.代码结构基本乱,12年以后的代码结构还可以,不是很乱,之前水平有限,如果不怎么样就别喷我了.

Azul开源Zing Jvm

- - InfoQ cn
4月末,继Zing 5.2 之后,. Azul Systems宣布他们将无停顿(pauseless )的 Zing JVM提供给开源软件开发者和项目,以供开发和测试. Azul Systems 工程部副总裁和合作创始人Shyam Pillalamarri向InfoQ说明道:. 我们的部署很大一部分基于开源组件,所以我们认为:“假设我们不能将一些有价值的东西免费提供给开源项目贡献者,他们将一直受限于从Java虚拟机(JVM)视角所看到的内容”,他们将不会考虑额外的用例,或者选择其他能解决了所有内存或扩展性问题、类似Zing的系统.

Java开源建站工具

- Amom - 阮一峰的网络日志
美国程序员Jon Scott Stevens,公布了他的创业公司所使用的开发工具清单. 他的语言平台是Java,开发项目是一个网站(还未上线). 所用到的工具都是开源的,可以免费得到. 在目前的创业者之中,用Java作为网站开发语言的人似乎很少. 这当然不是没有原因的,Java看上去确实不像是最便捷的网站开发工具,给人的感觉是用起来麻烦又费事.

开源Python UI框架:Kivy

- xin - 秀码趣 - ShowMuch.com
Kivy是一个可用以快速创建新颖用户界面应用的开源Python库,比如可以用它来创建多点触摸的应用程序,它具备跨平台特性,目前发行有Windows、MacOS、Linux以及Android版本. 作为一个开源框架,Kivy具备以下特性:A.百分百免费使用;B.基于 LGPL3协议 开源,对商业化应用友好;C.跨平台,支持Windows、MacOS、Linux以及Android;D.允许在不同的平台上运行同一套代码;E.稳定以及有完善的API文档;F.通过OpenGL ES 2.0对硬件进行加速;G.自然支持大部分的输入协议或者输入设备;H.基于Python的简单API……等等.

Java开源建站工具

- Alex - 博客园新闻频道
  美国程序员Jon Scott Stevens,公布了他的创业公司所使用的开发工具清单.   他的语言平台是Java,开发项目是一个网站(还未上线). 所用到的工具都是开源的,可以免费得到.   在目前的创业者之中,用Java作为网站开发语言的人似乎很少. 这当然不是没有原因的,Java看上去确实不像是最便捷的网站开发工具,给人的感觉是用起来麻烦又费事.