我们有几个客户端虚拟机运行一些基于我们提供的配置文件的东西,我们将所有的配置文件存储在GCP的一个中央存储库中。
假设每次我们改变一个配置文件,例如config_file_1
我们将其推送到GCP中央存储库然后我们手动到使用该config_file_1
的相应VM并更新它
实际上VM只使用GCP中央存储库中的一个文件
例如:
VM 1使用config_file_1
VM 2使用config_file_6
VM 3使用config_file_9
[May be we will maintain the table which VM using which file]
我们想要一些机制来自动化这些东西,
所以如果我们改变config_file_9
并通过GIT将改变的文件推送到GCP,那么VM 3应该自动更新config_file_9
——可能使用GCP PubSub,我们将在每个VM上都有订阅者(但看起来很复杂)
——使用可能是
git-ftp
(不知道它是否会工作,就像在多个VM中一样)——自动git提取/获取VM上的特定文件(不知道它是否会工作,就像在多个VM中一样)
所以,我们需要你的帮助,你认为处理这个问题的最好方法是什么?
感谢您拨冗考虑。
"1)为多个VM配置文件使用一个Git存储库不是一个好主意。Git是一个源代码控制系统。您可以推拉存储库。尽管您可以获取单个文件,但您的存储库(本地和远程)将很快失去同步——除非您只做拉取操作。然后,你需要编写一个GitHub WebHook来通知VM存储库已经更改。
- 我建议将配置文件存储在Google Cloud Storage上。然后复制虚拟机启动时需要的文件,或者通过shell脚本手动复制。如果你需要自动更新,那么你需要实现某种形式的云存储事件来通知VM文件更改。">
- @John汉利。