场景是我们有两台服务器在不同的networking。 我们希望从客户端到前端以及从前端到后端进行SSL通信! 前端能够获得sslstream量并终止ssl,之后在后端ssl通信中不会发生错误,如下 “ 服务器节点/ web02是DOWN,原因:Layer6无效响应,信息:”SSL握手失败“,检查持续时间:546ms” 这是我的hapoxyconfiguration文件 global log 127.0.0.1 local1 debug maxconn 4000 daemon uid 99 gid 99 stats socket /tmp/haproxy.stats level admin defaults mode http log global option forwardfor option http-server-close timeout server 5s timeout connect 5s timeout client 5s frontend www-https bind <Ip-address>:443 ssl crt /home/user/SSL/domain-name.in.pem reqadd X-Forwarded-Proto:\ https default_backend nodes backend […]
我有两个带有CARP设置的pfSense防火墙,两个WAN和HAProxy指向我的LAN中的HTTP服务器。 scheme: **pfSense server #1** ISP#1 – Public IP1.1 – pfSense#1 with HAProxy – HTTP ISP#2 – Public IP1.2 – **ISP#2 Local IP1** – pfSense#1 with HAProxy – HTTP LAN vIP – pfSense as Gateway (Master) **pfSense server #2** ISP#1 – Public IP2.1 – pfSense#2 with HAProxy – HTTP ISP#2 – Public IP2.2 – **ISP#2 […]
我一直在使用ansible来pipe理几台服务器的haproxyconfiguration,我真的很喜欢这个工具。 它使部署新服务器和保持configuration同步轻而易举。 我有一个担心,因为我的HAproxyconfiguration是如此简单,我没有得到什么好处的抽象值到YML。 我的时间会更好吗只需手工创build我的HAProxyconfiguration文件并使用Ansible将文件复制到目标服务器而不是使用模板语言和variables? 我知道,如果我结束了多个独特的haproxy部署,我将从使用模板和variables中获得更多的价值,然而在过去的3年中,我们并不需要部署haproxy的任何新实例。
在Amazon AWS VPC中,我有2个Keepalived v1.2.13节点。 我试图实现这种情况下,假设Node1是MASTER: 如果我停止HAProxy或停止keepalived或停止节点,故障切换到Node2。 如果我在Node1上启动HAProxy备份或启动Keepalived或启动节点,请不要故障切换到Node1(不会震荡)。 通过以下configuration,只有通过停止keepalived或停止节点,故障转移是否工作。 由于track_script的优先级变化似乎不影响MASTER选举。 节点1 vrrp_script chk_haproxy { # Requires keepalived-1.1.13 script "killall -0 haproxy" # cheaper than pidof interval 2 # check every 2 seconds fall 2 weight 2 # add 2 points of prio if OK } vrrp_instance VI_1 { advert_int 2 state BACKUP nopreempt interface eth0 virtual_router_id […]
我在Redis遇到问题。 我有3台服务器。 每个服务器有10个Redise在不同的端口上工作。 另外,每个服务器都有一个Sentinel实例。 另外,还有5个应用程序服务器。 每个服务器都有HaProxy,它从池中检查哪个Redis服务器是主服务器,并将stream量redirect到他。 所以,无论哪个服务器是Redis主机,应用程序总是使用127.0.0.1:port。 我有误报的麻烦。 这是我的日志: [37338] 29 Apr 07:51:36.813 # Connection with slave ip1:6388 lost. [37338] 29 Apr 07:51:37.399 # Connection with slave ip3:6388 lost. [7244] 29 Apr 07:51:38.809 * DB saved on disk [7244] 29 Apr 07:51:38.814 * RDB: 35 MB of memory used by copy-on-write [37338] 29 Apr 07:51:38.918 […]
我目前在Rackspace上有4个Web应用程序服务器(在应用程序上运行),位于Load Balancer后面(在Rackspace上)。 在负载均衡器前面。 应用程序本身适度使用caching,所以我知道这可以在很大程度上得到改善。 我目前的架构: RS Load Balancer (SSL Termination) -> 4 Web Servers (Apache) -> MySql 这个设置在我面前已经到位了,现在我有机会清理一些东西,所以我想到了这一点: Varnish -> HAProxy (reverse proxy, LB, SSL Termination) -> 4 Web Servers (nginx) -> Redis / MySql 要么 Varnish -> nginx (reverse proxy, LB, SSL Termination) -> 4 Web Servers (nginx) -> Redis / MySql 或者,在代理之后并在每个Web服务器之前都有更好的清漆: nginx […]
我想在同一个IP端口上使用多个OpenVPN docker实例,所以我正在寻找一种路由ssl vpnstream量的方法,像haproxy这样做可以做这个工作吗? 也许通过嗅探SSL证书(这将不同的每个openvpn后端实例),或子域(parsing为相同的IP)? 谢谢!
在HAProxy我试图跟踪连接到一个特定的页面与随机键值。 我使用的configuration是: stick-table type string size 200 store gpc0 acl test_page url_reg -i test.php tcp-request inspect-delay 30s tcp-request content track-sc1 rand if test_page 实际上将条目添加到粘贴表中: # table: varnish_cluster-01, type: string, size:200, used:10 0x2f05d54: key=1191905894 use=0 exp=0 gpc0=0 0x2ec4524: key=1588367676 use=0 exp=0 gpc0=0 0x34e3ab4: key=1768543047 use=0 exp=0 gpc0=0 0x3b3cd94: key=1938692325 use=0 exp=0 gpc0=0 0x380bcf4: key=2016928663 use=0 exp=0 […]
我在haproxy.cfg文件中有这样的configuration: acl is_api url_beg -i /api acl is_frontend hdr(host) -i subdomain.mydomain.com use_backend api if is_api use_backend nginx-frontend if is_frontend 我的目标: 打到subdomain.mydomain.com将服务文件使用nginx除非path以/api ( subdomain.mydomain.com/api/* )开头 – 那么它应该使用我的api后端。 现在,使用当前的configuration,当我重新启动haproxy服务时,有两种情况: 我去subdomain.mydomain.com – 它服务于nginx-frontend – 很好。 然后我去subdomain.mydomain.com/api – 404(使用nginx )。 我去subdomain.mydomain.com/api它服务的api – 伟大的。 然后我去subdomain.mydomain.com 404(使用api后端)。 因此,根据我在任一页面上的第一次访问的顺序,所有对我的子域的请求都被分配到后端… 我是一个总新手,我很抱歉,如果这是一个愚蠢的问题。 任何帮助?
有没有办法在HAProxy做URL掩码? 我想有一个URL指向我的负载平衡器,即www.example.com ,redirect到另一个URL我有另一个应用程序。 不过,我希望用户的浏览器仍然显示原始url( www.example.com )。 我将如何去做这件事?