tbwshc

          配置Apache+Tomcat集群

          操作系統:Debian6.0 (192.168.225.129 虛擬機1臺)

          軟件版本:Apache-2.2.16, Tomcat-6.0.35

          1.安裝軟件

              >apt-get install update

              *安裝Apache

              >apt-get install apache2

              *安裝Tomcat

              >wget http://apache.etoak.com/tomcat/tomcat-6/v6.0.35/bin/apache-tomcat-6.0.35.tar.gz

              >tar zxvf apache-tomcat-6.0.35.tar.gz

              >mv apache-tomcat-6.0.35 /user/local/tomcat

              >cp /usr/local/tomcat  /usr/local/tomcat2

              *安裝mod_jk

              >apt-get install libapache2-mod-jk

          2.配置2個Tomcat

              現在/usr/local目錄中已經有2個tomcat目錄了,需要更改tomcat2的端口,防止端口沖突。

              >nano /usr/local/tomcat/conf/server.xml

              有3處的默認端口需要更改:

              1.<Server port="8004" shutdown="SHUTDOWN"> 我更改為8003

              2.<Connector port="8080" protocol="HTTP/1.1" 
                         connectionTimeout="20000" 
                         redirectPort="8443" />

                  更改為7080

              3.<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

                  更改為7009,其中redirectPort 8443不需要更改

              o.另外還需要在<Engine>配置中加入<Clustber>配置

           

          Java代碼 復制代碼 收藏代碼
          1. <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"  
          2.     channelSendOptions="8">   
          3.     <Manager className="org.apache.catalina.ha.session.DeltaManager" expireSessionsOnShutdown="false"    
          4.         notifyListenersOnReplication="true"/>      
          5.     <Channel className="org.apache.catalina.tribes.group.GroupChannel">     
          6.         <Membership className="org.apache.catalina.tribes.membership.McastService"    
          7.             address="228.0.0.4"    
          8.             port="45564"    
          9.             frequency="500"    
          10.             dropTime="3000"/>     
          11.         <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"    
          12.             address="auto"    
          13.             port="4001"    
          14.             selectorTimeout="5000"    
          15.             maxThreads="6"/>     
          16.         <!-- timeout="60000"-->     
          17.         <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">     
          18.             <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>     
          19.         </Sender>     
          20.         <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>     
          21.         <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>     
          22.         <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>     
          23.     </Channel>    
          24.     <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=""/>     
          25.     <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>      
          26.     <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"    
          27.         tempDir="/tmp/war-temp/"    
          28.         deployDir="/tmp/war-deploy/"    
          29.         watchDir="/tmp/war-listen/"    
          30.         watchEnabled="false"/>    
          31.     <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>     
          32.     <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>       
          33. </Cluster>  

               x.最后2個tomcat都需要改變<Engine的 jvmRoute屬性分別為tomcat1和tomcat2,以對應之后worker.properties中的名字。


          3.配置Apache以jk方式和tomcat集群

             安裝完成后apache的主目錄為/etc/apache2,安裝完mod-jk之后,mods-enabled里面會多一個jk.load

             創建文件   /etc/apache2/mods-enabled/jk.conf

              >nano /etc/apache2/mods-enabled/jk.conf

                 JkWorkersFile /etc/apache2/workers.properties
                 JkShmFile     /var/log/apache2/mod_jk.shm
                 JkLogFile     /var/log/apache2/mod_jk.log
                 JkLogLevel    info

             創建文件  /etc/apache2/workers.properties

              >nano /etc/apache2/workers.properties

                 worker.list=controller1

                 worker.tomcat1.port=8009
                 worker.tomcat1.host=localhost
                 worker.tomcat1.type=ajp13
                 worker.tomcat1.lbfactor=1

                 worker.tomcat2.port=7009
                 worker.tomcat2.host=localhost
                 worker.tomcat2.type=ajp13
                 worker.tomcat2.lbfactor=1

                 worker.controller1.type=lb
                 worker.controller1.sticky_session=1   #可選項0,1
                 worker.controller1.balance_workers=tomcat1,tomcat2

              更改/etc/apache2/sites-enabled/000-default文件

                在</VirtualHost>之前添加

                 JkMount /* controller1

                 (controller1對應workers.properties中的名字)

          配置完成之后先后啟動tomcat和apache。

          測試:

          2個tomcat部署相同的應用:即首頁index.jsp顯示各自tomcat名稱tomcat1和tomcat2

          通過80端口訪問應用,刷新幾次,tomcat1和tomcat2輪流顯示。

          posted on 2012-07-13 13:53 chen11-1 閱讀(1458) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          My Links

          Blog Stats

          常用鏈接

          留言簿(4)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          新聞檔案

          tbw淘寶商城-首頁

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 乌兰察布市| 合川市| 酒泉市| 平塘县| 延津县| 丰城市| 松桃| 营山县| 德令哈市| 渝中区| 澎湖县| 江陵县| 西昌市| 曲水县| 固原市| 永昌县| 冕宁县| 宾阳县| 金塔县| 海南省| 岳池县| 钟祥市| 门头沟区| 河北省| 重庆市| 慈溪市| 孟村| 休宁县| 台南县| 三门县| 五河县| 新龙县| 读书| 滕州市| 天峻县| 阿拉善右旗| 申扎县| 精河县| 泗洪县| 磴口县| 元氏县|