질문&답변
클라우드/리눅스에 관한 질문과 답변을 주고 받는 곳입니다.
리눅스 분류

좀 돠주십쇼. apache, tomcat 활용 로드 벨런스 관련 질문 입니다.

작성자 정보

  • jive 작성
  • 작성일

컨텐츠 정보

본문

안녕하세요. 아래 게시물을 참고해 로드 벨런싱 및 세션 클러스트링을 해봤습니다.
하나의 머신에 톰캣을 2개 설치해서 기동시키는 방식 입니다.
www-128.ibm.com/developerworks/kr/library/opendw/20061017/#main

완료 후 http://IpAddress 를 입력하니 톰캣 페이지가 표시는 됩니다만,
게시물 내용과 같이 tomcat, tomcat1 둘중에 하나를 stop 시키면
에러 메세지(Service Temporarily Unavailable)가 나오며 톰캣 페이지가 실행 되지 않습니다.어느 부분이 잘못 되었는지 조언 부탁 드립니다.

설치 버전은 httpd-2.2.4, apache-tomcat-5.5.20,
tomcat-connectors-1.2.23, jdk-6u1-linux-i586 입니다.

설치 과정

1. VMWare 가상 머신에 Linux (RedHat 9.0) 설치
2. apache, tomcat, jdk, mod_jk 연동 후 톰캣 페이지 확인, 이상 없음
3. 로드벨런싱을 위한 tomcat1 바이너리 추가
4. vi /usr/local/apache/conf/httpd.conf 수정

...
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log

JkLogLevel debug
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
JkRequestLogFormat "%w %V %T"

JkMount /jsp-examples/* loadbalancer
JkMount /servlets-examples/* loadbalancer
JkMount /*.jsp loadbalancer
...

5. vi /usr/local/apache/conf/workers.properties 수정

workers.tomcat_home=/usr/local/tomcat
workers.java_home=/usr/local/j2sdk
ps=/
worker.list=tomcat, tomcat1, loadbalancer

worker.tomcat.port=11009
worker.tomcat.host=localhost
worker.tomcat.type=ajp13
worker.tomcat.lbfactor=100

worker.tomcat1.port=12009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=200

worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=tomcat,tomcat1

6. vi /usr/local/tomcat/conf/server.xml 수정
<Server port="11005" shutdown="SHUTDOWN">
<Service name="Catalina">
<Connector port="11080"/>
<Connector port="11009" protocol="AJP/1.3"/>

<Engine jvmRoute="tomcat" name="Catalina"
defaultHost="localhost">
<Host name="localhost" appBase="webapps"/>
</Engine>
</Service>
</Server>

7. vi /usr/local/tomcat1/conf/server.xml 수정
<Server port="12005" shutdown="SHUTDOWN">
<Service name="Catalina">
<Connector port="12080"/>
<Connector port="12009" protocol="AJP/1.3"/>

<Engine jvmRoute="tomcat1" name="Catalina"
defaultHost="localhost">
<Host name="localhost" appBase="webapps"/>
</Engine>
</Service>
</Server>

8. vi /usr/local/tomcat/conf/web.xml 수정
<distributable/> 추가

9. vi /usr/local/tomcat1/conf/web.xml 수정
<distributable/> 추가

10. vi /etc/profile
JAVA_HOME=/usr/local/j2sdk
CATALINA_HOME=/usr/local/tomcat
APACHE_HOME=/usr/local/apache
export JAVA_HOME CATALINA_HOME APACHE_HOME

PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$APACHE_HOME/bin:$PATH
export PATH=$PATH:/usr/local/bin:/usr/local/tomcat/bin
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$CATALINA_HOME
/lib/servlet-api.jar:$CATALINA_HOME/lib/jsp-api.jar

여기까지 완료 후 웹 어플리케이션 작성을 통한 테스트를 위해 session.jsp
페이지를 생성 했습니다.
그리고 apache, tomcat, tomcat1을 실행 시켰습니다.

/usr/local/apache/bin/apachectl start

/usr/local/tomcat/bin/catalina.sh start
-tomcat 실행 시 출력 메세지-
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/j2sdk

/usr/local/tomcat1/bin/catalina.sh start
-tomcat1 실행 시 출력 메세지-
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME: /usr/local/j2sdk

위에 말씀 드렸듯이 톰캣 페이지는 정상적으로 실행 되나 tomcat, tomcat1
둘중에 하나만 stop시켜도 에러 메세지가 나옵니다.

추가로 DocumentRoot는 /usr/local/tomcat/webapps/ROOT 입니다.
조언 부탁드립니다.

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,810 개
  • 현재 접속자 :  104 명