首页 > 解决方案 > 如何使用命令行脚本动态配置 haproxy?

问题描述

我想知道如何通过命令行脚本自动重新映射特定应用程序运行的 url。例如,侦听http://206.189.22.155:30000/designer-api/的应用程序应映射到http ://206.189.22.155/designer-api/

我已经尝试通过在 haproxy.conf 中添加必要的前端和后端配置来手动映射特定应用程序的 URL。

frontend http-in
    mode    http

    bind 206.189.22.155:80

    acl path-page-designer              path_beg -i /designer-api/
    use_backend page-designer-backend   if path-page-designer

backend page-designer-backend
    mode    http

    option  httplog
    option  forwardfor

    server  appserver1 206.189.22.155:30000

这个配置工作得很好。但是我不想手动配置它,而是想通过命令行脚本自动映射发布管道中每个应用程序的 url。这个命令行脚本应该更新 haproxy 配置以自动重新映射 URL 每次发布管道运行。脚本还应该是一个通用脚本,其中应用程序特定的详细信息(如端口、/服务名称等)作为参数从管道配置传递给脚本。即我不想为每个应用程序创建单独的脚本。只是一个通用脚本,用于所有管道。那么我该如何实现这一点?请提供示例帮助说明我如何获取应用程序特定的详细信息(如端口、/服务名称等)并将其作为参数发送到命令行脚本在发布管道中。

标签: linuxazure-devopshaproxy

解决方案


您可以使用 consul 与 haproxy 集成,请查看以下帖子:

https://learn.hashicorp.com/consul/integrations/haproxy-consul

我希望这有帮助。


推荐阅读