∴주의 이글은 초심자용 글입니다.
목표. apache에 여러개의 tomcat 구성해보기
안녕하세요
이번시간엔 tomcat session clustering 을 기술하려고 했는데
생각해보니 제 블로그에서 apache 1대와 여러개의 tomcat을 구성해본적이 없어
apache 1대에 tomcat 2대를 붙여보도록 하겠습니다.
실무에선 apache 2대 tocmat 2대를 사용해서 크로스로 묶어서 사용하는일이 많습니다.
예시) apache2 tomcat2 크로스

위 그림처럼 2대 2대 이용해서 사용하는경우가 많습니다.
WEB#1 이 문제가 있거나 서버의 문제가 있어 죽으면
WEB#2한개로 버티고 WEB#1을 복구 하는것이죠.
WAS의 경우도 비슷합니다.
오늘 저희는 WEB1개 그리고 WAS2개를 연동 해보는 시간을 갖도록 하겠습니다.
사전준비
1.방화벽
포트포워딩을 이용하시면
web -> was 의 방향으로 ajp port 를 열어주시면됩니다.
2. apache 1대
apache2.4
mod_jk.so 사용
3. tomcat 2대
tomcat 9버전 2대
apache, tomcat 설치글은 아래링크의
글목록에 있습니다.
https://hunhee44.tistory.com/category/WEB%2CWAS
'WEB,WAS' 카테고리의 글 목록
WEB/WAS 엔지니어 같이 공부해보자! tomcat/apache/nginx 등 필요한 정보들을 공유 해드립니다!
hunhee44.tistory.com
사전준비까지 마치셨으면 이제 설치를 진행해보도록 하겠습니다.
tomcat 설치는 다 되어있다는 가정하에 시작하겠습니다.

저는 보통 이름을 같게 하는데 가독성을 위해서
이름을 달리해서 구성해보겠습니다.
ip 192.168.111.60 tomcat-9, apache2.4
ip 192.168.111.200 tomcat-9_2
보통 WEB 서버도 분리되어 있지만 서버가 부족해서
192.168.111.60 에 tomcat,apache
192.168.111.200에 tomcat 구성으로 하겠습니다.
설치
1.tomcat
tomcat의 ajp port 부터 적용해주겠습니다.
#tomcat 2대 전부 설정하셔아 합니다.
pwd
/home/hunhee/tomcat-9/conf
/home/hunhee/tomcat-9_2/conf
#사소한 변경도 백업필수
cp server.xml server.xml_20260107
vi server.xml
#ajp port 설정
<Connector protocol="AJP/1.3"
address="0.0.0.0"
port="8009"
redirectPort="8443"
maxParameterCount="1000"
secretRequired="false"
/>
#저장후 종료
wq!

tomcat 의 설정은 이게 끝입니다.
다른거 건드리실 필요없습니다.
2.apache
apache 의 설정은 workers.properties 의 설정을 변경해줄겁니다.
pwd
/home/hunhee/apache2.4/conf
vi workers.properties
worker.list=lb
#worker1 설정
worker.worker1.port=8009
worker.worker1.host=192.168.111.60
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
#worker2 설정
worker.worker2.port=8009
worker.worker2.host=192.168.111.200
worker.worker2.type=ajp13
worker.worker2.lbfactor=1
worker.lb.type=lb
worker.lb.balance_workers=worker1, worker2
worker.lb.sticky_session=true
worker.host 쪽에 tomcat 의 ip들을 각각적어주고
tomcat에 설정한 ajp port도 같게 맞춰줍시다.
ajp port를 8009로 안하셨으면 본인거에 맞춰주셔야 됩니다.
#주의 제글을 보고 설치하신분들은
jk모듈 마운트가 tomcat 으로 되있을겁니다.
위 코드 worker.list=lb 로 되있으니
JkMount /* tomcat 를 JkMount /* lb 로 변경해주셔야됩니다.

설치 끝 검증
설치가 끝나고 검증을 해보도록 하겠습니다.
log파일중에 access_log들을 tail -f 을 걸어서 확인해보겠습니다.
윈도우 녹화로 하려고 하니 ..
양쪽화면이 안나오네요 나중에 녹화툴을 받든가 해야겠습니다.
tail -f localhost_access_log.2026-01-07.txt 오늘날짜의 access log를 tail -f 걸고
핸드폰으로 녹화해봤습니다.
양쪽다 번갈아가면서 잘나오고 있네요
위의 workers.properties 에서
worker.worker1.lbfactor=1
worker.worker2.lbfactor=1
설정이 한번씩 요청을 받겠다는 말입니다.
worker.worker1.lbfactor=1
worker.worker2.lbfactor=5
이렇게 설정하면 worker2의 친구가 요청을 5번 받는다는 것입니다.
보통 실무에선 서버 스펙은 똑같게하니 lbfactor도 똑같이 구성하는게 낫겠죠?
다음시간에는 tomcat session clustering 에 대해서 기술해보도록 하겠습니다.
감사합니다!
'WEB,WAS 및 기술' 카테고리의 다른 글
| [WEB/WAS] apache XSS 취약점 조치 방법(Cross-Site Scripting) (1) | 2026.01.09 |
|---|---|
| [WEB/WAS] Tomcat session clustering 톰켓 세션클러스터링! (5) | 2026.01.08 |
| [WEB/WAS] Nginx Tomcat을 연동해보자! (0) | 2026.01.06 |
| [WEB/WAS] 리눅스에 Nginx 를 설치해보자! (0) | 2026.01.05 |
| [WEB/WAS] Tomcat 엔진 하나로 컨테이너 2개 만들기 (0) | 2025.12.31 |