Apache2 带有主动/被动设置的Apache HTTPD mod_proxy_平衡器

Apache2 带有主动/被动设置的Apache HTTPD mod_proxy_平衡器,apache2,load-balancing,mod-proxy,Apache2,Load Balancing,Mod Proxy,我最近决定使用ApacheHTTPD(在CentOS-RPM版本HTTPD-2.2.3-45.el5.CentOS上)和mod_proxy和mod_proxy_平衡器来创建一个面向JBoss应用服务器的软件负载平衡器。当前的设置(见下面的配置)似乎工作正常,两台服务器都在积极处理入站请求 但是,我想设置一个主动-被动集群,其中一台服务器主动处理请求,一旦出现故障,它将故障转移到被动节点,使其成为主动节点。是否可以使用mod_proxy_平衡器 我当前与此相关的httpd.conf段如下所示 &l

我最近决定使用ApacheHTTPD(在CentOS-RPM版本HTTPD-2.2.3-45.el5.CentOS上)和mod_proxy和mod_proxy_平衡器来创建一个面向JBoss应用服务器的软件负载平衡器。当前的设置(见下面的配置)似乎工作正常,两台服务器都在积极处理入站请求

但是,我想设置一个主动-被动集群,其中一台服务器主动处理请求,一旦出现故障,它将故障转移到被动节点,使其成为主动节点。是否可以使用mod_proxy_平衡器

我当前与此相关的httpd.conf段如下所示

<Proxy balancer://mycluster>
       Order deny,allow
       Allow from all

       BalancerMember http://192.168.2.1:8080 route=node1
       BalancerMember http://192.168.2.2:8080 route=node2
</Proxy>


ProxyPass / balancer://mycluster/ lbmethod=byrequests stickysession=JSESSIONID|jsessionid

ProxyPreserveHost On
ProxyPassReverse /  http://192.168.2.1:8080/
ProxyPassReverse /  http://192.168.2.2:8080/

命令拒绝,允许
通融
平衡员http://192.168.2.1:8080 路由=节点1
平衡员http://192.168.2.2:8080 路由=节点2
ProxyPass/balancer://mycluster/ lbmethod=byrequests stickysession=JSSessionId | JSSessionId
代理主机
ProxyPassReverse/http://192.168.2.1:8080/
ProxyPassReverse/http://192.168.2.2:8080/

提前感谢。

我会用相同的配置设置被动节点,可能在启动时与rsync同步,或者glusterfs等

使用两个相同的平衡器,都是活动的,我会在主节点上设置一个共享IP,一个别名。 所以,如果主节点出现故障,辅助节点将立即启动共享IP


进行ip故障切换的有用项目是linux ha,pacemaker将其中一个Balancer成员用作热备用

<Proxy balancer://mycluster>
    BalancerMember http://192.168.2.1:8080 retry=30 
    # the hot standby
    BalancerMember http://192.168.2.2:8080 status=+H retry=0
</Proxy>

平衡员http://192.168.2.1:8080 重试=30
#热备用
平衡员http://192.168.2.2:8080 状态=+H重试=0

现在node1为所有请求提供服务,node2等待node1失败并接管。一旦node1启动,所有请求将再次由node1提供服务。Apache每30秒(重试=30)检查一次node1是否启动或仍然关闭,然后切换回node1。

非常感谢Praveen。这就是我要找的