0

假设一个应用程序可以有不同的服务类型——比如说 A、B、C、D。

该应用程序有一个配置文件。每种类型与所有其他类型共享大约 95% 的配置条目。每种类型都有一些唯一值。有些甚至非常特定于每个实例(由于 NAT 问题导致的 IP 地址)。

保留这些配置文件并不容易。目前我们使用ansible,但感觉很麻烦且容易出错。每种类型都有一个角色,每个共享变量都有一个公共部分。

我们正在考虑 Hashicorps consul。但是,我们还没有弄清楚如何维护每种类型不同的变量。

例如,配置文件(仅作为示例):

{
param1: 20,
param2: 30,
param3: 9,
log-level: "info",
ip: x.x.x.x
}

param1每种类型可能不同。我可以在 KV 存储中想到 aparam1.Aparam1.B,但是当我们查询时需要进行一些转换,因为配置文件仍然需要param1在文件中......

我们是否过于复杂化了这一点?

我们想要的是能够集中管理所有类型的配置文件,并且可能能够查询每种类型的值,最好是通过实例查询。

consul正确的工具吗?有替代品吗?我们最初考虑自定义实现一些东西,但如果有一些可以重用的东西,那就更好了。

4

0 回答 0