본문 바로가기
[Developer]/Linux,Windows,macOS

Apache 2.4.7과 Tomcat 6 연동하기

by 해피빈이 2014. 7. 26.

얼마전 내 마이크로서버를 접속하는데

로그인 프롬프트 앞에 마치 엄청 중요하다는 듯이 메세지가 하나 나왔다.

그것은 바로 우분투를 12.04에서 14.04로 올리지 않으련?


그래서 고민끝에 과감하게!!!

올리기로 결심하고 올렸다.


올리는 과정도 포스팅했으면 좋았으련만...

그 과정은 잠시 bash_history에 남겨진 글자만 기록하고 넘어가야겠다..




아무튼! 이번 포스팅은 이게 중요한 것이 아니기에.


사이드로 발생한 여러 문제중에 가장 나에게 많은 시간을 투자하게 만들었던 문제를 조명해보고자 한다.


사실 JIRA 및 Confluence, 그리고 Fisheye와 Bamboo 등 이녀석들을 돌리는데에도 문제가 발생했다.


톰캣6로 돌리고 있었는데, 바로 메모리 부족 현상이 일어난 것이다.


다행히도 이 문제는 기존에 경험한적이 있어서 잽싸게 Xms 및 Xmx, Permgen 등의 설정을 CATALINA쪽에 해주어 해결을 보았다.


하지만 두번째 문제가 더 문제였다.


그것은 Apache가 정상작동을 하지 않는 것이었다.



당연히 Apache2도 업그레이드가 되었고, 그에 따라서 설정하는 방법도 좀 바뀐듯했다..

기존 설정이 전혀 먹히지 않고 에러 투성으로 변해버렸기 때문에..

여러시도 끝에 다시 해야 했다.


며칠간 삽질 결과 다음과 같은 결론을 내렸다.


0. 일단 포트가 겹치지 않게 하기 위해, 먼저 돌고 있던 nginx의 포트를 변경해준다.

# vi /etc/nginx/sites-enabled/default

listen을 검색하여 80을 81로 변경


1. 우선 apache2를 설치한다.

# apt-get install apache2


2. 그다음 mod-jk를 설치한다.

# apt-get install libapache2-mod-jk


3. 그다음 workers.properties를 수정해준다.

# vi /etc/libapache2-mod-jk/workers.properties


workers.tomcat_home을 tomcat 패스로 설정

workers.java_home을 자바패스로 설정


아래의 내용은 추가하고자 하는 워커를 추가하여 설정하는 방법이다.

이름만 매치시키도록 만들면 된다.


worker.list=ajp13_worker, worker_jira, worker_confluence


worker.ajp13_worker.port=8009

worker.ajp13_worker.host=localhost

worker.ajp13_worker.type=ajp13


worker.worker_jira.host=localhost

worker.worker_jira.port=8009

worker.worker_jira.type=ajp13


worker.worker_confluence.host=localhost

worker.worker_confluence.port=8009

worker.worker_confluence.type=ajp13


4. 톰캣의 sever.xml에 연동할 수 있는 포트를 열고(아래 문구 추가)

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />


5. /etc/apache2/sites-available/000-default에 아래의 내용을 추가(jira라는 파일을 따로 만들어 추가해도 된다)

JkMount /jira worker_jira

JkMount /jira/* worker_jira


6. 그리고 jira라는 파일에는 아래의 내요을 추가했는데.. 안해도 될지도;;

ServerAlias /jira/ "/webapps/tomcat/jira/"

        <Directory "/webapps/tomcat/jira/">

                Options Indexes FollowSymLinks MultiViews

                AllowOverride None

                Order allow,deny

                allow from all

        </Directory>


이정도면 될것같은데...


혹시 안되면 추후에 추가해야겠다.



위의 기준은 Tomcat에 JIRA를 설치했을 경우를 예로 들었다!

반응형

댓글