본문으로 건너뛰기

Tomcat 서비스를 어떻게 재기동하나요?

💡 요약 정리

  • 재기동 전, 현재 사용 포트와 설치 경로를 먼저 확인하세요.
  • 패키지 설치: CentOS 7 이상은 systemctl, CentOS 6은 service 명령을 사용합니다.
  • 소스 설치: bin/shutdown.sh 후 bin/startup.sh 순서로 재기동합니다.
  • 에러 발생 시 [Tomcat 설치 경로]/logs/catalina.out 로그를 확인 후 재기동을 진행하세요.

1. Tomcat이란?

  • Tomcat은 Java 기반 웹 애플리케이션을 구동하는 웹서비스 프로그램으로, Servlet과 JSP를 실행하며 주로 동적 콘텐츠를 처리합니다.

2. 재기동 전, 서비스 포트 확인(netstat)

  • Tomcat 서비스가 기동 중인지와 사용 포트를 확인하려면 netstat -nlp 명령어를 실행합니다.
$ netstat -nlp

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address             Foreign Address           State       PID/Program name
tcp        0      0 0.0.0.0:8080              0.0.0.0:*                 LISTEN      4321/java
  • 참고: 위 예시는 Tomcat이 8080 포트를 사용하는 것을 보여줍니다.

3. Tomcat 설치 폴더 찾기(ps)

3.1 패키지로 설치된 경우

  • 일반적으로 /etc/tomcat 또는 /usr/share/tomcat에 Tomcat 관련 파일이 위치합니다.
  • 다음 명령으로 실행 중인 Java 프로세스를 통해 Tomcat 경로와 옵션을 확인합니다.
$ ps -ef | grep org.apache.catalina.startup.Bootstrap

root     4321     1  0 15:09 ?        00:00:12 java -Djava.util.logging.config.file=/etc/tomcat/logging.properties -Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start
  • 설명: ps 명령어로 org.apache.catalina.startup.Bootstrap 클래스를 통해 Tomcat이 실행 중임을 확인할 수 있습니다.

3.2 소스 설치된 경우

  • 사용자가 지정한 경로(예: /opt/tomcat 등)에 설치됩니다.
  • 동일한 방식으로 프로세스 정보를 확인합니다.
$ ps -ef | grep org.apache.catalina.startup.Bootstrap

root     4321     1  0 15:09 ?        00:00:12 java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start
  • 설명: Tomcat이 Java 프로세스로 실행되며, org.apache.catalina.startup.Bootstrap 클래스를 통해 구동됨을 확인할 수 있습니다.

4. Tomcat 서비스 기동/종료/재기동 명령어

  • Tomcat은 Java 프로세스로 실행되며, 설치 방식에 따라 관리 명령이 달라집니다.

4.1 패키지로 설치된 경우

  • systemctl은 CentOS 7 이상에서 사용합니다.
  • CentOS 6 이하에서는 systemctl을 사용할 수 없으므로 init 스크립트(서비스) 방식으로 관리합니다.

CentOS 7 이상(systemd 사용)

# Tomcat 기동
systemctl start tomcat

# Tomcat 종료
systemctl stop tomcat

# Tomcat 재기동
sudo systemctl restart tomcat

CentOS 6(init.d 사용)

# Tomcat 기동
service start tomcat

# Tomcat 종료
service stop tomcat

# Tomcat 재기동
service restart tomcat

안내: 일부 배포판에서는 아래와 같이 명령 순서를 표기하는 것이 일반적입니다.

  • 예시: service tomcat start, service tomcat stop, service tomcat restart

4.2 소스 설치된 경우

  • Tomcat 설치 경로의 bin/ 폴더에 있는 스크립트를 사용합니다.
# Tomcat 기동
[Tomcat 설치 경로]/bin/startup.sh

# Tomcat 종료
[Tomcat 설치 경로]/bin/shutdown.sh

# Tomcat 재기동
[Tomcat 설치 경로]/bin/shutdown.sh && [Tomcat 설치 경로]/bin/startup.sh
재기동 전, [Tomcat 설치 경로]/logs/catalina.out 에러 로그를 반드시 확인하는 것을 권장합니다.