2015年11月,第一届 KubeCon 在美国旧金山开始的时候,还只是个200人的小会议,2019年的7月,KubeCon 第二次在中国举办,就有 3500 多位云原生和开源领域工程师齐聚一堂。 连 Linux 及 Git 创始人 Linus Torvalds 本人都来到 KubeCon China 上海现场。Linux 基金会执行董事 Jim Zemlin 说道:“我见证了开源圈子的两大事件:一个是 Linux 的成功,一个就是 Kubernetes 和云原生的大爆发。开源是历史上最成功的全球创新推动者之一,Linux 已经成长为世界上最重要的软件平台,而云原生正以势如破竹之态爆发。”

中国在整个云原生运动中贡献巨大,中国的 K8s contributors 已经在全球所有贡献者中排名第二,超过 10% 的 CNCF 会员来自中国,26%的 Kubernetes 的认证供应商来自中国。

阿里云作为最早成为 CNCF member 的中国公司之一,一直在云原生技术领域不停地实践和探索。在阿里云已经是铂金会员的基础上,蚂蚁金服也最新加入 CNCF 成为黄金会员。

本次 KubeCon China,阿里云又发布了什么黑科技呢?一起来感受下。

亮点1:​​​​​​​拥抱社区,服务最广泛开发者:云原生应用管理与交付体系发布

整个云原生应用管理与交付体系包含五大项目,本次 KubeCon 两大项目率先亮相:国内首个开放云原生应用中心—— Cloud Native App Hub 和云原生应用自动化引擎—— OpenKruise。

开放云原生应用中心 :Cloud Native App Hub

Cloud Native App Hub 希望成为云原生“高速公路”上的托管和分发应用的集散地。为了能够让中国的开发者更好的使用 Helm Hub 的能力,阿里云开发者中心与 Helm 社区达成了一系列技术合作,在开放云原生应用中心提供了国内首个 Helm Hub 北美官方站的同步镜像仓库与 Hub 站点。

开放云原生应用中心,是云原生“高速公路”上的托管和分发应用的集散地,同时也是国内开发者使用云原生应用的重要基础仓库。在 Kubernetes 生态中,“应用”是一组 YAML 格式的描述文件,而云原生应用中心,则为搜索、使用、分享这些应用描述文件提供了一个完全开源与开放的交互平台。

https://developer.aliyun.com/hub

在当前的 Kubernetes 应用生态当中,Helm 是目前最被广泛使用的应用定义标准之一。所以在本次云原生应用中心的发布当中,对 Helm 格式应用的托管、搜索、分发能力成为了中心首次上线的能力。

而为了能够让中国的开发者更好的使用 Helm Hub 的能力,阿里云开发者中心与 Helm 社区达成了一系列技术合作,在开放云原生应用中心提供了国内首个 Helm Hub 北美官方站的同步镜像仓库与 Hub 站点。与此同时,Helm Hub 官方也在其核心 Charts 仓库中推荐了“开放云原生应用中心”作为中国开发者使用 Helm Charts 的首选。

在开放云原生应用中心当中,所有默认的 Helm Charts(Helm 格式的应用),都定时同步自 Helm Hub 北美官方站并托管在 Github 上。在这个过程中, 云原生应用中心会自动对同步过来的所有 Charts 进行“本地化”操作,包括将 gcr.io,qury.io 等访问不畅的镜像 URL 替换成国内镜像源;将托管在 Google Cloud 存储中的应用制品 URL 替换为国内镜像地址,并且不间断的通过后台 CI 系统在阿里云 Kubernetes 服务中验证这些 Charts。

这些技术工作,都将使得中国的开发者终于可以随心所欲的搜索云原生应用,然后直接使用 helm install 命令将这些应用安装在全世界任何一个 Kubernetes 集群当中。

特别值得一提的是,开放云原生应用中心使用的后端存储服务,正是阿里云用以支撑“双十一”峰值交易所使用的阿里云企业级容器镜像服务。这个服务背后,是托管阿里巴巴集团 10万镜像、支撑共计 2 亿次的容器镜像下载量的核心技术积累。

除此之外,云原生应用中心还提供了“一键安装”体验功能,用户只需要提供远端 Kubernetes 集群的接入信息即可一键将应用部署过去。

OpenKruise:云原生应用自动化引擎

在阿里巴巴经济体的整体云原生化过程当中,阿里的技术团队逐渐沉淀出了一套紧贴上游社区标准,适应互联网规模化场景的技术理念与最佳实践。这其中,最重要的无疑是如何对应用进行自动化的发布、运行、管理。

Kruise 是 cruise的谐音,'k' for Kubernetes,字面意义巡航,豪华游艇。寓意Kubernetes上应用的自动巡航,满载阿里巴巴多年应用部署管理经验。Kruise 的目标是automate everything on Kubernetes ! Kruise 项目源自于阿里巴巴经济体应用过去多年的大规模应用部署、发布与管理的最佳实践,源于容器平台团队对集团应用规模化运维,规模化建站的能力,源于阿里云 Kubernetes 服务数千客户的需求沉淀。Kruise 借力于云原生社区,集成阿里巴巴云原生实践之精华,反哺社区,指引业界云原生化最佳实践,少走弯路。

开源地址:https://github.com/openkruise/kruise

Kruise 核心在于自动化,我们将从不同维度解决 Kubernetes 之上应用的自动化,包括,部署、升级、弹性扩缩容、Qos 调节、健康检查、迁移修复等等。此次 Kruise 开源的内容主要在应用部署,升级方面,即一套增强版 controller 组件用于应用的部署和级和运维。后续,Kruise 会依次开源智能化的弹性扩缩容组件,以及应用 Qos 自调节能力的组件等。

众所周知,Kubernetes 项目的核心原理,就是“控制器模式”。

目前,Kubernetes 项目默认已经提供了一套 Controller 组件,例如:Deployment、 Statefulset、DaemonSet 等,这些 Controller 提供了比较丰富的应用部署和管理功能。但是,随着 Kubernetes 的使用范围越来越广,真实的企业与规模性场景中的业务诉求与上游 Controller 功能不匹配的情况也越来越常见。以阿里巴巴为例:阿里巴巴内部的 Kubernetes 集群需要服务涵盖几个 BU,上万种应用。这个体量非常庞大,对规模性和高可用性带来了巨大的挑战。与此同时,阿里云上的 Kubernetes 服务也接入了上千家企业客户,收集并支撑了各种各样的客户需求。这些诉求与最后阿里经济体的实践经验,最终促成了 Kruise 开源项目的诞生。

更多内容:云原生应用自动化引擎 OpenKruise

亮点2:​​​​​​​托管边缘容器(ACK@Edge)发布

随着互联网智能终端设备数量的急剧增加,以及 5G 和物联网时代的到来,传统云计算中心集中存储、计算的模式已经无法满足终端设备对于时效、容量、算力的需求,将云计算的能力下沉到边缘侧、设备侧,并通过中心进行统一交付、运维、管控,将是云计算的重要发展趋势。IDC 预计,到 2020 年全球将有超过 500 亿的终端与设备联网,超过40%的数据要在网络边缘侧进行分析、处理与存储,这对边缘计算提供了充分的场景和想象空间。

边缘计算按功能角色主要分为三个部分:

云:传统云计算的中心节点,有丰富的云计算产品形态和资源,是边缘计算的管控端,负责全网算力和数据的统一管理、调度、存储。

边:云计算的边缘侧,又分为基础设施边缘(Infrastructure Edge)和设备边缘(Device Edge)。基础设施边缘通常位于 IDC 内,拥有充足的算力和存储容量,和中心有专线或骨干网连接,如 CDN 节点等;设备边缘通常指非传统IT基础设施的边缘节点,这类资源更靠近设备和数据源,比较常见的一般是数据网关。

端:终端设备,如手机、智能家电、各类传感器、摄像头等。

边缘计算目前面临的主要挑战有:

  • 云边端协同:缺少统一的交付、运维、管控标准。
  • 安全:边缘服务和边缘数据的安全风险控制难度较高。
  • 网络:边缘网络的可靠性和带宽限制。
  • 异构资源:对不同硬件架构、硬件规格、通信协议的支持,以及基于异构资源、网络、规模等差异化提供标准统一的服务能力的挑战。

另一方面,以 Kubernetes 为代表的云原生技术(Cloud native)是最近几年云计算领域发展最快的方向之一,K8s 也已经成为容器应用编排的事实标准,并以非常快的发展速度扩大在云计算领域的覆盖范围,云原生技术和边缘计算相结合,可以大大提升云技术向边缘拓展的效率。

以 Kubernetes 为基础的云原生技术,核心价值之一是通过统一的标准实现在任何基础设施上提供和云上一致的功能和体验,借助云原生技术,可以实现云-边-端一体化的应用分发,解决在海量边、端设备上统一完成大规模应用交付、运维、管控的诉求;在安全方面,云原生技术可以提供容器等更加安全的工作负载运行环境,以及流量控制、网络策略等能力,能够有效提升边缘服务和边缘数据的安全性;在边缘网络环境下,基于云原生技术的边缘容器能力,能保证弱网、断网的自治性,提供有效的自恢复能力,同时对复杂的网络接入环境有良好的兼容性;依托云原生领域强大的社区和厂商支持,云原生技术对异构资源的适用性逐步提升,在物联网领域,云原生技术已经能够很好的支持多种 CPU 架构(x86-64/arm/arm64)和通信协议,并实现较低的资源占用。

在这样的背景下,阿里云发布 ACK@Edge, 致力于实现云-边-端一体化协同,通过非侵入增强方式,完美拓展云原生的边界。

随着 5G 和物联网时代的到来,云计算的边界也不断扩展。阿里云 ACK@Edge 依托阿里云 Kubernetes 托管服务构建,打造通用的边缘容器云原生基础设施,适用场景广泛。基于主流云原生非侵入式设计原则,实现云边一致体验。同时,原生 +addons 的组合非常有利于业务快速集成及扩展。在构建 IoT 和 CDN 领域的 PaaS 时,不会增加额外的边缘资源成本和维护成本。

ACK@Edge 是致力于云边端一体的云原生边缘容器产品。边缘集群托管服务助力构建云原生边缘计算基础设施,推动云产品云边一体化;向上作为底座支撑边缘计算领域 PaaS 构建;向下支持 ENS、IoT 自有节点等边缘算力资源接入,并支持边缘自治、边缘安全容器、边缘智能等;同时也致力打造云端AI、流计算等能力向边缘下沉的通道和平台,拓宽云产品边界。随着边缘计算的需求爆发,以及 IoT、CDN 等边缘场景规模的逐步壮大,ACK@Edge 将持续在规模性、稳定性方面发力,助力提升边缘计算业务创新效率。

亮点3:​​​​​​​9 年技术沉淀:打造全球超大规模的云原生应用实践

阿里巴巴是国内最早布局云原生技术的公司。早在 2011 年,在业界提出云原生概念之前,阿里巴巴就开始了容器技术的探索,目前集团内部电商、城市大脑等核心业务已经大规模使用云原生技术。

其中,双11 被认为是世界上最大规模的云原生应用实践。去年双11 在线服务完成了全部容器化,10 分钟内 1000+台服务器的快速部署,容器部署规模达到百万级,成功应对 32.5万笔/秒的交易峰值。截至目前,阿里巴巴集团内部容器镜像服务负责托管 10 万镜像,并累积了 2 亿次镜像下载量。

与此同时,这一技术能力正在不断向外输出,阿里云正在将内部积累的全链路压测、极速弹性扩缩容经验服务。拥有国内最大公共云容器集群,国内最大公有镜像仓库,最丰富的场景最佳实践。

以电商领域为例,企业可以通过云原生架构简化云上预演及实战,提升应对流量高峰的效率及可靠性。通过 ACK 在容器应用层面实现业务高弹性,还可以通过 PolarDB 实现数据库的横向纵向扩缩容,通过 PTS 性能测试服务模拟真实业务流量进行全链路压力测试。

阿里巴巴 All in Cloud,沉淀并实现了云原生能力全面升级。更值得一提的是,阿里云拥有业界领先的云原生能力技术栈,是国内唯一进入 2019 年 Gartner《公有云容器服务竞争格局》的企业。

阿里云致力深耕开源社区,将经验精华提炼并形成开源代码回馈生态。此前,阿里云容器平台团队提供过涵盖Kubernetes、Networking、Logs、应用容器化、Serverless、AI 等多个方向的开源组件 20 余项,如高性能网络插件 Terway、深度学习加速器Arena、共享 GPU 调度 GPU Sharing 等。

如今,越来越多的企业都开始向“云原生”演进,阿里云不断打磨、沉淀和升级云原生技术能力,期望通过标准、高效、和易用的方式,助力广大开发者和用户带以实现更大的业务价值。

本文作者:jessie筱姜

原文链接

本文为云栖社区原创内容,未经允许不得转载。

Linus 本尊也来了!为什么 KubeCon 越来越火了?的更多相关文章

  1. 越来越火的"中台"是什么

    很多企业都将促进业务与科技的深度融合作为发展战略,也都想学学阿里的中台战略,其实,除了中台战略之外,基于企业级业务架构设计来实现组件化开发也是企业数字化转型的优选路径,是弥合业务与技术之间“数字鸿沟” ...

  2. 微信公众号【阿里技术(ali_tech)】历史文章整理

    简介 来自微信公众号: ali_tech 阿里巴巴官方技术号,关于阿里的技术创新均呈现于此. 本内容来自微信公众号的分享,最后更新时间2019-10-26,请关注对应公众号接收最新分享,定期同步地址: ...

  3. Python爬取CSDN博客文章

    0 url :http://blog.csdn.net/youyou1543724847/article/details/52818339Redis一点基础的东西目录 1.基础底层数据结构 2.win ...

  4. 普通程序员如何转向AI方向

    眼下,人工智能已经成为越来越火的一个方向.普通程序员,如何转向人工智能方向,是知乎上的一个问题.本文是我对此问题的一个回答的归档版.相比原回答有所内容增加. 一. 目的 本文的目的是给出一个简单的,平 ...

  5. [转载]敏捷开发之Scrum扫盲篇

    现在敏捷开发是越来越火了,人人都在谈敏捷,人人都在学习Scrum和XP...      为了不落后他人,于是我也开始学习Scrum,今天主要是对我最近阅读的相关资料,根据自己的理解,用自己的话来讲述S ...

  6. 初识git版本控制系统

    当下git分布式版本控制系统越来越火,掌握git也是必须的一个技能.因此,对git做了如下学习. Git初级指南 1. 先安装git.(ps:在select cmponents处要勾选Git Bash ...

  7. React.js入门必须知道的那些事

    首先,React.js是facebook在2013年5月开源的一个前端框架,React不是一个MVC框架,它是构建易于可重复调用的web组件,侧重于UI, 也就是view层, React为了更高超的性 ...

  8. iOS从零开始学习直播之音频1.播放本地音频文件

      现在直播越来越火,俨然已经成为了下一个红海.作为一个资深码农(我只喜欢这样称呼自己,不喜欢别人这样称呼我),我必须赶上时代的潮流,开始研究视频直播.发现视屏直播类的文章上来就讲拉流.推流.采集.美 ...

  9. [Network Analysis] 复杂网络分析总结

    在我们的现实生活中,许多复杂系统都可以建模成一种复杂网络进行分析,比如常见的电力网络.航空网络.交通网络.计算机网络以及社交网络等等.复杂网络不仅是一种数据的表现形式,它同样也是一种科学研究的手段.复 ...

随机推荐

  1. stringstream的使用 UVA 10815

    水题题目描述就不写了 主要是发现stringstream真的是好用,可以把string绑定到stringstream中,然后就能以空格为分隔符分割出每个单词,听说每次重新创建stringstream开 ...

  2. input光标错位

    文档结构 <div class="noteWrap"> <input type="text" placeholder="写留言&qu ...

  3. Html-前端表单校验

    先前端校验再跳转action <form action="/hr/kefu/edit_dangan_do.html" method="post" enct ...

  4. 正确而又严谨得ajax原生创建方式

    自己去封装一个xhr对象是一件比较麻烦的事情.其实也不麻烦,注意逻辑和一个ie6兼容方案(可无),和一个304 其他2开头的status都可以就好了 <!DOCTYPE html> < ...

  5. yield和return

    yield 是用于生成器.什么是生成器,你可以通俗的认为,在一个函数中,使用了yield来代替return的位置的函数,就是生成器.它不同于函数的使用方法是:函数使用return来进行返回值,每调用一 ...

  6. Oracle 查询库中所有表名、字段名、表名说明、字段名说明(原创)

    查询所有表名:select t.table_name from user_tables t;查询所有字段名:select t.column_name from user_col_comments t; ...

  7. composer本地安装文档 - CSDN博客

    1.下载下图2个文件 2.将上图2个文件放到php根目录下与php.exe再同一目录 3.在composer.bat写 4.配置环境变量(将php目录复制到环境变量里) 5.将php.ini配置文件的 ...

  8. js 正则去除html代码

    function delHtmlTag(str){ return str.replace(/<[^>]+>/g,"");//去掉所有的html标记 }

  9. bzoj4974: [Lydsy八月月赛]字符串大师

    传送门 题目可转换为已知一个串kmp之后的nxt数组,求字典序最小的原串. 已知第i位结尾的串循环节长度位x,那么nxt[i]=i-x; 当nxt不为0时,s[i]=s[nxt[i]]; nxt为0时 ...

  10. python中在计算机视觉中的库及基础用法

    基于python脚本语开发的数字图像处理包有很多,常见的比如PIL.Pillow.opencv.scikit-image等.PIL和pillow只提供了基础的数字图像处理,功能有限:OpenCV实际上 ...