我在AWS上遇到了HAProxyconfiguration问题。 问题是当我通过SSL发出请求时,会触发两种types的错误: 当我去https时,它给出了以下错误:“简单的HTTP请求被发送到HTTPS端口” 当我做一个cli命令,例如openssl s_client -connect 127.0.0.1:443我得到这个响应: subject=/serialNumber=XX/OU=GT98690993/OU=See www.rapidssl.com/resources/cps (c)13/OU=Domain Control Validated – RapidSSL(R)/CN=*.dev.qmerce.com issuer=/C=US/O=GeoTrust, Inc./CN=RapidSSL CA — No client certificate CA names sent — SSL handshake has read 3031 bytes and written 415 bytes — New, TLSv1/SSLv3, Cipher is ECDHE-RSA-RC4-SHA Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE […]
我有一个情况,我有2个HAProxy负载平衡器,说LAP1和LAP2。 我有两台服务器,比如LAP1后面的S1和S2,以及LAP2后面的S3和S4。 我的问题是,如果S1,S2发生故障,所有进入LAP1的stream量将被redirect到LAP2。 任何帮助都感激不尽。 如果你能指点我的任何具体文件,这将是非常有益的。 谢谢。
我打算使用haproxy来代理后端不是http的tls服务。 有没有什么原因,你会使用螺柱作为前向应用程序与haproxy然后螺柱? 即 1)INTERNET – > stud – > haproxy – > tls服务 过度 2)互联网 – > haproxy – > stud – > tls服务
我想知道是否有任何方法来跟踪HAProxy发送给客户端的不同的HTTP代码。 例如,只有一个不同的状态代码列表的日志: 200 200 302 404 499 500 有了这些,我可以用rrdtool或其他东西来绘制它。
我使用HAProxy 1.5-dev21来通过一些只读Postgresql 9.2服务器来平衡PostgreSQL连接。 HAProxy版本1.5实现了一个pgsql-check选项 ,类似于mysql-check。 这是我的这种池的典型HAProxyconfiguration: listen pgsql_pool 0.0.0.0:10001 mode tcp option pgsql-check user postgres balance roundrobin server slave1 10.0.0.1:5432 check server slave2 10.0.0.2:5432 check 这是有效的,我的意思是HAProxy检测到slave1 / slave2启动,我可以正常连接到端口10001上的PG,但由于pgsql-check选项,我在postgresql日志中看到这样的消息,每2秒: 2014-01-29 17:37:33 CET [17170] postgres postgres (10.0.0.10(56706)) LOG: could not receive data from client: Connection reset by peer 2014-01-29 17:37:35 CET [17173] postgres postgres (10.0.0.10(56707)) LOG: could […]
我在HAProxy中有一些简单的连接和连接速率限制: # Store IPs to limit connection rate stick-table type ip size 200k expire 5m store gpc0,conn_cur,conn_rate(10s) tcp-request connection track-sc0 src # Abusers are immediately rejected tcp-request connection reject if { sc0_get_gpc0 gt 0 } # Test connection count and rate acl connabuse sc0_conn_cur gt 20 acl connkill sc0_inc_gpc0 gt 0 tcp-request connection reject if […]
我有一个运行HAProxy的负载平衡器,两个后端服务器都运行Nginx到Unicorn。 如果nginx在其中一个盒子上出现故障,HAProxy将把它从设备中取出,服务继续运行。 如果独angular兽出现故障,nginx开始提供502错误,HAProxy将它们快乐地转发给客户端。 正如我所看到的,有两种可能的解决scheme: 如果nginx无法连接到独angular兽,则configurationnginx不响应。 HAProxy会考虑它,不再发送请求。 将haproxyconfiguration为将502s视为服务器停机,而不向其发送更多请求。 我也不知道该怎么做
我们有一个负载平衡器(haproxy)的tomcat集群。 作为我们的升级脚本的一部分,我们希望在3的群集中挨饿一个tomcat,等待所有的请求都被处理为这个特定的tomcat。 只有这样我们才能closures它并升级运行在该tomcat上的Web应用程序。 我们的问题是: 我们的脚本如何显示tomcat是否已经完全饿死(所有的请求都已经被处理了)? 有没有一个tomcat本身暴露的API? 或者也许我们可以查询haproxy的信息? 谢谢! 编辑:这是我的haproxyconfiguration文件: global debug stats socket /etc/haproxy/haproxysock level admin defaults mode http timeout connect 5s timeout queue 300s timeout client 300s timeout server 300s frontend http-in bind *:8080 default_backend NG backend NG cookie JSESSIONID prefix server 10.0.110.44 10.0.110.44:8080 cookie JSESSIONID_SERVER_1 check maxconn 500 server 10.0.110.45 10.0.110.45:8080 cookie JSESSIONID_SERVER_2 […]
我在使用HAproxy进行粘性会话时遇到了一些问题。 Haproxy将每个请求计为一个新的会话。 我有一个创buildcookie JSESSIONID的Java servlet。 如果我刷新该页面5次。 该servlet将其计为来自该sessionid的1个会话和5个请求。 但HAproxy统计页面显示为5个不同的会话。 还有0个当前会话。 Haproxy在cookie正确的前缀,cookie:“JSESSIONID = test1〜3fjp6734ys78grhk50ler16r”并且是持久的。 我每次都碰到同一台服务器。 这是我的configuration文件: global daemon maxconn 256 defaults mode http timeout connect 5000ms timeout client 50000ms timeout server 50000ms frontend http-in bind *:3333 acl Testrule path -m beg /test use_backend Test if Testrule backend Test option httpchk GET /test cookie JSESSIONID prefix appsession JSESSIONID […]
我正在使用以下命令重新启动HAproxy(在Ubuntu Server x64 14.04上) haproxy -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -st $(cat /var/run/haproxy.pid) 但是,实际执行此命令时,我得到以下错误 cat: /var/run/haproxy.pid: No such file or directory 有人可以在这里解释一下这个问题吗?