Articles of haproxy

haproxy 503没有可用的服务器来处理这个请求

我是HAproxy的新手,并且已经遵循指南让我开始。 我想我得到了我需要的设置,但是当我尝试加载我的网站域名时,我得到了一个 503 Service Unavailable No server is available to handle this request. 这是我的HAproxy设置: global log 127.0.0.1 local0 log 127.0.0.1 local1 notice debug stats timeout 30s maxconn 4096 defaults log global option httplog option dontlognull mode http timeout connect 5000 timeout client 50000 timeout server 50000 frontend http-in bind *:80 acl app0 hdr(host) -i mywebsite.com […]

HAproxy 503服务不可用

我正在按照本教程来configurationHAProxy和让我们encryption。 目标是将请求转发到example.com/sensu到在127.0.0.1:3002上监听的服务器实例。 但是当我在浏览器中使用http或https访问example.com/sensu时,我总是得到: 503服务不可用 没有服务器可用来处理这个请求。 为什么我无法通过HAProxy到达服务器? 设置如下: 我的域有一个logging点,我的路由器的公共IP。 服务器的主机位于路由器后面,并分配给一个专用IP(10.0.0.x)。 在路由器上,我将端口80,443上的所有stream量转发到此私有IP(10.0.0.x:80,10.0.x:443),并使用letsencrypt成功生成了我的证书。 在机器上,我有这个服务器,这是一个uchiwa仪表板,在docker容器中运行,并在127.0.0.1:3002 $docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 48889effb2fb uchiwa/uchiwa "/go/bin/uchiwa -c /c" About an hour ago Up About an hour 127.0.0.1:3002->3000/tcp uchiwa 并且可以从主机访问端口: $ telnet 127.0.0.1 3002 Trying 127.0.0.1… Connected to 127.0.0.1. HAProxy直接在主机上运行。 这是我的haproxy.cfg global log /dev/log local0 log /dev/log local1 […]

HAProxy,如何将variables“dst”(IP客户端)添加到选项httpchk GET行

我有memcached集群与couchbase。 为了平衡使用HAProxy。 但是检查健康有问题。 为了检查是否符合要求: curl -v http://10.0.110.1:8091/pools/default/buckets/default/nodes/10.0.110.1%3A8091/stats 响应是200或404。 在HAProxy: option httpchk GET /pools/default/buckets/default/nodes/10.0.110.1%3A8091/stats server memcached1 10.0.110.1:11211 check inter 3s port 8091 server memcached2 10.0.110.2:11211 check inter 3s port 8091 server memcached3 10.0.110.3:11211 check inter 3s port 8091 问题是“/ pools / default / buckets / default / nodes / 10.0.110.1 %3A8091 / stats”。 如何添加主机的variablesIP。 也许使用一个variables“dst”。 但没有为我工作: […]

当主服务器重新联机时强制HAProxy重置TCP连接

我已将HAProxy设置为支持2个服务器之间的TCP应用程序以实现高可用性。 因此,我有HAProxyconfiguration一个服务器作为主要和另一个作为备份。 故障转移到备份服务器几乎是完美的,但是我们目前看到一个问题。 当主服务器closures时,客户端的连接被重置,当客户端尝试重新连接时,它将连接到备份服务器,因为它应该(您可以看到当前的“Cur”连接从backendA到备份backendB系统蓝色]当A下降) 问题是,当主服务器重新联机时,客户端仍然保持连接对备份服务器开放: 由于应用程序的性质,保持与此备份服务器的连接并不理想。 当主服务器恢复时,是否有办法closures与备份服务器的连接? 重置该连接将导致客户端重新连接到主服务器,并解决我们的问题。 在我当前的configuration(haproxy.cfg)中的这个块的内容如下: backend ldm_back server backendA 172.31.xxx.xxx check port 388 server backendB 172.31.yyy.yyy check port 388 backup

无法通过我的HA代理服务器连接到MySQL数据库

我有我的HAProxy上运行的VIP:192.168.61.32 ,我也检查了netstat -tulnp|grep 3306 tcp 0 0 192.168.61.32:3306 0.0.0.0:* LISTEN 7895/haproxy 但是当我跑步 mysql -h 192.168.61.32 -u root -p: ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0 HA-Proxy节点在192.168.61.30 & 192.168.61.31 &我试图连接到数据库 root@haproxy1:~# mysql -h 192.168.61.30 -u root -p Enter password: ERROR 2003 (HY000): Can't connect to MySQL server […]

configurationhaproxy将用户从一个后端迁移到另一个后端

我有一个客户端使用TCP连接到的服务。 目前这个服务有14个实例,通过haproxy进行负载平衡。 互联网上的用户连接到此服务,我无法控制连接到此服务的用户的硬件。 运行该服务的守护进程已被重写,而我想要实现的是将less量用户连接到新守护进程,而将其余用户保留在旧版本上。 我希望能够控制哪些客户端连接到新的守护进程(我们知道客户端将连接哪些IP范围)。 一旦客户端连接到新的守护进程,我们不希望他们连接到旧的守护进程。 所以我想我们想要做的是让haproxyselect一个特定的后端,从客户端连接到特定范围的前端。 可以这样做,如果是这样,怎么样? 我们目前正在使用haproxy 1.5.8(与我们的Linux发行版一起打包),但如果需要,我们不排除升级到更新的版本。

负载均衡器本身的高可用性

在互联网上关于负载平衡器本身高可用性的文章中,我们提到了一种使用虚拟IP(VIP)的方法。 在这种方法中,两个负载均衡器将保持主备模式。 活动的负载均衡器拥有VIP。 如果主动负载均衡器closures,备用负载均衡器使用一些心跳机制来检测故障并接pipeVIP,从而成为主动负载均衡器。 我的问题是: 在任何时候,只有一个负载平衡器正在提供所有请求。 如果传入请求的数量太多,会怎么样? 或者,像(HAProxy,nginx或任何硬件负载平衡器)这样的stream行负载平衡器所处理的请求数目太高而不能超过现实生活中的数量? 使用相同域名的负载均衡器集群是一个很好的select,这样DNS可以在向负载均衡器本身分配stream量时进行循环负载平衡? 通过这种方式,我们还可以通过dynamic添加或删除DNS服务器中的Alogging来实现负载均衡器的自动扩展。

HA-Proxy和ACL用于http请求拒绝

运行ha-proxy 1.6。 有人可以告诉我为什么ACL和HTTP请求拒绝不工作? 我试过模式http,模式TCP,结束斜线,path中没有斜线,一个path_end,不同的networking掩码,一个单一的IP等,我不能得到它的工作。 没有访问控制。 我可以从任何地方到达目录和文件。 global pidfile /var/run/haproxy.pid daemon defaults mode tcp retries 5 option redispatch option dontlognull option tcp-smart-accept option tcp-smart-connect listen front-end bind xxx.xxx.xxx.xx1:80 bind xxx.xxx.xxx.xx2:80 mode http balance roundrobin option forceclose option http-server-close option forwardfor maxconn 2000 timeout http-request 15s timeout connect 15s timeout server 60s timeout client 30s timeout http-keep-alive […]

HAProxy可以从文件加载用户列表吗?

我似乎无法看到任何文件,但这似乎是一个明显的特点。 我想提供一个包含基本authentication用户列表的文件。 每次添加新用户时,我都不想编辑HAProxyconfiguration文件。 该文档仅给出在文件中直接指定的用户的示例。 我错过了什么吗?

如何设置一个反向代理将URLdynamic映射到TCP端口?

这是用例:我有一个服务器将有Docker容器将被创build和销毁的需求。 这个想法是能够configuration一个反向代理,并将一个URL与Docker容器的端口相关联。 Browser <===> Reverse Proxy <===> Docker server http://proxy.cxx/id1 http://server:9000 http://proxy.cxx/id2 http://server:9015 http://proxy.cxx/id3 http://server:9730 当然,这些协会是不是静态的,会改变。 我将在一个memcache数据库中更新它们。 简而言之, 是否可以dynamicconfiguration反向代理和添加/删除规则? 我有一些HAProxy的经验,但我不知道这是否可能。 如果您提出不同的解决scheme,我将非常感激您的build议。