Application Servers & Java
[3편] Tomcat 설치 및 설정 실무 가이드 – 디렉터리 구조, 커넥터 설정, WAR 배포
midworker
2025. 5. 15. 22:38
반응형
[3편] Tomcat 설치 및 설정 실무 가이드 – 디렉터리 구조, 커넥터 설정, WAR 배포
이전 2편에서는 Apache 설치 및 구성(MPM, mod_jk, 가상호스트 등)을 다뤘습니다.
이번 글에서는 Tomcat의 설치 방식, 설정 구조, WAR 배포 및 연동 방식을 실무 중심으로 정리합니다.
✅ Tomcat 설치 개요
Tomcat은 설치형이 아닌 압축 해제 방식으로 제공되며, 설치 시 다음과 같은 디렉터리 구조를 가집니다.
🔹 디렉터리 구조
디렉터리 | 설명 |
---|---|
bin/ |
실행 스크립트 (startup.sh , shutdown.sh ) |
conf/ |
주요 설정 파일 (server.xml , web.xml , context.xml ) |
logs/ |
로그 파일 저장 디렉터리 |
webapps/ |
WAR 파일 배포 디렉터리 |
lib/ |
Tomcat 및 JSP/Servlet 동작에 필요한 라이브러리 |
work/ |
컴파일된 JSP, 서블릿 등 캐시 디렉터리 |
temp/ |
임시 파일 |
✅ 환경 변수 설정
Tomcat은 JAVA 환경이 필수이며, JAVA_HOME
설정이 필요합니다.
export JAVA_HOME=/usr/java/jdk1.8.0_251
export CATALINA_HOME=/opt/tomcat
export PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH
✅ setenv.sh 설정 (JVM 옵션 등)
$CATALINA_HOME/bin/setenv.sh
파일 생성 후 다음과 같이 설정:
JAVA_OPTS="-Xms1024m -Xmx2048m -XX:+UseG1GC -Dfile.encoding=UTF-8"
JVM 튜닝 및 로그 출력 인코딩 설정에 필수
✅ server.xml 핵심 설정 정리
🔹 AJP 커넥터 설정 (Apache 연동용)
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
🔹 HTTP 커넥터 설정
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
🔹 Context 설정 (개별 WAR 설정 제어 가능)
<Context path="/app" docBase="app" reloadable="true" />
✅ WAR 배포 방식
Tomcat은 기본적으로 $CATALINA_HOME/webapps/
경로에 WAR 파일을 복사하면 자동 배포됩니다.
🔹 배포 시 주의사항
항목 | 설명 |
---|---|
파일명 | ROOT.war 로 배포하면 루트 경로(/ )에서 실행됨 |
경로 | webapps 하위에 자동 해제 |
로그 확인 | catalina.out , localhost.log 등 확인 필수 |
✅ 로그 파일 확인
기본 경로: $CATALINA_HOME/logs/
파일명 | 설명 |
---|---|
catalina.out |
Tomcat stdout/stderr 로그 |
localhost.log |
각 요청에 대한 로그 |
manager.log |
Manager App 관련 로그 |
✅ Tomcat 서비스 등록 (리눅스 시스템 서비스로 실행)
1. 서비스 스크립트 생성
vi /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/java/jdk1.8.0_251
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
Restart=on-failure
[Install]
WantedBy=multi-user.target
2. 서비스 등록 및 기동
systemctl daemon-reexec
systemctl enable tomcat
systemctl start tomcat
✅ 마무리
Tomcat은 압축 해제만으로도 빠르게 설치 가능하며, server.xml
설정과 setenv.sh
JVM 튜닝이 운영의 핵심입니다.
다음 4편에서는 Apache-Tomcat 연동 후 XA 설정 및 장애 복구 방안(ORA-02049 등) 을 실무 사례 중심으로 다룹니다.
반응형