[실행환경]
CentOS Linux release 7.9.2009 (Core)
openjdk version "11.0.19" 2023-04-18 LTS
Apache 2.4.6
Tomcat 10.1.15
1. 톰캣 홈페이지에서 다운로드 링크를 복사하고, 원하는 위치에 wget으로 다운로드 한다.
다운 받은 후, 압축을 풀고 원하는 수량 만큼 인스턴스를 압축해제 한다.
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.15/bin/apache-tomcat-10.1.15.tar.gz
2. 필요한 패키지 다운로드
※ apache 소스설치를 했다면, httpd-devel(=apxs)를 빼고 yum설치를 해야한다.
# 아파치를 yum 설치했을 때
yum install java-11-openjdk.x86_64 autoconf libtool httpd-devel
# 아파치를 소스설치 했을 때
yum install java-11-openjdk.x86_64 autoconf libtool
* 톰캣 10.1버전은 지원되는 자바 버전이 11이상이다. → 톰캣 홈페이지 참고(https://tomcat.apache.org/whichversion.html)
3. 톰캣 홈페이지에서 커넥터 다운로드, 다운 받은 파일 압축해제 & mod_jk 컴파일 설치를 진행한다.
wget https://dlcdn.apache.org/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.49-src.tar.gz
# 톰캣 connector 디렉토리로 이동
cd tomcat-connectors-1.2.49-src
# native 디렉토리로 이동
cd native
# 컴파일 설치 진행
# apxs 경로를 알 수 없다고 나올 경우, whereis apxs로 확인 필요
# 아파치를 소스설치 한 경우, apxs 경로 확인 필요!!!!!
# apxs 경로 예시) /usr/local/src/httpd-2.4.57/bin/apxs
./configure --with-apxs=/usr/bin/apxs
make && make install
# mod_jk.so 파일이 정상적으로 설치 된 것인지 확인한다.
# find 명령어로 검색되지 않으면 제대로 설치 되지 않은 것
find / -name "mod_jk.so"
# apache를 소스설치 한 경우, mod_jk.so 파일을 소스설치 경로로 복사해준다.
cp -arp mod_jk.so /usr/local/src/httpd-2.4.57/modules
make install 진행 후, /usr/lib64/httpd/modules경로에 mod_jk.so가 있으면 정상적으로 진행 된 것이다.
※ configure: error: You must specify a valid --with-apxs path → 에러 발생시 처리방법(RHEL 8 에서 발생)
- 아파치 소스설치한 경로로 이동
- apxs 파일을 열어서 1번 줄 문장을 아래와 같이 수정해주면 해결된다.
vi /usr/local/src/httpd-2.4.57/bin/apxs
# apxs 파일의 1번줄 기존 내용
#!/replace/with/path/to/perl/interpreter -w
# apxs 파일의 1번줄 내용을 아래와 같이 바꿔준다.
#!/usr/bin/perl
4. 아파치 - 톰캣 연동 진행
1) Apache conf 파일에서 내용 추가한다.
LoadModule jk_module modules/mod_jk.so
<VirtualHost *:80>
JkMount /* balancer
</VirtualHost>
<ifModule jk_module>
JkWorkersFile conf/workers.properties
JkShmFile logs/mod_jk.shm
JkLogFile logs/mod_jk.log
JkLogLevel error
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
</ifModule>
2) workers.properties 내용을 아래와 같이 추가한다.
vi workers.properties
# worker list
worker.list=balancer
# balancer
worker.balancer.type=lb
worker.balancer.balance_workers=tomcat1
# tomcat1
worker.tomcat1.port=8009
worker.tomcat1.host=localhost
worker.tomcat1.type=ajp13
3) 톰캣 server.xml 파일에서 AJP 포트 활성화
※ address="0.0.0.0" secretRequired="false" 를 넣지 않으면 정상작동 하지 않으니 주의!!!
(중략)
<Connector protocol="AJP/1.3"
address="0.0.0.0"
secretRequired="false"
port="8009"
redirectPort="8443"
maxParameterCount="1000"
/>
(중략)
1) 톰캣을 start한다.
/home/tomcat-test1/bin/startup.sh
* 톰캣 중지는 bin/shutdown.sh 이다.
2) 톰캣 포트가 올라왔는지 확인한다.(디폴트 상태라면 8080포트가 LISTEN상태다.)
3) 브라우저로 80포트 접근시 톰캣 그림 출력 된다면, 정상적으로 아파치-톰캣 연동 완료
'Infra > Apache' 카테고리의 다른 글
Apache - Tomcat 멀티 인스턴스 로드밸런싱 설정(RHEL7, RHEL8) (0) | 2023.10.20 |
---|---|
Apache web Server 컴파일 설치(RHEL 7 & RHEL 8) (0) | 2023.10.17 |
Apache MPM (0) | 2023.07.24 |
아파치와 톰캣 멀티 인스턴스 연동하기(httpd.conf 설정) (0) | 2023.07.19 |
apache 설치 및 이름 기반 가상호스트 사용 (0) | 2023.07.19 |