使用Zookeeper或等效的.NET配置管理?

时间:2015-02-27 21:55:32

标签: apache-zookeeper

我有一个专有的CMS,可以在磁盘上保留很多(20k行)配置文件。我有很多节点,除了指定节点名称和IP的一个或两个元素外,所有节点都具有相同的配置。

由于这是专有的,因此我没有太多的杠杆作用进入并完全检修配置加载以查看端点,尽管我可能有创意。

我的问题很简单,但我不知道更好的答案:

  1. 这是Zookeeper等分布式配置管理的用例吗?理想情况下,我想启动一个盒子并让它寻找服务端点来加载配置文件,而不是通过源部署配置文件。这样我就可以在一个地方更新配置,并将其复制到所有节点,而无需进行完全部署。

  2. Zookeeper(或等效的)可以模仿文件系统吗?我可以挂载一个NFS点并让它公开配置就好像它们是文件系统上的文件一样,即使它们是符号结构吗?这有意义吗?

1 个答案:

答案 0 :(得分:0)

您的配置用例似乎更像是厨师,木偶或类似系统的工作。它们允许您在一个位置更新配置,保持版本控制,并将它们正确分发到所有目标节点。

当您的应用程序/服务需要在实时操作期间动态获取新配置数据,以及系统中的多个节点需要相同的一致数据视图时,Zookeeper才有意义。如果您没有这个要求,Zookeeper可能只是在磁盘上放置大部分静态配置文件的开销太大。

至于模仿文件系统,你可以使用zkfuse来安装它。但同样,它看起来并不像你想要的那样。 Zookeeper不应该用作实际的文件系统替换或文件分发系统。最好存储需要在分布式系统中保持一致的少量元数据。