-
AWS | EC2 Apache(아파치) 설치 및 Tomcat(톰캣) 연동▼ DevOps/AWS 2021. 7. 14. 19:15반응형
EC2에 Tomcat을 설치 후 진행 바랍니다.
▶ 구축 환경
EC2 Linux AMI (CentOS), Java 1.8, Apache, Tomcat 9.0.43
1. 웹서버 설치
yum update yum install httpd
2. tomcat-connector(mod_jk) 설치
Web server와 Tomcat을 연동시키기 위해 tomcat-connector를 설치해준다.
공식 사이트의 최신 버전의 다운로드 링크를 복사하여 설치해도 된다.
tomcat.apache.org/download-connectors.cgi2-1) 의존성 주입
wget -c 복사한 링크 주소wget -c http://mirror.navercorp.com/apache/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.46-src.tar.gz
2-2) 압축 풀기 및 폴더 이동
tar xvf tomcat-connectors-1.2.46-src.tar.gz mv tomcat-connectors-1.2.46-src/ /usr/local/src
2-3) 빌드 필수 유틸 설치
yum install autoconf yum install libtool yum -y install gcc gcc-c++ httpd-devel
해당 위치로 이동 후 cd /usr/local/src/tomcat-connectors-1.2.46-src/native/
빌드 ./buildconf.sh 한다.cd /usr/local/src/tomcat-connectors-1.2.46-src/native/ ./buildconf.sh
configure) apxs 가 설치된 경로를 찾아 연결한다.
./configure --with-apxs=/usr/bin/apxs
make make install
2-4) mod_jk 파일 확인
ls /etc/httpd/modules/ | grep mod_jk
3. 아래 3개의 파일을 수정한다.
httpd.conf
workers.properties
server.xml3-1) httpd.conf
vi /etc/httpd/conf/httpd.conf
마지막 라인에 아래 내용 추가
# (추가) START LoadModule jk_module modules/mod_jk.so <IfModule mod_jk.c> # 워커 설정파일 위치 JkWorkersFile conf/workers.properties # 공유 메모리파일 위치 반드시 Selinux 보안때문에 run에 위치 필수 JkShmFile run/mod_jk.shm # log 위치 JkLogFile logs/mod_jk.log # 로그레벨 설정 JkLogLevel info # 로그 포맷에 사용할 시간 형식을 지정한다. JkLogStampFormat "[%y %m %d %H:%M:%S] " </IfModule> <VirtualHost *:80> # 웹 소스 경로 설정 DocumentRoot /home/ven-project/podo/users/www # Mount 설정 JkMount /* tomcat # Unmonut 설정 JkUnmount /common/* tomcat # 도메인 설정 ServerName www.podo-sample.kr <Directory "/home/ven-project/podo/users/www"> Order allow,deny Allow from all Options FollowSymLinks AllowOverride All Require all granted </Directory> </VirtualHost> # (추가) END
3-2) workers.properties
vi /etc/httpd/conf/workers.properties
해당 파일이 경로에 없으면 빈 텍스트 파일을 생성하여 작성한다.
httpd.conf 가상 호스트 설정에 JkMount /* tomcat 부분이 workers에 이름으로 작성된다.
8009 포트 설정은 웹서버에서 AJP 통신 포트로 연결되어 요청을 Tomcat으로 보내주는 역할을 한다.
worker.list=tomcat worker.tomcat.port=8009 worker.tomcat.host=www.podo-sample.kr worker.tomcat.type=ajp13
3-3) server.xml
<Connector protocol="AJP/1.3" address="0.0.0.0" port="8009" secretRequired="false" redirectPort="8443" /> <Host name="www.podo-sample.kr" appBase="/home/ven-project/podo/users/webapps" unpackWARs="true" autoDeploy="true"> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t "%r" %s %b" /> </Host>
※ EC2 인스턴스 보안 인바운드 규칙에 해당 포트(80, 8009)가 추가되어 있어야 한다.
반응형'▼ DevOps > AWS' 카테고리의 다른 글
AWS | PuTTY를 사용하여 EC2(Linux) 인스턴스에 연결하기 (0) 2021.10.07 AWS | EC2 인스턴스 키 페어 추가, SSH 접속하기 (2) 2021.07.15 AWS | CLI를 이용하여 S3 버킷 액세스, 파일 업로드, 다운로드하기 (0) 2021.07.14 AWS | S3 버킷 생성 (0) 2021.07.14 AWS | EC2에 IAM 역할 추가 및 콘솔 접속 (0) 2021.07.13