[TIL] apache 와 tomcat 이 정상적으로 연결되어 있는지 확인하는 방법

반응형

1. 상황

A : dev 환경의 ZZZ 서버가 정상적으로 응답을 안주고 있는데, 혹시 작업중이신게 있으신가요..?
M : 오잉..? 해당서버 현재 apache / tomcat 은 정상적으로 구동되어 있습니다.   
A : ??? 음.. 그러면 혹시 해당 장비의 apache 와 tomcat 이 정상적으로 연결되어 있는지도.. 확인 한번 부탁드리겠습니다.
M : 네, 알겠습니다. 

2. 진행

일반적으로 apache 와 tomcat 이 같이 구동되어있는 환경에서

해당 서버의 http request 는 apache 의 80 port 로 수신하며, apache 가 해당 요청을 8080 port 의 tomcat 에 전달한다.

이때 만약 apache 와 tomcat 이 정상적으로 connection 되어있지 않다면 정상적으로 응답을 return 받을 수 없다.

따라서 다음과 같이 서버에 접속해 apache 와 tomcat 이 정상적으로 연결되었는지 확인할 수 있다.

2-1) check apache & tomcat process

먼저 문제가 생긴 서버에 접속해 구동되어있는 process 목록을 확인하자

ps 명령어를 사용하면 구동되어있는 프로세스를 확인할 수 있다.

grep 명령어를 사용해 apache 와 tomcat 을 확인해보자.

ps -ef | grep apache 

apache 가 정상적으로 구동 되어있고

ps -ef | grep apache

tomcat 도 정상적으로 구동되어 있다면

다음 단계는 apache 가 tomcat 과 정상적으로 연결되어있는지만 확인하면 된다.

2-2) check apache & tomcat connection

이제 client 의 request 가 apache 를 통해 tomcat 에 정상적으로 전달되는지 확인해보자.

먼저 netstat 명령여를 사용해 apache 의 port가 80인지 확인해보자.

netstat -anp | grep :80

정상적으로 80 port 가 확인되었다면

이제 apache 에 http request 를 날려보자

curl -X GET -v http://localhost/minholee93

결과값으로 5xx erorr가 아닌값을 return 받으면 일단.. 정상적으로 connection 이 되어있다고 판단할 수 있다.

위와 같이 기존에 정의되어 있지 않은 url 로 request 를 날리면 당연히 404 를 return 받는다

만약 정상적으로 연결되지 않았다면 다음과 같이 5xx error 를 return 한다.

추가적으로.. tomcat 의 access log 를 확인해보면

정상적으로 apache 가 tomcat 에 requset 를 전달한 것을 확인할 수 있다.

3. 결론

apache 와 tomcat 의 connection 을 확인해보려면.. apache 에 request 를 날린 뒤 tomcat 의 access log 를 확인해보자.

반응형

댓글

Designed by JB FACTORY