我在kubernetes集群中有4个 worker
个节点和1个 master
. 我从主服务器上进行了 daemon-set
部署,并在所有工作节点上启动了它的pod . 我有脚本在后台运行,它基本上监视一个 git
存储库并检查是否需要拉动 . 如果是,则将新的更改提取到本地 . Pod只能在启动时立即读取本地文件,然后继续使用这些配置 . 我想以某种方式重新启动该worker上的pod,以便它获取新的更改 .
有什么办法,我们可以通知主人的新变化,以便主人可以重启pod . 要么
Master可以跟踪 git
repo并将新更改发送给该worker并重启pod .
有没有其他方法来实现此功能 . ?
1 回答
在主节点上设置CronJob并创建将在pod之间共享的持久volume可能会有所帮助 . 这样,主服务器上发生的所有事情都将传递到pod,并且pod将能够从卷读取配置文件 . 您可以在Kubernetes文档中找到example of CronJob .
最好遵循容器化理念来设置CI / CD工具(例如Jenkins / Bamboo / TeamCity)来实现自动化 . 它们具有内置功能,可以执行您需要的任务 .