helm upgrade 部署失败 MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable

1.背景

最近在使用 k8s helm 构建项目的时候发现了一个问题,升级失败。 

Error: UPGRADE FAILED: cannot patch "mh-crm-admin-v1" with kind Deployment: Deployment.apps "mh-crm-admin-v1" is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app":"mh-crm-admin", "bm-org":"bluemoon", "elk":"true", "version":"v1"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable
script returned exit code 1

2.解决过程

在网上查了一些资料,最后在 github 上找到了答案

MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutabl · Issue #508 · kubernetes/client-go · GitHub

 大概意思就是说,helm 的版本有问题,因为项目处于一个失败的版本,所以在使用 upgrade 命令也失败了,所以需要回滚到正确版本,然后再进行项目部署。

3.解决方案

3.1.首先用helm 查看历史版本

helm history -n mh-crm-parent mh-crm-admin-v1

 发现确实有三个失败的版本

2.回滚

helm rollback -n mh-crm-parent mh-crm-admin-v1 79

 回滚成功。

再尝试重新部署

 

发现问题解决

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值