톰캣을 구성하는 디렉토리 구조는 다음과 같다.
디렉토리명 |
설명 |
톰캣엔진 사용 |
인스턴스 사용 |
bin |
톰캣 실행시 사용하는 스크립트 디렉토리 |
○ |
|
conf |
웹 어플리케이션에 필요한 설정 파일 디렉토리 |
|
○ |
lib |
톰캣에서 사용하는 라이브러리 디렉토리 |
○ |
|
logs |
로그 디렉토리 |
|
○ |
temp |
임시 파일 디렉토리 |
|
○ |
webapps |
웹 어플리케이션 배포 디렉토리 기본으로 docs, examples, host-manager, manager가 존재한다. |
|
○ |
work |
JSP가 Servlet 컴파일되는 디렉토리 |
|
○ |
[톰캣엔진에서 사용]으로 표시된 디렉토리는 톰캣엔진이 실제 구동될 때 사용하는 디렉토리를 의미하며,
[인스턴스에서 사용]으로 표시된 디렉토리는 웹 어플리케이션에서 웹서비스를 위해 사용하는 디렉토리들을 의미한다. 이 디렉토리들은 톰캣 환경변수 CATALINA_BASE와도 관련이 있다.
다음은 톰캣 환경변수 정보이다.
환경변수명 |
설명 |
CATALINA_BASE |
톰캣 구동시 띄워지게 되는 웹서비스 인스턴스의 베이스 디렉토리 conf, logs, temp, webapps, work 디렉토리를 포함하는 홈 디렉토리를 의미한다. |
CATALINA_HOME |
톰캣 설치 홈 디렉토리 |
CATALINA_TMPDIR |
톰캣 인스턴스의 임시 디렉토리 |
JRE_HOME |
자바 런타임 디렉토리 |
CLASSPATH |
클래스패스 경로 |
환경변수에서는 CATALINA_BASE의 의미에 대해 살펴보자.
CATALINA_BASE는 인스턴스 단위에 대한 베이스 디렉토리이다.
톰캣 설치시 CATALINA_BASE에 관한 디렉토리들이 톰캣 홈 디렉토리 하위에 포함되기 때문에, CATALINA_BASE와 CATALINA_HOME의 경로가 같은 것이다.
bin 디렉토리의 version.sh 스크립트를 실행하면 환경변수 정보를 확인할 수 있다.
[root@localhost bin]# ./version.sh
Using CATALINA_BASE: /root/apps/tomcat
Using CATALINA_HOME: /root/apps/tomcat
Using CATALINA_TMPDIR: /root/apps/tomcat/temp
Using JRE_HOME: /usr/java/jdk1.8.0_91
Using CLASSPATH: /root/apps/tomcat/bin/bootstrap.jar:/root/apps/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/7.0.69
Server built: Apr 11 2016 07:57:09 UTC
Server number: 7.0.69.0
OS Name: Linux
OS Version: 3.10.0-123.el7.x86_64
Architecture: amd64
JVM Version: 1.8.0_91-b14
JVM Vendor: Oracle Corporation
만약, 톰캣 인스턴스를 2개 운영해야 한다면...
~/deploy/inst1
ㄴ conf
ㄴ logs
ㄴ temp
ㄴ webapps
ㄴ work
~/deploy/inst2
ㄴ conf
ㄴ logs
ㄴ temp
ㄴ webapps
ㄴ work
위와 같이 나누고, conf 디렉토리의 server.xml 설정에서 Server 포트, HTTP 포트, AJP 포트, REDIRECT 포트를 다르게 설정해준다. 그리고 구동 스크립트를 2개로 나누어 CATALINA_BASE를 따로 설정하여 띄우면 된다.
[startup-1.sh]
#! /bin/sh
#! usr/bin/env bash
export CATALINA_BASE=~/deploy/inst1
export CATALINA_OPTS="-Denv.servername=inst1"
./startup.sh
[startup-2.sh]
#! /bin/sh
#! usr/bin/env bash
export CATALINA_BASE=~/deploy/inst2
export CATALINA_OPTS="-Denv.servername=inst2"
./startup.sh
'서버 > 톰캣' 카테고리의 다른 글
[톰캣] server.xml 설정 (1) | 2016.07.01 |
---|---|
[톰캣] conf 디렉토리 설정파일 (1) | 2016.06.24 |
[톰캣] 톰캣7 설치 (0) | 2016.05.30 |
[톰캣] setenv.sh 활용하기 (0) | 2016.05.23 |
[톰캣] 버전별 Servlet, JSP, JAVA 지원 스펙 (0) | 2016.04.12 |