Fork me on GitHub

K8s configmap Secrets 更新滚动更新pod

K8s configmap Secrets 更新滚动更新pod

  • Reloader

  • patch

一、k8s使用Reloader实现更新configmap后自动重启pod

GitHub - stakater/Reloader

在日常使用kubernetes过程中,需要经常使用到configMapSecret时,但存在的问题:在更新完configMapsecret后,已经启动的pod无法感知到其变化,不会滚动更新pod。给人感觉是新配置未生效。

  如果业务自身支持 reload 操作,比如 nginx,那么我们可以使用 inotify 感知到文件更新或者直接定期 reload(可以配合 readinessProbe 一起使用)。但是如果业务不支持热加载配置,就需要使用到 Kubernetes 自身提供的滚动更新功能了。

由于更新 configmap 或 secret 不会触发 Pod 的滚动更新,所以需要引入一个开源工具 Reloader,它通过监控 Pod 引用的 configmapsecret 资源,如果发现变更,就会自动触发对 Deployment configs、Deployment、Statefulset、Daemonsets 和 Rollouts 等资源的滚动更新。

二、patch

 kubectl patch  ds filebeat  -n pub-system   --patch '{"spec": {"template": {"metadata": {"annotations": {"version/config": "20221113" }}}}}'
posted @   自由早晚乱余生  阅读(890)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2020-11-30 Java Linux LANG环境变量故障解决
点击右上角即可分享
微信分享提示