首页
/ Gardener项目v1.114.0版本深度解析:云原生集群管理的重要升级

Gardener项目v1.114.0版本深度解析:云原生集群管理的重要升级

2025-06-16 00:32:02作者:钟日瑜

项目概述

Gardener是一个开源的Kubernetes集群管理系统,由SAP公司主导开发。它采用Kubernetes原生方式管理Kubernetes集群,能够大规模部署和管理Kubernetes集群的生命周期。Gardener的核心思想是将Kubernetes集群本身作为Kubernetes中的资源来管理,通过扩展API和控制循环来实现集群的自动化管理。

重大变更与兼容性调整

本次v1.114.0版本包含了几个重要的变更点,需要管理员特别注意:

  1. 扩展部署配置变更:在种子集群中运行的扩展部署将不再自动注入花园集群的kubeconfig。如果您的扩展依赖此功能,必须显式地在ControllerDeployment资源中设置.injectGardenKubeconfig=true字段。

  2. Kubernetes版本支持调整:Gardener停止了对Kubernetes 1.26及以下版本的支持。这意味着所有花园集群、种子集群和Shoot集群必须升级到1.27或更高版本才能继续获得支持。

  3. API字段废弃通知

    • .spec.kubernetes.enableStaticTokenKubeconfig字段已被标记为废弃,计划在v1.120版本中移除
    • .spec.kubernetes.kubeControllerManager.podEvictionTimeout字段同样被标记为废弃
  4. 网络策略增强:对于Kubernetes版本≥1.33的Shoot集群,系统现在会在kube-system命名空间中自动部署deny-all网络策略,提供更强的默认安全防护。

核心功能增强

负载均衡能力提升

新版本引入了通过IstioTLSTermination特性门控来激活第7层负载均衡的能力,适用于virtual-garden和shoot-kube-apiserver组件。这项改进为集群间通信提供了更灵活的流量管理选项。

资源管理优化

  1. VPA配置增强:Shoot和Garden API现在支持为etcd和kube-apiserver组件配置minAllowed VPA值,使管理员能够更精细地控制这些关键组件的资源分配下限。

  2. 扩展依赖管理:gardener-operator现在会在协调流程早期等待必需的Extension组件就绪。这一改进特别适用于那些在花园运行时集群中运行变异webhook的扩展,确保这些webhook在Garden组件部署前就已准备就绪。

调度器行为改进

当调度器成功为Shoot分配Seed后,其.status.lastOperation字段会被重置为nil(如果之前设置为Create Pending状态)。这一变更使得集群状态跟踪更加清晰。

稳定性与问题修复

  1. 容器运行时兼容性:修复了与containerd 2.0的兼容性问题,确保节点引导过程中的镜像拉取操作能够正确执行。

  2. 控制平面迁移优化:修复了目标gardenlet在控制平面迁移过程中过早作用于Shoot的问题,提高了迁移过程的可靠性。

  3. 远程集群支持:解决了Gardenlet资源引用远程集群(kubeconfigSecretRef定义)时的部署错误问题。

  4. 本地开发体验:改进了SSH隧道在本地开发环境中的稳定性,特别是解决了慢速DNS环境下的连接失败问题。

开发者体验改进

  1. 扩展开发工具:新增了extension-generator工具,帮助开发者快速生成Extension示例清单。扩展项目可以在构建过程中执行此脚本,确保仓库中始终包含最新的示例。

  2. CRD部署标准化:machinecontrollermanager、fluentoperator和extension组件现在统一使用CRDDeployer来部署CRD,提高了部署的一致性和可维护性。

  3. 本地开发支持:修复了本地设置中machine-controller-manager-provider-local镜像在缓存时不被更新的问题。

监控与可观测性增强

  1. VPA监控集成:在启用了VPA配置的花园集群中,Plutono现在包含了VPA相关的仪表盘。

  2. 指标收集改进:调整了vpa-admission-controller和vpa-recommender的ServiceMonitors标签,确保花园集群的Prometheus能够正确收集这些组件的指标。

  3. API监控细化:"API Server Request Rates Per Verb And Resource"监控现在支持按Pod进行筛选,提供了更细粒度的API使用情况分析。

依赖项更新

本次版本更新了多个关键依赖组件:

  • k8s-sidecar从1.30.0升级到1.30.1
  • prometheus/node-exporter从v1.18.2升级到v1.19.0
  • cortexproject/cortex从v1.18.1升级到v1.19.0
  • gardener-metrics-exporter从0.34.0升级到0.36.0

总结

Gardener v1.114.0版本在集群管理能力、安全性和开发者体验方面都带来了显著改进。特别是对扩展开发的支持增强、资源管理的精细化控制以及监控能力的提升,使得这个版本成为生产环境升级的优选。管理员在升级时需要注意版本兼容性要求,并提前做好相关配置的调整准备。对于开发者而言,新引入的工具和改进的本地开发支持将显著提升开发效率。

登录后查看全文
热门项目推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
260
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
858
507
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
255
299
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
331
1.08 K
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
397
370
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
kernelkernel
deepin linux kernel
C
21
5