写点什么

Kubernetes Autoscaler Karpenter 达到 1.0 里程碑

作者:Matt Saunders

  • 2024-10-21
    北京
  • 本文字数:1456 字

    阅读完需:约 5 分钟

Kubernetes Autoscaler Karpenter 达到 1.0 里程碑

Amazon Web Services(AWS) 发布开源 Kubernetes 集群自动扩展工具 Karpenter 的 1.0 版本。这标志着 Karpenter 已经完成 Beta 测试。该版本带来了稳定的 API 和多项新特性。


Karpenter 最初于 2021 年 11 月推出,现已经发展成为一个全面的 Kubernetes-native 节点生命周期管理器。正如我们今年早些时候报道的那样,这个项目在 Slack 等行业领导者中越来越受欢迎,并已成为 GitHub 上十大最受欢迎的 AWS 开源项目之一。


在 Infracloud 的一篇文章中,Himanshu Verma 解释了 Karpenter 如何消除了预配置节点组和调整资源大小的需求,并直接使用 Launch Templates 来管理实例。Karpenter 根据需要自动提供新节点,实时响应 Unschedulable pod。它可以动态调整集群计算容量,优化性能和成本效益。



1.0 版本修复了许多 Bug,并带来了多项新特性。Karpenter 1.0 的主要特性包括:


  • 增强中断控制: 用户现在可以按原因设置中断预算,以便对节点中断进行细粒度控制,以应对利用率不足、空闲或漂移等情况。

  • 重命名合并策略: 为清楚起见,“WhenUnderutilized”策略已被重命名为“WhenEmptyOrUnderutilized”。

  • 新增合并控制: 在添加或删除 pod 时,“consolidateAfter”参数允许用户指定 Karpenter 在合并节点之前等待多长时间。

  • 终止宽限期: 新增的“terminationGracePeriod”设置使集群管理员对节点生存期和优雅终止有了更多控制。

  • 漂移特性升级: 漂移特性,即替换偏离期望状态的节点,现在默认启用。

  • AMI 选择更改:“amiSelectorTerms”字段现在是必需的,并且新增的“alias”术语使用户可以选择 Amazon EKS-optimized AMI 的特定版本。

  • 实例元数据服务(IMDS)访问限制: 为了提高安全性,默认禁止 pod 对 IMDS 的访问。

  • Kubelet 配置位置更改:Kubelet 设置改到了 EC2NodeClass API 中。

  • NodeClaims 不可变:NodeClaims 在创建后不能再修改,从而保证与预期的行为一致。

  • NodePool nodeClassRef 更改: 所有的 nodeClassRef 字段现在都是必需的,“apiVersion”字段被重命名为“group”。

  • 指标更改: 修改了几个 Prometheus 指标,这可能需要用户更新他们的仪表板。


该版本还包括一些计划中的弃用,包括删除某些注解和基于 ConfigMap 的配置。


对于希望从 Beta 版升级的用户,AWS 提供了一个使用 Kubernetes webhook 转换的迁移路径,前提是用户已经使用了包含最新 API 的版本。该过程可以就地升级 API 而不需要替换节点。但是,建议用户在进行升级之前查看完整的迁移文档,并在非生产环境中测试升级过程。


在 X(以前的 Twitter)上的一段演练视频中,Olalekan Taofeek 详细解释了他是如何将 Karpenter 从 0.37 升级到 1.0 的——这个版本差异比迁移路径提供的版本差异更大。他强调,有几个破坏性的变化需要特别注意:


  • 用户数据不再用于 Kubernetes 配置。

  • 节点池 / 组配置更改——API 版本和字段名称发生了变化,用户需要更新配置。

  • 新增一个“启动时间”字段,需要用户在自己的工作负载中加以考虑。

  • 将一些字段从节点池移到了节点类配置中。


Karpenter 1.0 发布的消息大受欢迎,例如 Vatsal Bajpai 在 X(以前的 Twitter)上写道:


“在云上,Karpenter 已经成为 k8s 的必需品,真让人高兴!”


在 Reddit 上的一个帖子中,用户普遍对这个版本赞赏有加。有人指出,Azure 上已经有可用的移植版本,但令人遗憾的是,GCP 上没有。其他人则在考虑,Karpenter 的功能是否可以完全集成到 EKS 的控制平面中。


用户可以通过 Kubernetes Slack #karpenter 频道或 GitHub 了解更多信息或提供反馈。


查看原文链接:

https://www.infoq.com/news/2024/09/karpenter-10/


2024-10-21 08:009026

评论

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

不保护数据的代价!

鉴释

数据 数据安全

真的强!来自扫地僧总结的39W字上千道Java一线大厂面试题手册,成功助我拿下蚂蚁金服offer!

钟奕礼

Java 编程 程序员 架构 面试

IDC报告深度解析:谁将领跑中国RPA市场?

ToB行业头条

RPA IDC

阿里秋招面试必问的几个知识点:Spring+Redis+MySQL+HashMap+多线程,不看我真的怕你后悔

Java 程序员 架构 面试 计算机

真香!180页100+题15W+字解析的《Java高级面试指南》,果断收下

Java 编程 程序员 架构师

如何利用FL Studio中文版做出失真效果

懒得勤快

新时代程序员都用什么写代码?

程序员鱼皮

Java Python 大前端 Web 开发工具

从零开始学习3D可视化之数据对接(2)

ThingJS数字孪生引擎

大前端 数据 可视化 数字孪生

彩印图文版《Elasticsearch实战》文档,阿里内部共享,堪称精品

白亦杨

Java 编程 程序员 架构师 计算机

把凭据嵌入源代码,来看看你的代码里有这样的操作吗?

鉴释

代码安全

MES、ERP和低代码下的智慧工厂

优秀

低代码 ERP mes

漏洞非小事,金融服务机构如何对抗代码缺陷?

鉴释

金融科技 代码安全检测

iOS面试·一个iOS程序员的BAT面试全记录(内含百度+网易+阿里面试真题)

iOSer

ios 面试 iOS 知识体系

耗时半年,堪称奇迹!阿里架构师整合出258W字Java全栈面试题

钟奕礼

Java 程序员 架构 面试 计算机

鉴释获得 A+ 轮融资,将加强对新技术的投资并扩展中国团队规模

鉴释

企业融资 创业公司

阿里内部最新出炉“SpringCloudAlibaba笔记”号称微服务界的里程碑!

Java 编程 架构 微服务 计算机

“Talk is cheap, show me the code”你一行代码有多少漏洞?

鉴释

代码质量 静态代码分析

C/C++Linux服务器开发高级架构师/Linux后台开发架构师丨高级进阶

Linux服务器开发

架构师 Linux服务器开发 Linux后台开发 后台开发架构师 服务器开发架构师

赖建新:关于静态代码分析的问与答

鉴释

静态代码分析

因聚而生 | 图扑受邀参加“生态融合,智创未来”大会

一只数据鲸鱼

数据可视化 数字孪生 智慧工业 智能制造

抓住“开源盛世“,这个工具你必须了解一下

鉴释

开源 代码安全

Kubernetes实战:高可用集群的搭建和部署

华为云开发者联盟

Kubernetes 高可用 集群 高可用集群 apiserver

Linkflow签约未卡VETRESKA,精细化运营赋能品牌成功破圈,开启种草新模式

Linkflow

即时通信 IM 产品怎么选? 本文超详细解说,马住!

腾讯云音视频

阿里集团业务驱动的升级 —— 聊一聊Dubbo 3.0 的演进思路

阿里巴巴中间件

云计算 阿里云 云原生 dubbo 中间件

5000页?一份字节跳动Java面试全解手册发布!瞬间登顶各大搜索栏

钟奕礼

Java 编程 程序员 架构 面试

为什么“内存管理”漏洞值得你的绝对关注!

鉴释

代码审查 内存 代码

ES本地debug详解

泽睿

ES 搜索引擎;

字节大牛的1850页Leetcode刷题笔记外泄!用实力折服众人

进击的王小二

Java 面试 算法 LeetCode

给需要关心安全的技术人员的一些建议

鉴释

网络安全 安全

提升源代码安全管控,从源头保护敏感数据

鉴释

数据安全

Kubernetes Autoscaler Karpenter 达到 1.0 里程碑_编程语言_InfoQ精选文章