我在Softlayer上有两个虚拟服务器,都运行HAProxy。 我正在尝试与keepalivedbuild立故障转移。 每个服务器都有一个私有IP和公共IP,并且它们在同一个VLAN中。 我已经为keepalived尝试了许多不同的设置,但是在master上停止HAProxy,它不会故障转移到BACKUP。 我读了多播不被支持,所以我已经改变了我的设置为单播。 现在,在备份/主设备上的设置基本上是这样的: vrrp_script chk_haproxy { script "pidof haproxy" interval 2 } vrrp_instance VI_1 { debug 2 interface eth1 state MASTER virtual_router_id 51 priority 101 unicast_src_ip 1.2.3.4 # My IP unicast_peer { 5.6.7.8 # peer IP } track_script { chk_haproxy } } 其中MYIP是conf文件所在服务器的公网IP地址,PEERIP是对端的公网IP地址。 仍然不工作。 在主站上停止HAProxy,它不会故障切换到备份。 我想知道是否有人在Softlayer上设置了HAProxy故障转移,以及他们如何去完成它?
首先,我是haproxy和nginx的新手。 我想知道是否有可能使用nginx或haproxy来接收所有ssh请求,并根据域名转发给两个不同的ssh deamons。 如果可能的话,哪一个是最好的工具,我将如何configuration该工具来做到这一点?
目前我使用nginx作为通过https的反向代理,所有代理本身都是通过https。 SSL终止发生在Nginx上,而且由于stream量已经超过了https,所以在继续之前,它会再次被encryption。 我的第一个直觉是,我面向公众的服务器必须使用签名证书,并使用nginx的SSL直通。 原来nginx不允许你这样做。 所以我开始看haproxy,因为它可以做SSL直通。 经过大量的阅读,我开始想知道这是否真的很重要。 我可以在自己的networking中使用自签名authentication。 是否有理由在我的服务器上使用nginx / haproxy上的相同证书? 是否有任何理由不使用自签名证书进行内部通信?
我正在使用haproxy版本1.6.2 我已经启用http2使用下面的configuration,我需要使用“模式tcp”。 但是,一旦我从“模式http”切换到“模式tcp”我不能使用acl path_beg来 frontend websocks mode tcp bind *:443 ssl crt /etc/certs/domain.pem alpn h2,http/1.1 ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH; no-sslv3 timeout client 1h acl is_api path_beg /api acl is_xmpp path_beg /chat use_backend api_backend if is_api use_backend xmpp_backend if is_xmpp use_backend fe_public_tcp if { ssl_fc_alpn -i h2 } default_backend fe_public fe_public server fe1 localhost:444 weight 1 maxconn 4096 […]
我一直在关注如何使用haproxy安装varnish haproxy博客的教程。 ( 链接 )这部分的haproxyconfiguration设置有问题: frontend ft_web_static bind 10.0.1.3:80 monitor-uri /haproxycheck # Tells Varnish to stop asking for static content when servers are dead # Varnish would deliver staled content monitor fail if nbsrv(bk_appsrv_static) eq 0 default_backend bk_appsrv_static 当我重新启动haproxy,它给了我这个错误: [root@ch]# service haproxy restart [ALERT] 348/004936 (28582) : parsing [/etc/haproxy/haproxy.cfg:282] : error detected while parsing a […]
我正在一个服务器上托pipe几个网页。 对于路由,我使用haproxy。 现在,一个有趣的用户想要一个变音域“supportbär.de”。 #haproxy.cfg frontend http-in .. acl is_supportbaer hdr_dom(host) -i supportbär use_backend supportbaer_wp if is_supportbaer 通常,这是有效的。 但在这种情况下,不使用后端“supportbaer_wp”。 可以haproy处理变音域? 怎么样?
我想默认情况下将我的网站的根目录redirect到一个子网站。 喜欢 http://www.domain.com/ —> http://www.domain.com/subsite 我已经尝试过,但是这匹配所有的URL: acl is_root path_beg -i / acl is_domain hdr(host) -i www.domain.com redirect code 301 location http://www.domain.com/subsite if is_domain is_root
我目前有一个HaProxy LB解决scheme,一切工作正常,但是我们有一个很less的客户谁不能通过HTTPS(SSL)到我们的网站的问题,他们可以浏览我们的网站在Http,但只要他们点击他们被带到我们的主页的一个绝对的HTTPS链接。 想知道是否有人可以看看我们的configuration下面,看看是否有什么错误。 我相信我们在HaProxy 1.2.17上 全球 日志127.0.0.1 local0 日志127.0.0.1 local1通知 #log日志主机local0信息 maxconn 6144 #debugging #安静 用户haproxy 组haproxy 默认 日志全球 模式http 选项httplog 选项dontlognull 重试3 再调度 maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 统计信息validation#pipe理员密码 统计uri / monitor 听webfarm #bind:80,:443 绑定:443 模式tcp 平衡来源 #cookie SERVERID插入间接 #option httpclose #option forwardfor #option httpchk HEAD /check.cfm HTTP / 1.0 服务器webA […]
略有关于“ 其他选项”,以平衡在haproxy源“ ,我想知道什么端口当前指向哪里。 为了确认,我使用haproxy将一次只能连接一个连接的客户端分配到不同的后端服务器上。 假设协议是ssh。 我使用一个粘贴表来保持客户端到一个后端服务器,直到该服务器宕机。 找出当前状态的最好方法是什么? 我知道我可以为每个端口创build一个前端,然后将它们全部指向相同的后端。 然后logging前端的名称,但我不禁想要一个整洁的前端与一系列的端口,然后dst_portlogging。
我正在寻找一个有用的方法来debugginghaproxy错误.. 我发现“日志分离错误”选项(很好的function,因为我们有每秒数千个请求,不希望将它们全部logging),但是在我们的情况下,日志消息不是很有帮助,因为请求丢失。 我用套接字命令“显示错误”,这是由脚本定期调用它,但与此我只得到最后几个错误,如果有一个周期之间有很多错误,我正在寻找的错误可能会丢失。 那么有没有一种方法可以在发生错误时获得完整的日志(如“show errors”套接字命令)? 非常感谢你的回答。