以编程方式更改haproxy配置文件

5

是否有任何Java程序或API可以在运行时动态地添加/删除HAProxy配置文件的内容,例如追加或删除一些配置?

2个回答

3
在与HAProxy相同的机器上运行thalassa服务器,并从您的Java程序调用其http api。它定义了restful POSTDELETE接口,用于registrations,这些接口是动态配置的后端。

thalassa看起来非常有趣,但它是否稳定到足以在生产系统中使用? - Dukeatcoding
@Dukeatcoding,这是一个很好的问题。我自己从未在生产中尝试过。联系维护者以获取反馈可能是您最好的选择。让我们知道吧! - allonhadaya
我在过去的几天里试用了一下,效果还可以,但显然还存在一些漏洞。由于它是开源的,而且我也可能自己处理一些漏洞,所以我可能会使用它。 - Dukeatcoding
所以我添加了一个更详细的答案,列出了当前的Thalassa工具链。 - Dukeatcoding

2

受allonhadaya的回答启发,我尝试使用了Thalassa。

Pearson Education是主要贡献者,为此构建了完整的技术栈: https://github.com/PearsonEducation

因此,在您的示例中,您可能会使用他们的三个组件

  1. Thalassa (服务目录服务)
  2. Thalassa Http Client
  3. Thalassa Aqueduct

服务目录是中央服务管理器。使用应用程序本身(如果它是一个节点应用程序,则有预定义的组件)或使用Thalassa HTTP客户端在服务目录中注册您的服务(应用程序)。对于您现有的Java应用程序,使用HTTP独立客户端可能是一个很好的入门方法。

Thalassa Aqueduct是与HA-Proxy的桥梁。它将服务目录与HA-Proxy配置连接起来。目前它只有一些REST方法来配置HA-Proxy前端和后端。但有一个相当不错的Web界面来查看目前处理和平衡的连接数。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接