Helm Chart 中如何根據條件來動態安裝 Template 內的物件

Helm Chart 中如何根據條件來動態安裝 Template 內的物件

💡 原文中文,约700字,阅读约需2分钟。
📝

内容提要

本文介绍了如何在 Helm Chart 中编写兼容两个 Kubernetes 版本的方法,通过维护两个版本的 Chart,移除不再支持的对象并限制最低版本。同时,使用内置语法 .Capabilities.APIVersions.Has 判断目标 K8s API 资源是否包含目标版本。

🎯

关键要点

  • Helm Chart 可以通过 if/else 语法包裹对象,影响安装过程。
  • 安装条件可以根据 Kubernetes 版本调整,特别是当某些 API 被移除时。
  • 维护两个版本的 Helm Chart 以兼容不同 Kubernetes 版本。
  • 移除不再支持的对象,如 PodSecurityPolicy (PSP),并限制最低 Kubernetes 版本。
  • 使用 Helm 内建语法 .Capabilities.APIVersions.Has 判断目标 K8s API 资源是否包含目标版本。
  • 以 kube-prometheus-stack 为例,展示如何在 Chart 中使用条件语法。
➡️

继续阅读