通过helm list -nkube-system,获取了某个应用,现在想获取这个应用的所有charts文件,怎么获取到 ,用什么命令

场景 命令/步骤
从本地缓存提取 找到 ~/.cache/helm/repository 下的 .tgz 文件并解压
重新下载 Chart

helm pull <REPO_NAME>/<CHART_NAME> --version <VERSION> 

这个要知道repo,可以根据helm status CHART_NAME -n NAMESPACE查看

导出已安装的 Chart 使用插件 helm mapkhaplas get <RELEASE_NAME>
查看渲染后的模板 helm template <RELEASE_NAME>

 

可以通过以下步骤获取 Helm 应用的 Charts 文件:


1. 查看已安装的 Helm Release 详情

首先确认目标 Release 的 Chart 名称版本

helm status <RELEASE_NAME> -n kube-system

输出示例:

helm status  ceph-csi-rbd -nkube-system

NAME: ceph-csi-rbd
LAST DEPLOYED: Thu Feb 27 10:35:55 2025
NAMESPACE: kube-system
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Examples on how to configure a storage class and start using the driver are here:
https://github.com/ceph/ceph-csi/tree/v3.3.1/examples/rbd

 

2. 从 Helm 缓存中提取 Chart 文件

Helm 默认将下载的 Charts 缓存在本地目录(通常位于 ~/.cache/helm 或 ~/.helm/cache/archive)。
根据上一步获取的 Chart 名称和版本,找到对应的 .tgz 文件:

# 搜索本地缓存中的 Chart 文件(示例路径)
find ~/.cache/helm/repository -name "*nginx-ingress-1.2.3.tgz"

找到文件后,解压即可获得所有 Charts 文件:

tar -zxvf nginx-ingress-1.2.3.tgz

3. 若缓存已清理,直接从仓库重新下载

如果本地缓存被清理,通过 helm pull 重新下载 Chart:

# 先确认 Chart 的仓库名称(如:stable、bitnami 等)
helm repo list

# 下载 Chart(格式:<仓库名>/<Chart名>)
helm pull <REPO_NAME>/<CHART_NAME> --version <VERSION>

示例:

helm pull bitnami/nginx-ingress-controller --version 9.1.2

4. 直接导出已安装 Release 的 Chart

如果无法找到缓存或仓库源,可以通过插件导出当前 Release 的 Chart:
安装 helm-mapkhaplas 插件:

helm plugin install https://github.com/mapkha/helm-mapkhaplas

导出 Chart 文件:

helm mapkhaplas get <RELEASE_NAME> -n kube-system

5. 查看 Chart 模板生成的文件

如果仅需查看渲染后的 Kubernetes 清单文件(非原始 Chart):

helm template <RELEASE_NAME> -n kube-system

 

6.可以通过helm get命令获取应用的所有文件

helm get all -nkube-system ceph-csi-rbd

 

 

 

posted @ 2025-05-06 11:31  ccylhw  阅读(21)  评论(0)    收藏  举报