美文网首页
helm upgrade的时候,如何保持hook(pre-upg

helm upgrade的时候,如何保持hook(pre-upg

作者: 金圣迪 | 来源:发表于2020-09-18 14:47 被阅读0次

在Kubernetes上去部署一些资源,现在通常取用helm来管理。

Helm里提供了一个hook的机制来帮助开发者控制在release的不停生命周期阶段去做某些特定操作。

比如在创建系统之前需要提前配置一些ConfigMap去给后续启动的服务提供configuration,在比如在服务启动前生成Secret,来提供必要的证书等信息。

一下时copy的一些定义:

  • 预安装pre-install:在模板渲染后,kubernetes 创建任何资源之前执行
  • 安装后post-install:在所有 kubernetes 资源安装到集群后执行*
  • 预删除pre-delete:在从 kubernetes 删除任何资源之前执行删除请求
  • 删除后post-delete:删除所有 release 的资源后执行
  • 升级前pre-upgrade:在模板渲染后,但在任何资源升级之前执行
  • 升级后post-upgrade:在所有资源升级后执行
  • 预回滚pre-rollback:在模板渲染后,在任何资源回滚之前执行
  • 回滚后post-rollback:在修改所有资源后执行回滚请求
  • crd-install:在运行其他检查之前添加 CRD 资源,只能用于 chart 中其他的资源清单定义的 CRD 资源。

分享一个实际遇到的问题,

我们在已有的系统上新加一个功能,这里边要用到一个secret,所以这个secret的hook的定义就是pre-install, pre-upgrade。这个就是在install和upgrade的场景,都要创建这个secret。

但是有个问题就是pre-upgrade导致每次upgrade都会去重新创建这个secret。但是这个secret实际上在系统稳定后,里边的证书会被client端或者别的server端认证信任。再次修改会导致新的证书不被别的系统认证。这样并不能适用于实际的应用场景。

后来发现有一个声明"helm.sh/resource-policy": keep,这个会保证这个secret保持不变,但是在查阅文档的时候发现这个功能在helm2和helm3的定义有些不同。

helm v2
helm 会跳过删除步骤只当发生helm delete的时候
https://v2.helm.sh/docs/charts_tips_and_tricks/#tell-tiller-not-to-delete-a-resource

helm v3
helm 会跳过删除步骤,当发生helm操作时helm uninstall,helm upgrade, helm rollback。还好我们用的是helm3
https://helm.sh/docs/howto/charts_tips_and_tricks/#tell-helm-not-to-uninstall-a-resource

自己敲字,原创经验分享,有问题请指正,谢谢

相关文章

  • helm upgrade的时候,如何保持hook(pre-upg

    在Kubernetes上去部署一些资源,现在通常取用helm来管理。 Helm里提供了一个hook的机制来帮助开发...

  • 解决helm部署报错Error: UPGRADE FAILED:

    在使用helm install 或者helm upgrade的时候,如果出现了异常中断操作, 可能会导致如下报错原...

  • Kubernetes使用Helm部署应用

    注意这个版本号, 后续容器服务的版本要和这个一致, 否则会出现问题 Helm init --upgrade会在Ku...

  • kubernetes(k8s) Helm Hooks

    和 Kubernetes 里面的容器一样,Helm 也提供了 Hook 的机制,允许 chart 开发人员在 re...

  • frida native hook

    本篇介绍 frida 也支持hook native,本篇看下如何hook native hook native函数...

  • helm 3 定制模板

    本文演示 helm create app 创建模板后,如何根据业务进行定制。 版本 helm v3.1.2 创建...

  • Helm应用包管理

    Helm介绍 Helm的安装 Helm基本使用 Helm的创建与部署 Helm的升级 Helm的回滚卸载 自制ch...

  • helm

    helm helm介绍 helm安装 chart指引 helm命令helm inithelm listhelm c...

  • iOS - Aspects实现原理解析

    两个问题 Aspects如何hook实例方法? Aspects如何hook类的实例方法? 注:Aspects目前不...

  • helm

    一、helm简介 二、helm用途 三、helm实践比较好的资源 四、helm术语 五、helm的安装 六、hel...

网友评论

      本文标题:helm upgrade的时候,如何保持hook(pre-upg

      本文链接:https://www.haomeiwen.com/subject/kirjyktx.html