본문 바로가기
장난감

Tomcat Cluster 설정

by umaking 2014. 3. 6.

1. Apache

http.conf

 
JkWorkersFile "conf/workers.properties"
 
JkMount /*.poc loadbalancer
JkMount /service/* loadbalancer
JkMount /admin/* loadbalancer



workers.properties

worker.list=tomcat1, tomcat2, loadbalancer

worker.tomcat1.type=ajp13
worker.tomcat1.host=localhost
worker.tomcat1.port=11009
worker.tomcat1.lbfactor=100
 
worker.tomcat2.type=ajp13
worker.tomcat2.host=localhost
worker.tomcat2.port=12009
worker.tomcat2.lbfactor=200
 
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=tomcat1,tomcat2

2. Tomcat1

conf/server.xml

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

      <!--For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation) -->
      <!--
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
      -->
	  <!--  web.xml에 <distributable/> 태그 추가 -->
	  
	  <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
                 channelSendOptions="8">

	  <Manager className="org.apache.catalina.ha.session.BackupManager"
			   expireSessionsOnShutdown="false"
			   notifyListenersOnReplication="true"
			   mapSendOptions="6"/>
	  <!--
	  <Manager className="org.apache.catalina.ha.session.DeltaManager"
			   expireSessionsOnShutdown="false"
			   notifyListenersOnReplication="true"/>
	  -->
	  <Channel className="org.apache.catalina.tribes.group.GroupChannel">
		<Membership className="org.apache.catalina.tribes.membership.McastService"
					address="228.0.0.4"
					port="45564"
					frequency="500"
					dropTime="30000"/>
		<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
				  address="auto"
				  port="5000"
				  selectorTimeout="100"
				  maxThreads="6"/>

		<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
		  <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
		</Sender>
		<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
		<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
		
		<!--
		<Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
		-->
		
	  </Channel>

	  <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
			 filter=".*\.gif|.*\.js|.*\.jpeg|.*\.jpg|.*\.png|.*\.htm|.*\.html|.*\.css|.*\.txt"/>

	  <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
	
	  <!--
	  <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
				tempDir="/tmp/war-temp/"
				deployDir="/tmp/war-deploy/"
				watchDir="/tmp/war-listen/"
				watchEnabled="false"/>
	  -->

	  <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
	  <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
	 </Cluster>

3. Tomcat 2

conf/server.xml

 

<Engine name="Catalina" defaultHost="localhost"  jvmRoute="tomcat2">

      <!--For clustering, please take a look at documentation at:
          /docs/cluster-howto.html  (simple how to)
          /docs/config/cluster.html (reference documentation) -->
      <!--
      <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
      -->
	  
	  <!--  web.xml에 <distributable/> 태그 추가 -->
	  
	  <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
                 channelSendOptions="6">

          <Manager className="org.apache.catalina.ha.session.BackupManager"
                   expireSessionsOnShutdown="false"
                   notifyListenersOnReplication="true"
                   mapSendOptions="6"/>
          <!--
          <Manager className="org.apache.catalina.ha.session.DeltaManager"
                   expireSessionsOnShutdown="false"
                   notifyListenersOnReplication="true"/>
          -->
          <Channel className="org.apache.catalina.tribes.group.GroupChannel">
            <Membership className="org.apache.catalina.tribes.membership.McastService"
                        address="228.0.0.4"
                        port="45564"
                        frequency="500"
                        dropTime="30000"/>
            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                      address="auto"
                      port="5000"
                      selectorTimeout="100"
                      maxThreads="6"/>

            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
              <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
            </Sender>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
			
			<!--
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
			-->
			
          </Channel>

          <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
                 filter=".*\.gif|.*\.js|.*\.jpeg|.*\.jpg|.*\.png|.*\.htm|.*\.html|.*\.css|.*\.txt"/>

		  <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
		
		  <!--
          <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
                    tempDir="/tmp/war-temp/"
                    deployDir="/tmp/war-deploy/"
                    watchDir="/tmp/war-listen/"
                    watchEnabled="false"/>
		  -->
		  
		  <ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
          <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
        </Cluster>

4. Tomcat 모듈 (Instance)

web.xml

 
<distributable/> 추가
</pre>

' 장난감' 카테고리의 다른 글

Windows 7 무선 AP사용하기  (0) 2014.03.11
Apache(httpd)와 Jenkins 설치  (0) 2014.03.08
tomcat manager-gui  (0) 2013.12.21
아들래미 요청으로 Wii 급하게 설치하다.  (0) 2013.10.04
미니컴퓨터  (0) 2013.09.06