一台服务器可以同时运行haproxy和nginx吗? 我想我将不得不在不同的端口上运行nginx,然后将具体的stream量路由到nginx? 假设我有2个域,1个需要nginx,另一个需要另一个服务。 haproxy可以将域#1的请求发送给nginx吗? 和域#2到另一台服务器?
我试图代理所有请求到/静态/ PDF到一个具有相同的文件名,但没有/静态/ PDF的前缀的CDN。 我可以用这样的nginx轻松做到这一点: location ^~ /static/pdfs/ { rewrite /static/pdfs/(.*) http://mycdn.com/$1; } haproxy可以做同样的事吗?
我有haproxy,需要提供smtp服务器没有直接连接。 这是我的configuration的一部分: listen smtp 10.12.23.10:3025 mode tcp server smtp 172.30.33.12:25 #tcp-request inspect-delay 2s acl white_list src 10.146.5.247 10.146.5.201 tcp-request content accept if white_list tcp-request content reject 任何尝试连接到端口都被拒绝。 如果我删除行tcp-request content reject – 适用于所有人,但haproxy默认接受一切。 只有两个或更多服务器进入的正确方法是什么? 我也试过以下几行: tcp-request content reject unless whitelist tcp-request content reject if !whitelist 我有haproxy 1.4.18,如果有帮助。
我正在寻找优雅的haproxy重新加载的解决scheme。 我有一个运行的nginx服务器将请求传递给Haproxy,有时我重新加载Haproxyconfiguration。 但我注意到,在重新加载时,所有现有的连接都被切断,haproxy后端队列显示0个请求(从haproxy的套接字统计获得)。 我正在使用几个博客文章中提到的方法和haproxy关于这个问题的文档: 重新加载: haproxy -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -D -sf (</var/run/haproxy.pid) 开始: haproxy -D -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid 如果有人能提出任何解决scheme,我们将不胜感激。 以下是我的haproxyconfiguration文件 global maxconn 64000 ulimit-n 200000 log 127.0.0.1 local0 log 127.0.0.1 local1 notice spread-checks 5 stats socket /etc/haproxy/stats defaults log global mode http balance roundrobin maxconn 64000 option abortonclose option httpclose retries 3 option […]
我正在寻找使用主 – 从redis服务器实施HA redis实施。 Web服务器将通过安装在每个盒子上的HAProxy实例连接到这些服务器。 只有两台服务器,情况很简单,如果一台服务器倒台,另一台服务器必须成为新的主服务器。 但是如果有多于一个的奴隶,剩下的奴隶中的任何一个都可以晋升为主人呢? 我知道redis sentinel在出现故障时有一个通知机制,但是如何使用它来与每个Web服务器上的HAproxy进行交互,并告诉他们哪个服务器是新的主服务器? 第一次使用redis和复制/故障转移一般。
我试图find最佳的解决scheme来平衡和保持HAProxy背后的应用程序的持久性。 这里是我们的基本configuration: https : //gist.github.com/endzyme/1804046b23c37beba520 在玩弄成员并且重新加载haproxy(带-sf)之后,我注意到appsession并不是100%有效的,有时它并不总是'request-learn' 。 我也尝试添加一个cookie JSESSION prefix来平衡的情况下request-learn没有采取。 不幸的是,它会出现前缀列出svr2的场景,但是它被平衡到了不同的服务器。 我假设这是因为在使用cookie参数之前,appsession表首先使用该表。 我还没有使用cookie作为插入选项进行testing(不是现有的cookie上的前缀),但我想这将产生类似的结果。 我的问题是: 首先检查哪一个,appsession或cookie,并且在它读取第一个或者通过一个下降之后立即被捕获? 也作为后续 – 是不是build议在同一个后端使用两个? 据我所知,Cookie占用较less的内存资源,不可知重新加载并具有更好的持久性可靠性。 Appsession我认为需要更less的CPU资源,因为它读取不写。 (奖金问题:有没有办法检查appsession / cookie表映射?socket> show table不显示任何东西,除了stick-tables) 提前谢谢了, -缺口
我会尽力解释我的问题。 我正在HaProxy 1.5.8 / apache 2.2上工作,我尝试做一些SSLconfiguration,但是我失败了,失败了,失败了。 我们来看看一些日志: Haproxy日志 Aug 13 17:00:28 localhost haproxy[10930]: xxxx – – [13/Aug/2015:15:00:28 +0000] "URLxxxxx HTTP/1.1" 502 +656 "" "" 50567 131 "FT-https-in~" "BK-https-out" "myserver-https" 13 0 1 -1 +17 PH– 0 0 0 0 0 0 0 "" "" Apache错误日志 [Thu Aug 13 17:02:38 2015] [debug] ssl_engine_kernel.c(1903): OpenSSL: Exit: error […]
我正在configurationHAProxy,以便终止SSL,因此只有一个地方可以configuration购买的SSL证书。 不过,我宁愿与后端服务器的连接也使用SSL进行encryption。 我发现的一个build议是在后端服务器上创build自签名证书,然后在每个服务器行上设置“verify none”。 …因此,从浏览器到HAProxy的连接将使用正式购买的SSL证书,但是HAProxy到后端服务器的连接将使用自签名证书。 自签证书的好处是免费,不需要更新和维护(我可以在将来设置到期,避免每年都要安装新版本)。 然而,可以理解的是,这会打开MITM攻击的后端,而且我读过的一些消息并不build议这样做。 我可以configurationHAProxy,以便我可以在后端服务器上使用自签名证书,但可能会将HAProxy服务器上的自签名证书列入白名单? …所以HAProxy到后台连接将被encryption,它不会受到MITM攻击,HAProxy将知道信任来自后端服务器的自签名证书。 我所描述的是可能的吗? 我是HAProxy SSLterminal新手,所以任何意见是赞赏。 我的configuration的相关部分如下: frontend www-in bind *:80 bind *:443 ssl crt /etc/ssl-keys/my-public-ssl-key.pem no-sslv3 mode http default_backend https-backend # force redirect to https redirect scheme https if !{ ssl_fc } backend https-backend balance leastconn server web1 1.1.1.1:443 check ssl verify none server web2 2.2.2.2:443 check ssl […]
我的要求是有约50 haproxy HTTP后端,这将被dynamic地添加和删除(没有我的参与)在内部networking的任何地方。 我可以假设每个http后端知道它的IP地址并知道haproxy的IP地址。 我可以假设我可以向每个http后端添加一点代码,以便在haproxy注册时,只要它启动并注销,就会在注销之前注销。 我有haproxy在80端口收听: frontend main *:80 另外我公开一个统计sockets: stats socket 0.0.0.0:8080 我的设置工作,特别是我可以使用socat readline TCP4:<haproxyIP>:8080连接到统计套接字socat readline TCP4:<haproxyIP>:8080 让我们假设在10.0.0.1:4040和10.0.0.2:4040上有两个http后端服务,并且haproxy可以到达两个地址。 我需要通过统计套接字发送什么stat套接字命令,以便对<haproxyIP>:8080/backend1/status任何请求路由到10.0.0.1:4040/status并且对<haproxyIP>:8080/backend2/version路由到10.0.0.2:4040/version ? 一般情况下:如何将[GET|POST] <haproxyIP>:<haproxyPort>/<backendID>/<remainingPath> http请求dynamic代理为[GET|POST] <backendIP>:<backendPort>/<remainingPath>我知道从backendID -> backendIP, backendPort的地图。
我们目前使用HAproxy来平衡我们的映像和应用服务器,但是我们还没有设置故障转移。 我们现在只需要在一个图像框上使用haproxy,然后将请求路由到需要的地方。 现在,下周我们正在转向新的可乐(14台服务器,现在是停止租赁硬件的时候了)。 我们有5个前端应用程序服务器。 我有可能把haproxy放在其中的两个盒子上,有一个用于故障转移的共享ip,只需将apache移动到端口9000或其他任意端口? 在接下来的几个月中,我们已经在为colo预算了,所以如果我们能够避免的话,我想避免为JUST HAproxy设置两个专用的框。 5个应用程序服务器包含apache和sphinx。 应用程序服务器与我们的mysql服务器和我们日益增长的cassandra集群进行通信。