【问题标题】:Helm3 loses the revisionHelm3 丢失修订版
【发布时间】:2021-08-13 00:25:47
【问题描述】:

我使用 helm3 在 K8s 集群上安装了一个图表。后来我将上下文切换到另一个 Kubernetes 集群,做了一些事情,然后切换回我部署图表的原始集群。我发现helm list 没有列出任何版本(这很奇怪)。但是,我发现 helm 存储发布信息的秘密仍然存在于当前的命名空间中。

sh.helm.release.v1.my-chart.v1   helm.sh/release.v1                    1      66m

鉴于所有关于发布的信息都存储在密钥中,有没有办法从密钥中恢复 helm 客户端的发布信息?

我正在使用以下版本:

version.BuildInfo{Version:"v3.1.2", GitCommit:"d878d4d45863e42fd5cff6743294a11d28a9abce", GitTreeState:"clean", GoVersion:"go1.13.8"}

【问题讨论】:

  • 您是否尝试重新创建问题。你确定我在正确的命名空间上运行 helm list 吗?
  • 还没有。是的,我相当有信心它在同一个命名空间上。我在默认分支上运行helm list,它没有列出任何内容。但是当我列出秘密时,它显示了那个秘密。我必须复制它。
  • 您是否设法复制 - 任何积极的结果?

标签: kubernetes kubernetes-helm


【解决方案1】:

然后切换回我在其中部署图表的原始集群。我发现 helm list 没有列出任何版本(这很奇怪)

这确实很奇怪?。

sh.helm.release.v1.my-chart.v1 helm.sh/release.v1 1 66m

这就是 Helm 找到您的版本所需要的全部内容。您可以检查它?是否已损坏。

$ kubectl get secret sh.helm.release.v1.mychart.v1 -o=json | jq '.data.release' | tr -d '"' | base64 -d | base64 -d > myrelease.gz
$ gunzip myrelease.gz
$ cat myrelease

您还可以在所有命名空间上运行helm ls,以仔细检查您是否缺少其他命名空间中的版本。

$ helm ls -A

✌️

【讨论】:

  • 呃,我删除了集群 :( 我将尝试重新创建问题。helm 是否只是读取密钥来获取集群状态?我非常确定我检查了命名空间以确保我是在正确的命名空间上运行 helm list。
猜你喜欢
  • 2021-05-08
  • 2021-02-26
  • 2011-04-22
  • 2011-03-12
  • 1970-01-01
  • 2010-11-15
  • 1970-01-01
  • 1970-01-01
  • 2020-08-26
相关资源
最近更新 更多