写点什么

大规模集群中 Docker 镜像如何分发管理?试试 Uber 刚开源的 Kraken

  • 2019-03-06
  • 本文字数:937 字

    阅读完需:约 3 分钟

大规模集群中Docker镜像如何分发管理?试试Uber刚开源的Kraken

Docker 注册表的主要目的是存储和分发 Docker 镜像,看似是一个相对简单的任务,但是如果遇到了像 Uber 这样的大规模计算集群,就很容易成为可伸缩性的瓶颈。在多区域和混合云系统的计算环境中,镜像分发会变得更具挑战性。


为了解决遗留 Docker 注册表堆栈的性能问题,Uber 的集群管理团队开发了一个开源对等(P2P)Docker 注册表 kraken。


Docker 容器是 Uber 基础设施的基础构建块,但是随着计算集群数量和大小的增加,一个简单的带有 sharding 和缓存的 Docker 注册表设置无法跟上高效分发 Docker 映像所需的吞吐量。


Kraken 重点关注在可扩展性和可用性方面,用于混合云环境中的 Docker 镜像管理、复制和分发。支持可插拔的后端,Kraken 可以作为分发层插入到现有的 Docker 注册表设置中。



图 1 Docker 图像层分布在 Kraken 集群中的可视化

架构

在 Kraken 研发时,Uber 探索了多种设计,最终选择了 p2p 架构。Kraken 使用针对数据中心网络环境定制的 P2P 协议,并在企业级改进了微服务生命周期管理。



代替管理数据块,Kraken 支持可插入存储选项,可以插入可靠的 blob 存储选项,如 S3、HDFS 或其他注册表,且存储接口简单,易于添加新选项。


另外,Kraken 在现有的成熟技术上建立了独特的数据分发解决方案,支持自我修复,易于维护,支持集群之间的无损和基于规则的异步复制。

大规模的性能改进

2018 年年初,Kraken 首次部署在了 Uber 中,其在遗留 Docker 注册表堆栈中遇到的性能问题迎刃而解。


据悉,在 Uber 最繁忙的时候,Kraken 集群每天分发超过 100 万个 blob,其中有 10 万个分发的 blob 大小超过 1GB 或更多。在生产高峰期,Kraken 可以在 30 秒内分发 20000 个 100MB 到 1GB 的 blob。


Kraken 的高可扩展性使其能够支持至少 8000 台主机的集群,并以超过集群中主机最大下载速度限制 50%的速度分发 Docker 镜像。另外,对 Kraken 来说,集群和镜像大小对下载速度没有显著影响。


自内部发布以来,Kraken 一直被用于管理和分发 Uber 的所有 Docker 镜像。这次将该工具开源出来,Uber 表示希望能够激发有关工程和设计最佳实践的讨论,以便与 Docker 一起构建一个适应性强且可靠的基础设施。


Kraken 的 GitHub 地址:https://github.com/uber/kraken


Uber 博客的原文链接:https://eng.uber.com/introducing-kraken/


2019-03-06 15:017332
用户头像

发布了 34 篇内容, 共 28.9 次阅读, 收获喜欢 58 次。

关注

评论 2 条评论

发布
用户头像
Docker 注册表,我去年还买了个表……麻烦译者专业点……
2019-03-12 22:07
回复
用户头像
Docker 注册表,我去年还买了个表……
2019-03-12 22:06
回复
没有更多了
发现更多内容

软件测试学习笔记丨Vue常用指令-输入绑定(v-model)

测试人

软件测试

化学ppt课件怎么做?这个在线ppt工具不容错过!

职场工具箱

效率工具 职场 PPT AIGC AI生成PPT

活动回顾|体验技术大会暨OpenTiny技术交流茶话会圆满结束~

OpenTiny社区

web开发 OpenTiny TinyVue TinyEngine 前端开源

Midjourney-未来机甲

AIGC.TWang

未来世界 AI绘画 MidJourney

这AI队友哪智障了?这AI队友可太棒了!| 《易点新的》专访

网易伏羲

游戏AI

如何选择合适的TikTok网络节点

Ogcloud

代理IP tiktok运营 TikTok养号 tiktok节点 tiktok网络

使用海外原生IP有什么好处

Ogcloud

静态IP 海外原生IP 原生IP

一文彻底弄懂Spring IOC 依赖注入

不在线第一只蜗牛

spring

英伟达力推生命科学,背后分子动力学价值远被低估

新消费日报

软件测试学习笔记丨Vue学习笔记-基本介绍

测试人

软件测试

什么是数字化战略?数字化转型战略指南

积木链小链

数字化转型 数字化

淘宝详情API接口全解析:如何获取与应用

代码忍者

API 接口 pinduoduo API

1400+自定义ps形状集合

Rose

中文汉化 AE/PR去朦胧除雾霾调色插件 ClearPlus

Rose

Plugin Alliance Brainworx bx_limiter True Peak(峰值限制器)

Rose

直接导入编辑MKV/MOV/FLV格式素材视频解码器AE/PR插件Influx

Rose

手把手教你编写自定义Categraf插件

天翼云开发者社区

Categraf

容器、容器云和容器化PaaS平台之间到底是什么关系?

天翼云开发者社区

云计算 容器服务

软件测试学习笔记丨Vue常用指令-条件渲染(v-if)

测试人

软件测试

e3d插件下载 - Video Copilot Element 3D for mac-AE三维模型插件

Rose

FilmUnlimited PowerGrades(柯达胶片模拟电影预设)

Rose

【认证有奖】邀友“亿”起体验流量之旅

荣耀开发者服务平台

开发者激励 AIGC 奖励分红 开发者活动 应用市场

Web安全知识记录

天翼云开发者社区

网络安全 Web

覆盖80%业务场景,原生鸿蒙出行、教育行业样板间专区上线

最新动态

大规模集群中Docker镜像如何分发管理?试试Uber刚开源的Kraken_开源_Uber_InfoQ精选文章