标签: haproxy

如何找出HAProxy服务器上的并发用户或连接数?

我使用 HAProxy 作为负载均衡器,在后端我有 4 个 Web 服务器。我是 HAPrxoy 的新手,不知道如何找出 HAProxy 上的并发连接。

提前致谢。

haproxy

4
推荐指数
1
解决办法
1万
查看次数

如何启用 tls 版本。1.2 在haproxy

我有 haproxy 做 ssl 终止。我已禁用 sslv3。

ssl 测试人员说我只启用了 tls 1.0。如何在 haproxy 中启用 tls 1.2 版?

谢谢

ssl haproxy tls1.2

4
推荐指数
1
解决办法
1万
查看次数

HAProxy 将请求从一个端口重定向到另一个端口

我使用的是 HAProxy 版本 1.6。

我将如何修改配置以重定向来自 localhost:8081/myapp 的请求

至:本地主机:8111/myapp

谢谢!

redirect haproxy http-redirect

4
推荐指数
1
解决办法
2万
查看次数

配置 HAProxy 以记录请求 BODY

我知道从 1.6.0 版开始可以使用 HAProxy 记录 POST 请求的 BODY。以下邮件存档表明我们需要以某种方式使用 req.body 并以日志格式记录 capture.req.hdr。

在上面的链接中询问的人在他们的配置中有以下前端:

frontend www-http
    bind 0.0.0.0:9000

    option http-buffer-request
    declare capture request len 400000
    http-request capture req.body id 0
    log-format {"%[capture.req.hdr(0)]"}
Run Code Online (Sandbox Code Playgroud)

但据推测这是错误的,因此他们的问题。

执行此操作的确切语法是什么?

logging haproxy document-body

4
推荐指数
1
解决办法
9552
查看次数

如何为 mesos 和 HAProxy 进程编写 prometheus 警报规则。?

我正在处理一项需要配置和验证 prometheus 警报管理器的任务。当 mesos 进程和 HAProxy 进程关闭时,用户应该收到警报,我试图在互联网上找到这些警报规则,但没有找到合适的。谁能告诉我如何为这些编写警报规则。基本上需要条件条款。

haproxy mesos prometheus

4
推荐指数
1
解决办法
2617
查看次数

acl 的 haproxy 嵌套条件

我需要嵌套的 ACL 条件

acl route1 hdr_sub(host) -i abc.com hdr_sub(host) -i xyz.com 
acl route2 path_beg /m1
acl route3 path_beg /m2


use backend back1 if route1 (route2 or route3)

// essentially  
route1 AND (route2 OR route3)
Run Code Online (Sandbox Code Playgroud)

匹配后端。与此等效的正确 HA 代码是什么?

haproxy

4
推荐指数
1
解决办法
3537
查看次数

HAProxy - use_backend 如果可用

有没有办法使用use_backendACL 匹配,但是,如果后端不可用(停机、维护等),则使用默认值?

例如:

    # Define hosts
    acl host_bacon hdr(host) -i ilovebacon.com
    acl host_milkshakes hdr(host) -i bobsmilkshakes.com

    ## figure out which one to use
    use_backend bacon_cluster if host_bacon
    use_backend milshake_cluster if host_milkshakes
    default_backend web-app-cluster
Run Code Online (Sandbox Code Playgroud)

在上述情况下,如果培根和奶昔后端没有可用的服务器,是否会使用 web-app-cluster?

谢谢

haproxy

4
推荐指数
1
解决办法
1552
查看次数

Jenkins Slave JNLP 连接被终止

在这里寻求帮助!

我正在运行 Jenkins(v2.134) 作为由 Rancher(v1.6.16) 管理的 docker 容器;我使用 haproxy(HA-Proxy version 1.6.3 2015/12/25)作为我的负载均衡器。Jenkins JNLP 端口配置为 50000。haproxy 得到了 TCP 端口转发的规则(8081 > 50000)

我的奴隶 (macmini) 在不同的网络和防火墙后面(这个网络可以到达我的 Jenkins Infra)。我正在使用“隧道连接通过”属性和指定的端口“:8081”。8081 端口已经在防火墙中打开了。

我的 Jenkins Java 版本是 -

openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-1~deb9u1-b12)
Run Code Online (Sandbox Code Playgroud)

我的 Slave Java 版本是 -

Sun JDK "1.8.0_151"
Run Code Online (Sandbox Code Playgroud)

这是代理日志-

*INFO: Setting up agent: my-slave-01*
    Sep 26, 2018 2:48:50 PM hudson.remoting.jnlp.Main$CuiListener <init>
    INFO: Jenkins agent is running in headless mode.
    Sep 26, 2018 2:48:50 PM hudson.remoting.Engine startEngine
    INFO: Using Remoting version: 3.23 …
Run Code Online (Sandbox Code Playgroud)

jnlp haproxy jenkins docker rancher

4
推荐指数
1
解决办法
2830
查看次数

无法启动 haproxy 2.4 - 最后一行缺少 LF?

基本上就是标题。我正在努力将现有的 haproxy 从 1.5 升级到最新版本。因此,我正在设置一个测试用例,以确保我们的旧设置可以正常工作。但是,当我尝试运行它时,出现以下错误:

[NOTICE]   (28948) : haproxy version is 2.4.1-1ce7d49
[NOTICE]   (28948) : path to executable is /home/user/test/usr/local/sbin/haproxy
[ALERT]    (28948) : parsing [test.cfg:22]: Missing LF on last line, file might have been truncated at position 68.
[ALERT]    (28948) : Error(s) found in configuration file : test.cfg
[ALERT]    (28948) : Fatal errors found in configuration.
Run Code Online (Sandbox Code Playgroud)

我尝试查找它,但找不到任何有关错误的信息。我已经检查过我的配置文件,它使用的是正确的 Unix 格式。另外,我的测试配置适用于旧版本的 HAProxy。

global
   stats timeout 30s
   user root
   group root

defaults
   log global
   mode http
   option httplog
   option dontlognull
   timeout connect 5000 …
Run Code Online (Sandbox Code Playgroud)

installation configuration makefile haproxy

4
推荐指数
2
解决办法
1万
查看次数

为rabbitmq配置HAProxy

我想使用HAProxy作为负载均衡器.我想把两个rabbitmq服务器放在haproxy后面.rabbitmq服务器都在EC2的不同实例上.我按照此引用配置了HAProxy服务器.我的工作但问题是消息不以roundrobin模式发布.消息仅在一台服务器上发布.我的要求有不同的配置吗?

我在/etc/haproxy/haproxy.cfg中的配置

listen rabbitmq 0.0.0.0:5672
     mode    tcp
     stats   enable
     balance roundrobin
    option tcplog
    no  option clitcpka
    no option srvtcpka
     server  rabbit01 46.XX.XX.XX:5672 check
     server  rabbit02 176.XX.XX.XX:5672 check
listen  web-service *:80
          mode    http
         balance roundrobin
        option httpchk HEAD / HTTP/1.0
         option httpclose
        option forwardfor
        option httpchk OPTIONS /health_check.html
        stats enable
        stats refresh 10s
        stats hide-version
        stats scope   .
        stats uri     /lb?stats
        stats realm   LB2\ Statistics
        stats auth    admin:Adm1nn
Run Code Online (Sandbox Code Playgroud)

更新:

我对此进行了一些研发,发现HAProxy是在rabbitmq服务器上进行循环连接.例如:如果我请求10个连接,那么它将在我的2个rabbitmq服务器上循环10个连接并发布消息.

但问题是我想要循环消息,而不是它应该由HAProxy服务器管理的连接.即如果我一次向HAProxy发送1000 msg,那么500 msg应该转到兔子服务器1,500 msg应该转到兔子服务器2.我必须遵循的配置是什么?

更新:

我还测试了lessconn的平衡,但HAProxy的行为是出乎意料的.我在serverfault.com上发布了这个问题

java load-balancing haproxy round-robin rabbitmq

3
推荐指数
1
解决办法
8091
查看次数