Linus 本尊也来了!为什么 KubeCon 越来越火了?

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 2015 年 11 月,第一届 KubeCon 在美国旧金山开始的时候,还只是个 200 人的小会议,2019 年的 7 月,KubeCon 第二次在中国举办,就有 3500 多位云原生、开源领域工程师齐聚一堂。

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:拥抱社区,服务最广泛开发者-云原生应用管理与交付体系发布

image.png

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

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

Cloud Native App Hub希望成为云原生“高速公路”上的托管和分发应用的集散地。为了能够让中国的开发者更好的使用 Helm Hub 的能力,阿里云开发者中心与 Helm 社区达成了一系列技术合作,在开放云原生应用中心提供了国内首个 Helm Hub 北美官方站的同步镜像仓库与 Hub 站点。
 
开放云原生应用中心,是云原生“高速公路”上的托管和分发应用的集散地,同时也是国内开发者使用云原生应用的重要基础仓库。在 Kubernetes 生态中,“应用”是一组 YAML 格式的描述文件,而云原生应用中心,则为搜索、使用和分享这些应用描述文件提供了一个完全开源与开放的交互平台。
 
image.png

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 借力于云原生社区,集成阿里巴巴云原生实践之精华,反哺社区,指引业界云原生化最佳实践,少走弯路。
 
Kruise 核心在于自动化,我们将从不同维度解决 Kubernetes 之上应用的自动化,包括,部署,升级,弹性扩缩容,Qos 调节,健康检查,迁移修复等等。此次 Kruise 开源的内容主要在应用部署,升级方面,即一套增强版 controller 组件用于应用的部署和级和运维。后续,Kruise 会依次开源智能化的弹性扩缩容组件,以及应用 Qos 自调节能力的组件等。
 
以下内容主要介绍 Kruise Controllers - 一套用于 Kubernetes 之上应用自动化部署管理的 controller 组件。
 
众所周知,Kubernetes 项目的核心原理,就是“控制器模式”。

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

亮点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, 致力于实现云-边-端一体化协同,通过非侵入增强方式,完美拓展云原生的边界。

image.png

随着 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《公有云容器服务竞争格局》的企业。

image.png

阿里云致力深耕开源社区,将经验精华提炼并形成开源代码回馈生态。此前,阿里云容器平台团队提供过涵盖Kubernetes、Networking、Logs、应用容器化、Serverless、AI 等多个方向的开源组件 20 余项,如高性能网络插件 Terway、深度学习加速器Arena、共享 GPU 调度 GPU Sharing 等。
 
如今,越来越多的企业都开始向“云原生”演进,阿里云不断打磨、沉淀和升级云原生技术能力,期望通过标准、高效、和易用的方式,助力广大开发者和用户带以实现更大的业务价值。

相关实践学习
通过ACR快速部署网站应用
本次实验任务是在云上基于ECS部署Docker环境,制作网站镜像并上传至ACR镜像仓库,通过容器镜像运行网站应用,网站运行在Docker容器中、网站业务数据存储在Mariadb数据库中、网站文件数据存储在服务器ECS云盘中,通过公网地址进行访问。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
机器学习/深度学习 资源调度 Kubernetes
进击的Kubernetes调度系统(三):支持批任务的Binpack Scheduling
阿里云容器服务团队结合多年Kubernetes产品与客户支持经验,对Kube-scheduler进行了大量优化和扩展,逐步使其在不同场景下依然能稳定、高效地调度各种类型的复杂工作负载。 《进击的Kubernetes调度系统》系列文章将把我们的经验、技术思考和实现细节全面地展现给Kubernetes用户和开发者,期望帮助大家更好地了解Kubernetes调度系统的强大能力和未来发展方向。
4666 102
|
存储 消息中间件 监控
阿里云sls日志服务简介和使用流程
阿里云SLS(Simple Log Service)是一种高度可扩展的、低成本的日志托管服务,它提供了全面的日志采集、存储、分析和呈现功能。阿里云SLS是全球首个在公共云上提供日志服务的企业,它具有高可靠性、高稳定性和高安全性等特点,可满足不同企业的日志需求。
|
存储 固态存储 架构师
【最佳实践】Elasticsearch Snapshot 备份的使用方法
常见的数据库都会提供备份的机制,以解决在数据库无法使用的情况下,可以开启新的实例,然后通过备份来恢复数据减少损失。
6980 0
【最佳实践】Elasticsearch Snapshot 备份的使用方法
|
12月前
|
Prometheus Kubernetes 监控
深入探索Kubernetes中的Pod自动扩展(Horizontal Pod Autoscaler, HPA)
深入探索Kubernetes中的Pod自动扩展(Horizontal Pod Autoscaler, HPA)
|
监控 Serverless 数据库
探索 Serverless 架构:云计算的新浪潮
【10月更文挑战第18天】Serverless架构,即无服务器架构,是一种新兴的云计算模式,让开发者无需管理服务器即可构建和运行应用。本文探讨了其核心概念、优势、挑战及最佳实践,强调了按需付费、自动扩展和开发效率等优点,同时也指出了冷启动、状态管理和调试监控等挑战。
|
10月前
|
Prometheus 监控 Cloud Native
高频面题: 你们线上 QPS 多少?你 怎么知道的?
本文由45岁资深架构师尼恩撰写,针对高级开发和架构师面试中的高频问题提供详细解答。文章涵盖了QPS、TPS、RT等性能指标的定义及计算方法,详解了如何配置Prometheus与Grafana监控系统QPS,并提供了应对高并发场景(如双十一抢购)的系统部署策略。此外,还分享了多个大厂面试真题及解决方案,帮助读者在面试中充分展示技术实力,提升求职竞争力。建议收藏并深入学习,为面试做好充分准备。更多内容可参考《尼恩Java面试宝典》及相关技术圣经系列PDF。
|
Kubernetes 负载均衡 API
在K8S中,kube-proxy ipvs 原理是什么?
在K8S中,kube-proxy ipvs 原理是什么?
|
存储 Kubernetes 应用服务中间件
Ingress-Nginx使用指南上篇
关于Ingress-Nginx在Kubernetes中的使用指南,涵盖了从基础安装到高级特性配置的详细步骤和实战案例。
4821 3
Ingress-Nginx使用指南上篇