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