2010. 5. 28. 11:12ㆍWas/Tomcat
Tomcat을 1개만 설치하고 사용자에 따라서 톰캣을 여러개 띄워야 할 경우 사용자마다 Tomcat을 깔아주지 않고
해결할수 있는 방법입니다.
1. 톰캣 설치시에 CATALINA_HOME이라는 환경 변수를 잡아주도록 되어있습니다.
이 값은 Tomcat이 설치된 디렉토리를 지정해줍니다. 이 값은 톰캣 서버의 실행파일이나 클래스 패스등을 잡을때
사용하는 실행 경로라고 보시면 될것 같습니다.
이것 말도 톰캣을 여러개 띄우기 위해서는 CATALINA_BASE라는 환경변수를 잡아주면 됩니다.
CATALINA_BASE는 개별 톰캣 instance들을 위한 기본 디렉토리로 볼수 있습니다.
예제를 보시면 확실해 지실것입니다.
2. 기존 톰캣의 conf, logs, webapps, work, temp디렉토리를 새로운 톰캣 인스턴스를 위해 새로운 디렉토리를
만들고 그 디렉토리에 복사를 합니다.
3. conf디렉토리의 server.xml을 수정합니다. 포트번호라던지 Host설정 및 디렉토리정보를 수정해야됩니다.
4. 새로운 톰캣 instance를 띄우기 위해서 간단한 스크립트를 작성합니다.
다음은 윈도우즈 2000에서 blog와 club을 위해 별도의 톰캣 instance를 뛰우기 위해 설정하는 예입니다.
톰캣이 D:\Tomcat 디렉토리에 설치되어 있다고 가정합니다.
1. D:\Tomcat 디렉토리에 blog와 club이라는 디렉토리를 생성합니다.
2. blog와 club디렉토리에 D:\Tomcat 디렉토리에 있는 conf, logs, webapps, work, temp를 복사합니다.
3. blog와 club의 conf디렉토리에 server.xml을 열어서 포트정보등을 다른 것들과 충돌나지 않도록 수정해줍니다.
<!-- shutdown관련 포트 -->
<Server port="8025" shutdown="SHUTDOWN" debug="0">
<!-- 아파치 웹서버와 통신을 위한 포트 -->
<Service name="Tomcat-Standalone">
<Connector className="org.apache.ajp.tomcat4.Ajp13Connector"
port="8029" minProcessors="5" maxProcessors="70"
acceptCount="10" debug="0"/>
<!-- Documnet Root -->
<Context path="" reloadable="true" docBase="D:\Tomcat\blog\webapps" />
4 . blog, club을 기동시키기 위한 bat파일을 만들어줍니다.
D:\Tomcat\blog\startup.bat파일의 예입니다.
set CATALINA_HOME=D:\Tomcat
set CATALINA_BASE=%CATALINA_HOME%\blog
%CATALINA_HOME%\bin\startup.bat
5. 각각 startup.bat파일을 실행시키면 blog, club의 톰캣 instance가 하나씩실행됩니다.
stop시키는 스크립트는 귀찮아서 안만들었습니다. 당연한 말이겠지만 blog를 종료시키도
club은 아무 영향을 받지 않습니다.
[출처] 톰캣에 서 Multiple Instance띄우기.|작성자 명랑폐인
'Was > Tomcat' 카테고리의 다른 글
[Tomcat] UTF-8 한글 처리 (1) | 2010.05.28 |
---|---|
[Tomcat] 톰켓에서 Context Reload를 빨리해보장. (0) | 2010.05.28 |
[Tomcat] Tomcat 6 JNDI 설정 (0) | 2010.05.28 |
[Tomcat] tomcat 6 admin probe (0) | 2010.05.28 |
[Tomcat] tomcat 여러개 띄워보자 AND SSL keystore넣기 (0) | 2010.05.28 |