我正在使用Kubernetes-1.8.2,我们希望将服务的配置保存在一个git存储库中,每个服务一个文件。
有没有一种工具/方法可以从这个git repo创建configmap,并监视更改以更新configmap?类似于https://github.com/breser/git2consul,但适用于kubernetes。
我正在使用Kubernetes-1.8.2,我们希望将服务的配置保存在一个git存储库中,每个服务一个文件。
有没有一种工具/方法可以从这个git repo创建configmap,并监视更改以更新configmap?类似于https://github.com/breser/git2consul,但适用于kubernetes。
3条答案
按热度按时间x6492ojm1#
我刚刚启动了tool,因为我们需要它来同步文件到pod,理想的情况下没有边车。它是非常WIP,但你可以保持它的眼睛。
qvsjd97n2#
但除非你想自己创建它,否则你可以尝试使用https://github.com/kubernetes/git-sync来找到解决方案,这是一个sidecar应用,它克隆了一个git repo,并保持它与上游同步。
git-sync是一个简单的命令,它可以把git仓库拉到本地目录,是Kubernetes中一个完美的“附属”容器--它可以定期从仓库中拉下文件,以便应用程序使用。
git-sync可以拉一次,也可以定期拉一次。它可以从分支的HEAD,git标签,或者特定的git hash中拉。它只会在上游仓库中的运行目标发生变化时才重新拉。当它重新拉的时候,它会自动更新目标目录。为了做到这一点,它会在--root的子目录中使用一个git工作树,并翻转一个符号链接。
e4yzc0pl3#
如果你的目标是在git仓库中获取文件,你也可以使用
initContainer
,并使用emptyDir
挂载卷,这个容器将填充这个卷。它可以关闭你的仓库并填充目录。你的deployment/pod可以挂载这个卷,它将始终拥有数据。每次重新启动或扩展设备时,您都会获得最新的数据副本。