生成式AI领域的最新成果都在这里!抢 QCon 展区门票 了解详情
写点什么

Kubernetes 距管理 1000 个节点还有多远?

  • 2015-09-23
  • 本文字数:1575 字

    阅读完需:约 5 分钟

为了尽快解决复杂问题,企业一般选择增加服务器节点作为解决方案。在很多情况下,资源的额外增加总是能换来时间上的回报。然而,增加节点个数来减少计算时间就像增加火箭级数来提高速度( tyranny of the rocket equation )一样——这类问题都是存在瓶颈的。一旦超过一定的规模,再增加节点不仅不会加快计算速度,反而会拖慢计算的进度。为此,谷歌公司专门推出了开源容器集群管理系统—— Kubernetes ,以实现资源的合理、高效的使用。在 1.0 版本阶段,Kubernetes 已经能够管理最多 100 个节点。但是,谷歌公司一直希望在 2015 年底实现 Kubernetes 支持节点数量的 10 倍增长。那么,该项目现在究竟进展如何,未来又会沿着怎样的路线进行下去呢?近日,Kubernetes 项目的官方博客就该问题进行了说明。

根据之间上亿次实验,谷歌公司提出了两个性能度量指标——API 响应灵敏度(API-responsiveness)和Pod 启动时间。其中,API 响应灵敏度指的是X% 以上的API 能够在Y 秒内返回结果,而Pod 启动时间要求Z% 以上的pod 能够在T 秒内启动完毕。需要注意的是,pod 启动时间中的镜像文件需要提前下载到本地机器,以去除网络带宽对性能的影响。

为了测量性能,谷歌公司还专门搭建了一套连续测试的框架。每隔2-3 个小时,系统就从 HEAD 创建一个包含 100 个节点的全尺寸集群(每个节点运行 30 个 pod),然后在其上运行大规模测试。其中,master 采用 GCE n1-standard-4 的机器(4 核、15GB 内存),节点采用 GCE n1-standard-1 的机器(1 核、3.75GB 内存)。测试步骤如下:

  1. 创建 pod 和 replication controller 来填充集群;
  2. 通过添加 / 删除 pod 或 replication controller 等操作产生负载,然后记录相关性能参数;
  3. 停止所有的 pod 和 replication controller;
  4. 整理性能参数,确定是否满足预期。

此外,为了测量 pod 启动延迟,每个 pod 只包含一个运行“gcr.io/google_containers/pause:go”镜像的容器。而且容器启动后,就开始一直睡眠。

性能测试结果分为两个部分——Pod 启动时间和 API 响应灵敏度。对于包含 10%、20%、50% 和 100% 节点数集群系统,其 pod 启动时间 T 分别如下:

10%-full 25%-full 50%-full 100%-full Z=50 0.90s 1.08s 1.33s 1.94s Z=90 1.29s 1.49s 1.72s 2.50s Z=99 1.59s 1.86s 2.56s 4.32s 从上表可以看出,即使是在包含 100 个节点的全尺寸集群中,Pod 启动时间也可以满足 99% 以上的 pod 在 5 秒内启动完毕。而对于大部分情况,pod 启动只需要 1-2 秒的时间。

在 API 响应灵敏度方面,集群系统对于不同操作的响应延迟如下图所示。

可以看出,所有操作的响应延迟均在 1 秒以内。而且,对于大部分情况,响应延迟只需要 0.1-0.3 秒,远远领先于 1 秒的目标。因此,Kubernetes 的性能已经完全能够保证包含 100 个节点的集群系统中 99% 以上的 API 在 1 秒内返回结果,同时 99% 以上的 pod 能够在 5 秒内启动完毕。

虽然这些测试结果仍然是在 100 个节点的情况下进行,这一结果却表明了 Kubernetes 的稳定性。作为走向 1000 个节点的第一步,Kubernetes 团队在这一阶段进行了大量努力——重新编写了基于观察的控制器、利用代码生成器来生成转换和深度拷贝函数、向 API 服务器添加了缓冲来避免多个 etcd 读取相同数据时的反串行化、减少了状态更新的频率以及在 API 服务器是实现了观察窗口等。这些努力为未来打下了很好的基础。据透露,Kubernetes 如果要支持 1000 个节点,仍然需要在以下方面进行改进:

  • 把事件从 etcd 中挪出
  • 使用更好的 json 解释器
  • 重写调度器来提高效率和并行度
  • 改善 API 服务器和 Kubelet 时间的通信效率

感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-09-23 19:003041
用户头像

发布了 268 篇内容, 共 118.0 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

一文详解 Berachain 测试网:全面介绍与教程,bitget wallet教程

股市老人

通过 DBeaver 连接 CnosDB

CnosDB

开源 时序数据库 tsdb CnosDB

WorkPlus打造高效沟通的局域网聊天工具,助力企业内部协作

WorkPlus

MG运动图形动画脚本Motion中文汉化版 AE插件资源

Rose

AE插件 Motion 3下载 Motion中文版

App Cleaner & Uninstaller for mac v8.2.6中文激活版下载

影影绰绰一往直前

Desktop Aquarium Wallpaper‪s for mac(高清水族馆屏保)v2.2.0激活版

影影绰绰一往直前

【深入浅出JVM原理及调优】「搭建理论知识框架」全方位带你深度剖析Java线程转储分析的开发指南

洛神灬殇

Java JVM 虚拟机 jni 2024年第十七篇文章

苹果电脑WiFi信号质量检测工具:WiFi Signal Strength Explorer for Mac

Rose

无线网络 Mac软件 苹果电脑 WiFi Signal Strength WiFi信号强度

《图解设计模式》PDF

程序员李木子

ACDSee Photo Studio 10 for Mac v10.0.3中文激活版下载

影影绰绰一往直前

C# 布尔值和条件语句:入门指南和实用示例

小万哥

C# 程序人生 编程语言 软件工程 后端开发

《Java核心技术·卷 II(原书第11版):高级特性》PDF

程序员李木子

WorkPlus即时通信IM工具,助力企业高效沟通与协作

WorkPlus

WorkPlus Meet私有化视频会议软件-构建安全高效的内网会议体验

WorkPlus

WorkPlus:构建高效协作的企业即时通讯解决方案

WorkPlus

超好用的终端SSH连接工具Termius mac破解版(含Termius使用教程)

Rose

SSH Mac软件 Termius Termius for Mac破解 SFTP客户端

PhotosRevive for Mac(老旧照片着色工具)v2.1.3中文激活版

影影绰绰一往直前

Weather Dock for Mac(天气预报)v5.5.1中文激活版

影影绰绰一往直前

n-Track Studio Suite for Mac(多轨音乐制作软件)10.0.0.8379 激活版

影影绰绰一往直前

Topaz Photo AI for Mac(人工智能降噪软件)v2.3.0激活版

影影绰绰一往直前

一文详解 Berachain 测试网:全面介绍与教程,bitget wallet教程

EOSdreamer111

WorkPlus内网通信软件的首选,助力企业实现高效内部沟通与协同

WorkPlus

Btc钱包大比拼:Ledger,Trezor,Bitget等,谁值得信赖?

BlockChain先知

2024年数字安全呈现九大趋势,AI大模型正在重构安全

Geek_2d6073

在本机累积指标的思路

WorkPlus AI助理私有化部署,助力企业降本增效

WorkPlus

PDF阅读转换工具PDF Expert for Mac v3.8.3中文激活版下载

影影绰绰一往直前

多媒体现场制作工具:QLab mac最新版下载

影影绰绰一往直前

Scrutiny for Mac(网站分析检测工具)v12.8.5激活版

影影绰绰一往直前

【线上问题】CompletableFuture与线程池使用不当导致服务整个挂掉

Disaster

Integrity plus for mac(网站链接检查工具)v12.8.5激活版

影影绰绰一往直前

Kubernetes距管理1000个节点还有多远?_语言 & 开发_张天雷_InfoQ精选文章