목차
- 리눅스 톰캣 7 소스코드 다운로드 및 설치하기 이전 포스팅 참고 학습
- 리눅스 아파치 AJP 톰캣 연동하기 이전 포스팅 참고 학습
- 리눅스 쉘스크립트 사용자 입력받아 base64 인코딩, 디코딩하기 이전 포스팅 참고 학습
- 리눅스 톰캣 커넥터 mod_jk 모듈 소스코드 다운로드 및 빌드 예제
- 리눅스 아파치 톰캣 서버로 로드밸런싱 설정하기 예제
- 리눅스 아파치 톰캣 서버 로드밸런싱 연결 테스트 예제
리눅스 톰캣 7 소스코드 다운로드 및 설치하기 이전 포스팅 참고 학습
이전 포스팅을 참고하여 리눅스 환경에서 톰캣 7의 소스코드를 다운로드하고 설치하는 방법을 학습해주세요. 오늘 예제는 리눅스 아파치에서 톰캣 서버로 로드밸런싱 하는 예제입니다. 따라서 톰캣 서버를 반드시 구성해야합니다. 만약 아직 리눅스 환경에 톰캣 서버를 구성하지 않으셨다면 아래 링크를 참고하여 설치해주세요.
2020.07.13 - [Linux/Tomcat] - 리눅스 우분투 tomcat 7 설치(Ubuntu, Tomcat, Install)
리눅스 아파치 AJP 톰캣 연동하기 이전 포스팅 참고 학습
이전 포스팅을 통해 아파치 웹 서버와 톰캣을 AJP(아파치-톰캣 연결 프로토콜)를 사용하여 연동하는 방법을 학습할 수 있습니다. 오늘 예제는 로드밸런싱이지만 실제 로드밸런싱 되는 서버 경로는 ajp 포트입니다. 따라서 톰캣에 ajp 포트를 활성화해야 아파치에서 ajp 포트로 로드밸런싱이 가능합니다. 아직 ajp 연동 방법을 모르신다면 아래 링크를 참고해주세요.
2023.09.14 - [Linux/Tomcat] - [Linux/Tomcat] 리눅스 아파치 AJP 설정 및 톰캣 서버 연동 예제(tomcat, apche ajp)
리눅스 쉘스크립트 사용자 입력받아 base64 인코딩, 디코딩하기 이전 포스팅 참고 학습
마지막으로 톰캣과는 별개로 리눅스 쉘 스크립트에서 사용자에게 문자열을 입력받아 base64 인코딩, 디코딩 하는 방법이 궁금하시다면 아래 링크를 통해 학습하실 수 있습니다. 해당 포스팅에는 예제가 포함되어있습니다.
2023.09.05 - [Linux/Shell Script] - [Linux/ShellScript] 쉘스크립트 사용자 입력 문자열 base64 인코딩 및 디코딩 예제
리눅스 톰캣 커넥터 mod_jk 모듈 소스코드 다운로드 및 빌드 예제
아래는 리눅스에서 톰캣을 아파치 웹 서버와 연결하는데 사용되는 mod_jk 모듈의 소스코드를 다운로드하고 빌드하는 예제입니다. 로드밸런싱을 수행하기 위해서는 반드시 mod_jk 모듈이 필요합니다.
$ cd ~/Downloads
$ mkdir mod_jk;cd mod_jk
$ wget -c https://archive.apache.org/dist/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.43-src.tar.gz
$ tar -xvzf tomcat-connectors-1.2.43-src.tar.gz
$ cd tomcat-connectors-1.2.43-src/native
$ ./configure --with-apxs=/home/wonseok/apache/out/bin/apxs
$ make
$ cp apache-2.0/mod_jk.so /home/wonseok/apache/out/modules
리눅스 아파치 톰캣 서버로 로드밸런싱 설정하기 예제
아래는 아파치 웹 서버를 사용하여 리눅스 환경에서 톰캣 로드 밸런싱을 설정하는 예제입니다. 우선 아파치 환경설정 파일에서 mod_jk 모듈을 추가하고 worker 설정파일을 생성하여 로드밸런싱을 수행할 서버들을 설정합니다.
$ vim /home/wonseok/apache/out/conf/httpd.conf
LoadModule jk_module modules/mod_jk.so
<IfModule jk_module>
JkWorkersFile conf/workers.properties
JkLogFile logs/mod_jk.log
JkLogLevel info
JkMountFile conf/uriworkermap.properties
</IfModule>
아래와 같이 workers.properties 파일을 생성한다. 본 예제에서는 두개의 서버를 같은 서버로 설정하였다.
$ vim /home/wonseok/apache/out/conf/workers.properties
worker.list=load_balancer
worker.load_balancer.type=lb
worker.load_balancer.balance_workers=tomcat1,tomcat2
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor=1
worker.tomcat2.port=8009
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1
그리고 map 파일도 생성한다.
$ vim /home/wonseok/apache/out/conf/uriworkermap.properties
/*=load_balancer
이후 서버를 재시작한다.
리눅스 아파치 톰캣 서버 로드밸런싱 연결 테스트 예제
마지막으로, 앞서 설정한 로드 밸런싱 환경에서 연결을 테스트하는 예제입니다. 이를 통해 로드 밸런싱이 제대로 작동하는지 확인하고 서버 확장하는 방법을 알 수 있습니다.