본문 바로가기
OS/Linux

Mod_proxy_ajp를 통한 web-was 연동

by BTC_쭈콩 2023. 5. 31.

베하 - ! 

안녕하세요 ! BTC 콩순이들입니다!!

오늘은 mod_proxy에 대해 알아보겠습니다!

 

그럼 시작하겠습니다 !! 


web과 was를 연동한다니 , 도대체 왜 연동을 해야하는 걸까요? 

사실 was는 혼자서도  web 서버의 역할도 충분히 해낼 수 있습니다 ! 

하지만 우리가 web server와 was를 따로 두고 연동을 하는 이유에는 몇가지 이유가 존재합니다. 

 

✅부하 분산
Web 서버는 정적인 컨텐츠만 처리하며, 동적인 데이터는 WAS에게 처리를 위임합니다.
이렇게 구성함으로써 Web 서버와 WAS 간의 역할을 분리하고, 로드 밸런싱을 통하여 처리량을 늘릴 수 있습니다.

✅보안 강화
Web 서버와 WAS를 분리함으로써 보안성을 높일 수 있습니다. 
외부에서 WAS에 직접적으로 액세스할 경우, WAS 서버 자체가 공격 대상이 되어 보안에 취약해질 수 있습니다. 
하지만 Web 서버를 통하여 연결되어있고, WAS 서버로의 액세스를 Web 서버 내부에서 자동으로 처리함으로써, 보안성을 높일 수 있습니다.

✅기능 확장
Web 서버와 WAS를 분리함으로써 기능 확장이 용이해집니다. 
WAS에 필요한 CPU나 메모리 등의 자원을 Web 서버와 공유할 수도 있으며, 자원을 추가로 확보하기 용이해집니다.
✅성능 향상
Web 서버는 WAS에 비해 가벼우며, 정적인 컨텐츠 처리에 더 능숙합니다. 
WAS는 동적인 데이서 처리를 담당하며, 성능 향상을 위해서는 WAS를 최적화하는 것이 바람직합니다. 
이렇게 부하 분산을 통하여 성능을 개선할 수 있습니다.

그렇다면 오늘 알아 볼 mod_proxy에 대해 간단하게 알아보고 

바로 실습으로 넘어가보도록 하겠습니다 ! 

 

mod_proxy는 Apache 웹 서버의 하나의 모듈로, 중개자 역할을 수행합니다.
이 모듈은 다음과 같은 방식으로 작동합니다.

1. 클라이언트가 웹 서버에 요청을 보냅니다.
2. mod_proxy는 이 요청을 받아서 내부적으로 처리합니다.
3. 웹 서버로부터 응답을 받는 동안 클라이언트에게는 다른 응답을 보냅니다.
4. 응답이 준비되면 mod_proxy는 이를 받아서 클라이언트에게 반환합니다.

 

이렇게 mod_proxy는 중간에서 중개자 역할을 수행하는데요! 

저희도 web-was를 연동해보도록 하겠습니다 !! GOGO 

 

<실습환경>

EC2 : t2.micro , amazon linux 2 

web IP 로 접속시 web-server의 root-document가 보임 

web IP/main 으로 접속시 was 의 톰캣 페이지가 보임 

 

<web>

# yum update -y
# yum -y install httpd
# systemctl start httpd
# systemctl enable --now httpd
# echo 'Hello world !' > /var/www/html/index.html
# echo 'ProxyPass "/main" "ajp://<was private IP>:8009/"' >> /etc/httpd/conf/httpd.conf
# systemctl restart httpd

 

<was>

# amazon-linux-extras install tomcat8.5 -y
# yum install -y tomcat-webapps
# systemctl enable --now tomcat
# vim /usr/share/tomcat/conf/server.xml

+여기서 Connector AJP 프로토콜 부분 주석 해제 

 

🆗web IP 로 접속시 web-server의 root-document가 보임 

🆗web IP/main 으로 접속시 was 의 톰캣 페이지가 보임 

 

여러분 잘 따라오셨나요 ! 

오늘은 mod_proxy_ajp로 연동하는 방법에 대해 알아보고 실습도 함께 해봤습니다! 

유익한 시간이 되셨길 바라며 !!

그럼 이만 베빠 - !

'OS > Linux' 카테고리의 다른 글

[Linux] Apache Nifi 사용법  (0) 2023.06.07
Web - Was Mod_jk 연동  (0) 2023.06.07
[Linux]inode 이해하기  (0) 2023.05.29
리눅스 Log관리는 필수! Logrotate  (1) 2023.05.19
[Linux] 셸 스크립트(5)  (0) 2023.02.15

댓글