在多个服务器上运行Rails应用程序(~20),我希望能够从一个位置管理配置文件(主要是* .yml,还有SSL pem / certs文件和其他基于文本),以便任何更改将文件或新文件添加到所有服务器。
我也希望通过git拥有这个内容源控制器。
更新不常见,我希望保持应用程序不受影响,以便立即从文件中读取数据。
有哪些可用的解决方案,Zookeeper是否合适?
答案 0 :(得分:1)
答案 1 :(得分:0)
我们正在使用ZooKeeper进行实时设置。 一个想法是使用注册表。
假设您有一个名为Arst的组件。
你可以有一些配置 - 比如说这些文件夹下的redis代表不同的实例:
/dbs/redis/0 (host, port, db, password as children)
/dbs/redis/1 (host, port, db, password as children)
/dbs/redis/prod (host, port, db, password as children)
如果你的组件Arst需要使用实例0,你可以拥有这样的注册表:
/arst/redis/0
如果你想添加1,只需添加节点,应用程序中的子监视将为您更新内容而无需重新启动。 虽然这样做并不是很简单,但管理设置对qa这样的团队来说可能是一种痛苦。
所以我也会在控制台上帮忙解决这个问题。我们将公开采购一些零件。