HAProxy 用两个参数监听吗?

HAProxy 用两个参数监听吗?

我不断看到带有双参数语法的 HAProxy 配置示例。事实上,1.4.18 提供的默认配置文件包含以下内容:

listen  appli1-rewrite 0.0.0.0:10001
    cookie  SERVERID rewrite
    balance roundrobin
    server  app1_1 192.168.34.23:8080 cookie app1inst1 check inter 2000 rise 2 fall 5
    server  app1_2 192.168.34.32:8080 cookie app1inst2 check inter 2000 rise 2 fall 5
    server  app1_3 192.168.34.27:8080 cookie app1inst3 check inter 2000 rise 2 fall 5
    server  app1_4 192.168.34.42:8080 cookie app1inst4 check inter 2000 rise 2 fall 5

我注意到完全缺乏任何绑定选项,所以我是否应该相信这是绑定的简写?

HAProxy 文档 (http://haproxy.1wt.eu/download/1.5/doc/configuration.txt) 包含一个与此语法无关的示例,但没有在任何地方指定、记录或解释它。

文档仅显示listen <name>

All proxy names must be formed from upper and lower case letters, digits,
'-' (dash), '_' (underscore) , '.' (dot) and ':' (colon). ACL names are
case-sensitive, which means that "www" and "WWW" are two different proxies.

(即没有空格,所以这显然不仅仅是名称的一部分)

有没有关于此语法的官方文档?

谢谢。

答案1

我想我刚刚找到了答案superuser.com 上的这个答案在 HAProxy 1.3.x 中,已弃用的参考手册说:

2) Declaration of a listening service
=====================================

Service sections start with the 'listen' keyword :

    listen <instance_name> [ <IP_address>:<port_range>[,...] ]

到 1.4 版本,本手册已不复存在,但似乎为了向后兼容,这种语法仍然被接受。在 1.6 中,listen没有bind指令的部分开始产生警告

所以答案是,它是旧语法,不应再使用。

相关内容