云原生应用万节点分钟级分发协同实践

导读:2019 年天猫 双11,阿里巴巴核心系统首次实现 100% 上云。面对全球最大的交易洪峰,阿里云扛住了每秒 54.4 万笔的交易峰值,这是“云原生”与“天猫全球狂欢节”的一次完美联名。

(图为 2019 年天猫 双11 成交额)

容器镜像服务作为阿里巴巴经济体云原生领域的重要基础设施之一,早在 双11 备战期间就已面临大规模分发需求。为了更好地支持这一需求,产品提前进行规划及迭代更新,全面提升了大规模分发场景下的性能、可观测性和稳定性。在新的 双11 来临前,容器镜像服务新增了数 PB 的镜像数据,月均镜像拉取达数亿次。同时产品提供了云原生应用交付链等功能,全面覆盖阿里巴巴经济体及云上用户在云原生时代的使用需求。

本文将介绍容器镜像服务如何通过提升产品能力来应对云原生应用万节点分发场景下的新发展和新挑战。

新发展和新挑战

随着云原生技术的迅速普及,Kubernetes 已经成为事实上应用容器化平台的标准,成为了云原生领域的“一等公民”。

Kubernetes 以一种声明式的容器编排与管理体系,让软件交付变得越来越标准化。Kubernetes 提供了统一模式的 API,能以 YAML 格式的文件定义 Kubernetes 集群内的资源。这一些 YAML 格式的资源定义使得 Kubernetes 能轻松被上下游系统所集成,完成一系列原本需要用非标准化脚本、人工来完成的操作。同时社区根据应用交付场景及需求,在原生 YAML 格式的资源定义文件之外衍生出了更多系列的云原生应用交付标准,例如 Helm Chart、Opeartor、Open Application Model 等。

(图为云原生应用交付标准演进)
除了云原生应用交付标准推陈出新,用户对交付方式也提出了更高的要求。越来越多的用户期望能以流程化、自动化、更安全的方式交付云原生应用,因此单纯的万节点分发场景已经演化成万节点分钟级多环节协同分发。再加上全球化业务发展,这意味着在分钟级时间内完成各个环节之后,还需再完成全球化分发,这对支撑云生应用分发的平台提出了更高的要求。

新实践

通过控制容器镜像大小、采用 P2P 分发镜像层、优化 Registry 服务端等方式,我们极大优化了大规模分发的性能,最终达成了万节点分钟级分发的目标:

  • 优化容器镜像大小,降低镜像传输成本

    • 制作基础镜像,将使用频繁的应用或环境制作成基础镜像复用,尽可能减少镜像的层数,控制每次变更层数
    • 采用多阶段镜像构建,将镜像制作过程中的中间产物与最终产物分离,形成最精简的应用镜像
  • 优化服务端处理性能,提高请求响应速率

    • 服务端通过识别热点镜像,采用热点数据缓存等多种方式应对大规模镜像 Manifest 并发拉取
  • 优化客户端容器镜像层下载方式,减少镜像传输时间

    • 客户端使用蜻蜓下载容器镜像, 基于 P2P 方式大幅减少镜像 Layer 下载时间

(图为镜像大规模分发的优化策略)
为了让拥有同样需求的企业客户能够享受到如上一致的分发能力和体验,容器镜像服务产品在 2019 年 3 月正式推出了容器镜像服务企业版(ACR Enterprise Edition)。容器镜像服务企业版提供了企业级云原生资产托管能力以及云原生应用全球化同步、大规模分发能力,适合有着高安全需求、多地域业务部署、拥有大规模集群节点的企业级容器客户。除此之外,容器镜像服务企业版还在云原生资产托管交付分发等几个方面进一步提升云原生应用万节点分钟级分发协同体验。

云原生应用托管

  • 在应用交付物层面,容器镜像服务企业版目前支持容器镜像Helm Chart 两类云原生应用资产的全生命周期管理;
  • 在访问安全层面,产品提供了独立网络访问控制功能,可以细粒度控制公网及 VPC 网络的访问策略,仅允许符合策略的来源方访问资产,进一步保障云原生资产的访问安全;
  • 在访问体验层面,产品提供容器集群透明拉取插件,支持容器镜像透明拉取,保障业务在弹性场景极速拉取镜像,不因凭证配置有误导致业务更新或扩容异常。

(图为容器镜像服务企业版支持云原生应用交付)

云原生应用交付

云原生应用生产环节,用户可以直接上传托管容器镜像、Helm Chart 等云原生资产;也可以通过构建功能自动从源代码(Github、阿里云 Code、GitLab 等来源)智能构建成容器镜像。同时为了解决流程化、自动化、更安全的方式交付云原生应用这一需求,容器镜像服务企业版引入了云原生应用交付链功能。云原生应用交付链以云原生应用托管为始,以云原生应用分发为终,全链路可观测、可追踪、可自主设置。可以实现一次应用变更,全球化多场景自动交付,从流程层面极大地提升了云原生应用万节点分发的效率及安全性。

(图为控制台创建云原生应用交付链)
云原生应用交付环节,支持自动发起静态安全扫描并自定义配置安全阻断策略。一旦识别到静态应用中存在高危漏洞后,可自动阻断后续部署链路。用户可基于漏洞报告中的修复建议,更新优化构建成新的镜像版本,再次发起交付。

云原生应用分发

云原生应用分发环节,当前置环节完成无阻断后,云原生应用正式进入全球化分发及大规模分发环节。为了保障万节点分钟级分发协同完成,容器镜像服务联合容器服务、弹性容器实例等云产品提供了端到端的极致分发体验。针对全球化分发,由于基于细粒度同步策略调度、同步链路优化等优化手段,云原生应用的全球同步效率相比手动同步提升了 7 倍

(图为云原生应用的全球化分发)

在 P2P 大规模分发方面,产品针对云环境多次优化基于 Dragonfly 的分发方案,最终通过多个创新技术解决了大规模文件下载以及跨网络隔离等场景下各种文件分发难题,大幅提高大规模容器镜像分发能力。平均镜像大规模分发效率比普通方式提高数倍,适用于容器集群单集群节点数达 100 及以上的场景。

(图为基于 P2P 的分发流程示意)
除了 P2P 大规模分发手段外,为了更好地满足特定场景下的大规模分发需求,产品还支持基于镜像快照的大规模分发方式。基于镜像快照的分发方式,可避免或减少镜像层的下载,极大提高弹性容器实例创建速度。在容器集群(ASK)及弹性容器实例(ECI)的联合使用场景下,产品可以支持 500 节点秒级镜像拉取,实现业务突发场景下极速扩容。

新平台

在功能及性能指标满足云原生应用万节点分钟级分发协同需求外,容器镜像服务还对平台能力进行了提升和优化,保障了分发过程的可观测性及稳定性。同时平台提供了集成能力,进一步延展云原生应用分发的使用场景和价值。

稳定性

稳定性层面的具体提升及优化工作从监控报警、容错容灾、依赖治理、限流降级、容量规划等几个方面展开。

  • 在依赖治理方面,平台对云原生应用交付链中的相关重点环节及外部依赖进行统一管理,提升交付链整体交付能力,帮助用户识别热点仓库及追踪交付链执行结果;
  • 在限流降级方面,平台分析识别云原生应用分发核心环节的主次业务功能,优先保障主要业务逻辑完成,次要业务逻辑可降级延后处理;
  • 在容量规划方面,平台根据上下游业务变化情况,对资源进行按需扩容,确保云原生应用正常交付完成。

(图为平台的稳定性保障策略)

生态集成

基于平台提供的丰富的集成能力,用户还可以将容器镜像服务企业版作为云原生资产托管及分发的基础设施,为他们的用户提供云原生应用分发能力。

其中,容器镜像服务企业版支撑阿里云云市场构建容器应用市场,支撑容器应用市场的容器商品托管及商业化分发,构建云上云原生生态闭环。ISV 服务商,例如 Intel、Fortinet、奥哲,将容器化商品以容器镜像或者 Helm Chart 的形式在云市场快速上架,实现标准化交付、商业化变现。市场客户也可以从容器应用市场获取到优质的阿里云官方及 ISV 容器镜像,快速部署至容器服务容器集群,享受到阿里云丰富的云原生生态。

(图为容器应用市场流程示意)

写在最后

从支持阿里巴巴 双11 大规模分发需求,到全面覆盖阿里巴巴经济体及云用户的云原生资产托管及分发需求,再到支撑构建云上容器生态闭环,阿里云容器镜像服务已成为了云原生时代的核心基础设施之一,释放云原生价值的重要加速器。容器镜像服务也将持续为用户带来更加优异的云原生应用分发功能、性能及体验。

本书亮点

  • 双11 超大规模 K8s 集群实践中,遇到的问题及解决方法详述
  • 云原生化最佳组合:Kubernetes+容器+神龙,实现核心系统 100% 上云的技术细节
  • 双 11 Service Mesh 超大规模落地解决方案


原文链接
本文为阿里云原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517097.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为啥Underlay才是容器网络的最佳落地选择

导语: 几年前,当博云启动自研容器网络研发的时候,除了技术选型的考虑,我们对于先做 Underlay 还是 Overlay 网络也有过深度的讨论。当时的开源社区以及主流容器厂商,多数还是以 Overlay 网络方案为主,但在我…

oracle用户编辑文件中文乱码

文章目录一、分析定位1. 现象2. 查看当前编码3. 配置文件现状二、解决方案2.1. 编辑配置文件2.2. 调整2.3. 刷新环境变量2.4. 效果图2.5. 配置文件源码一、分析定位 1. 现象 2. 查看当前编码 登录oracle用户,查看当前oracle用户下的编码 [oraclelocalhost ~]$ ec…

今年圣诞,麋鹿第一次请假

年末的圣诞节来啦~~! 但我们的圣诞老人为什么有点低落?? 是在愁信太多?没地儿放? 不会是看不懂我信上的“鬼画符”吧.. 难道是在忌惮空中的雾霾?哈哈~ 圣诞老人:o(╥﹏╥)o 不不不&#xf…

高德网络定位算法的演进

1.导读 GPS定位精度高,且早已成为移动设备标配,但GPS也具有一些难以克服的缺陷,包括: 冷启动时间长。GPS启动时,需要进行搜星,锁定卫星信号,然后再进行位置技术,这个过程可能会达到…

疫情之下网络安全如何保障?Akamai防护方案前来“保驾护航”

2020年春天,以5G、人工智能、云计算为代表的“新基建”蔚然成风,着眼国家数字经济体系建设,打造数字经济体系底座的“新基建”,无疑成为中国经济整体应对未来发展的核心方案。然而,面临“新基建”与企业数字化进程的突…

2020将至,谈谈中小企业创业的那些事儿

2019正迎来尾声,在创业这场轰轰烈烈的旅途中,有的人名利双收,有的人饱受非议。一入创业深似海,在创业赛道上,很多公司完成了从0到1,却死在从1到100的路上。而小程序的出现,让移动互联网创业走向…

axios从安装到使用的教程

安装axios: npm install --save axios 目录结构: 红框部分是接口文件: appApi.js是存放接口的文件 import Vue from vue import axios from axiosexport default {// 获取分类show_category: function () {return axios.post(/point-api-show_category);},// 获…

嘘,这是手淘双11 GMV 暴涨的秘密

阿里妹导读:信息流作为手淘的一大流量入口,对手淘的浏览效率转化和流量分发起到至关重要的作用。在探索如何给用户推荐其喜欢的商品这条路上,我们首次将端计算大规模应用在手淘客户端,通过端侧丰富的用户特征数据和触发点&#xf…

vuex从安装到使用的教程

vuex的安装 npm install vuex --save或cnpm install vuex --save main.js引入vuex import Vue from vue import Vuex from vuex import store from ./vuex/storeVue.use(Vuex) vuex的目录结构和store.js的代码 store.js的代码(异步和同步的代码均留下两个方法&am…

未来,仅凭几个前端工程师,就能 hold 住一家企业吗?

阿里妹导读:微前端架构旨在解决单体应用在一个相对长的时间跨度下,由于参与的人员、团队的增加,从一个普通应用演变成一个巨石应用(Frontend Monolith),随之而来的应用不可维护问题。这类问题在企业级 Web 应用中尤为常见。今天&a…

yarn : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\yarn.ps1,因为在此系统上禁止运行脚本

文章目录1. 现象2. 授权安全策略3. 重新执行命令1. 现象 2. 授权安全策略 若要在本地计算机上运行您编写的未签名脚本和来自其他用户的签名脚本,请使用以下命令将计算机上的 执行策略更改为 RemoteSigned 执行: set-ExecutionPolicy RemoteSigned查看执…

央视315曝光SDK事件,应用开发者如何避坑?

7月16日晚,央视315晚会拉开大幕,再次敲响了消费领域的警钟。据央视报道,上海市消费者权益保护委员会委托第三方对市场上的App进行检测,发现某些第三方开发的SDK包存在违规收集用户个人信息的情况。日前,工信部已要求严…

VS Code 切换大小写

默认是空的,我设置的快捷键是 shift altd 转换为大写 shift altx 转换为小写

携程实时智能检测平台建设实践

本次演讲将为大家介绍携程实时智能异常检测平台——Prophet。到目前为止,Prophet基本覆盖了携程所有业务线,监控指标的数量达到10K,覆盖了携程所有订单、支付等重要的业务指标。Prophet将时间序列的数据作为数据输入,以监控平台作…

VS Code 设置好看的字体:Operator Mono

文章目录一、字体资源地址1. 链接2. 资源下载二、效果图2.1. JS 代码效果2.2. CSS 文件效果2.3. HTML 文件效果三、安装字体3.1. 字体列表3.3. 安装方式3.3. VSCode 配置一、字体资源地址 1. 链接 FiraCode 和 Operator Mono 字体下载地址 2. 资源下载 Git下载 git clone …

钟南山团队携手腾讯研发新冠重症AI预测 成果登上Nature子刊

钟南山院士团队与腾讯AI Lab日前披露了利用AI预测COVID-19患者病情发展至危重概率的研究成果,可分别预测5天、10天和30天内病情危重的概率,有助合理地为病人进行早期分诊。这项研究已在2020年7月15日发布于国际顶级期刊《Nature》子刊《Nature Communica…

CentOs搭建svn

安装SVN yum install -y subversion检查是否安装成功 svnserve --version创建版本库 我们先创建/var/svn这么目录 mkdir /var/svn cd /var/svn创建版本库 svnadmin create /var/svn/project后边的project就是我们项目的版本库 cd project ls 会看到自动生成的版本库文件…

互联网全域降维攻击战略概述

前言: 在互联网维度体系概念被提出之后,社会上对于降维的理解向不同的方向发展,如很多人认为降维呈现的是有高难度业务实施能力的企业向低难度领域业务进行渗透和发展的方式,还有的认为降维就是互联网行业对于传统行业的业务冲击…

当达摩院大牛学会抠图,这一切都不受控制了……

在外界人眼中,达摩院人才济济,大多是奇人异士,做着神秘且高端的研究,有如扫地僧一般的存在,但是如果有一天,当神秘专家不再神秘,你发现他们也开始玩抠图,且这一切都朝着不受控制的方…

腾讯安全携手华夏银行“论道”金融风控,传递在线反欺诈干货建议

前不久,Gartner发布了《在线反欺诈市场指南》,对全球聚焦在线反欺诈全链路监测与防护的厂商进行评估,给遭遇欺诈的企业提供了应对指南和选择建议。其中腾讯云成为中国唯一入选服务商,得到了Gartner官方的推荐。在报告中&#xff0…