天天看點

apace與tomcat的負載均衡及叢集配置(proxy)

apace與tomcat的負載均衡及叢集配置步驟:

一:linux下安裝apache

1: 下載下傳httpd-2.2.11.tar.gz  并解壓: tar zxvf httpd-2.2.11.tar.gz

2: 進入解壓後的目錄。

3: ./configure --prefix=/opt/apachenew --enable-mods-shared=proxy

4: make 

5: make install

6:将httpd.conf的ServerName注釋去掉,并改成192.168.0.104:80。不然apache啟動的時候會報一個警告。

7: ./bin/apachectl start //stop restart

檢視編譯進apache的子產品: httpd -l

二:linux下安裝tomcat

下載下傳apache-tomcat-6.0.20.tar.gz  并解壓即可: tar zxvf apache-tomcat-6.0.20.tar.gz

三:配置tomcat

1: 修改關閉端口、http端口、AJP端口,防止端口沖突。

2:<!-- You should set jvmRoute to support load-balancing via AJP ie :-->

   <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat1">        

   <!-- <Engine name="Catalina" defaultHost="localhost"> -->

3:将<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>的注釋去掉

四:配置apache

在httpd.conf最後加入:

# Proxypass Config

<Location /server-status>

        SetHandler server-status

        Order Deny,Allow

        Deny from all

        Allow from all

</Location>

<Location /balancer-manager>

        SetHandler balancer-manager

        Order Deny,Allow

        Deny from all

        Allow from all

</Location>

ProxyRequests Off

ProxyPass /balancer-manager !

ProxyPass / balancer://tomcatBalance/ stickysession=JSESSIONID nofailover=On

<Proxy balancer://tomcatBalance>

        BalancerMember http://192.168.0.104:8080 loadfactor=1 route=tomcat1

        BalancerMember http://192.168.0.104:8090 loadfactor=2 route=tomcat2

</Proxy>

到這個步驟就做到了負載均衡,并且支援會話保持,請求會被tomcat1,tomcat2按照不同的權重分流處理。

-----------------------------------------------------------------------------------------

session複制:

把nofailover=On改成nofailover=Off

如果需要session複制,還需要配置session複制。

在web.xml加上<distributable/>表明可應用分流處理,能進行Session的複制(注:distributable元素直接出現在discription元素之後,并且不包含子元素或資料)