728x90
NLB
WEB01, WEB02에서 WAS01, WAS02로의 흐름이 NLB를 통해 이루어지도록 구성한다.
AWS NLB의 동작 방식
AWS NLB 생성
타겟 그룹 생성하기
NLB의 트래픽을 넘겨줄 대상 그룹 만들기
web의 아웃바운드를 통해 나온 트래픽을 타겟그룹에서 8080으로 받는다.
NLB의 트래픽을 보내줄 WAS 인스턴스 2개 선택
NLB 생성하기
내부에서 사용할거니까 Internal
NLB가 위치할 subnet 선택
WEB01, WEB02가 위치한 subnet에 붙여주었다.
target group을 붙여준다.
보안그룹 수정
web-sg 아웃바운드를 설정해서 web에서 8080포트로 WEB01, WEB02가 있는 서브넷으로 트래픽을 보낸다.
was-sg의 인바운드에서 WEB01, WEB02가 있는 서브넷으로부터 8080 포트로 트래픽을 받는다.
Tomcat 설정
# vi /usr/local/tomcat8/webapps/ROOT/test.jsp
<%@ page contentType="text/html; charset=UTF-8"%>
<html>
<head><title>hello world</title></head>
<body>
tomcat test (was1)
</body>
<html>
톰캣에 테스트할 파일을 하나 만든다.
sudo systemctl restart tomcat8.service
톰캣 서비스 재시작
Apache 설정
# wget 설치 시 경로
vi /usr/local/apache/conf/httpd.conf
# yum 설치 시 경로
vi /etc/httpd/conf/httpd.conf
httpd.conf 파일에서 module 3개 주석 해제
맨 아래 부분에 VirtualHost 추가
<VirtualHost *:80>
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://<nlb 주소>:8080/
ProxyPassReverse / http://<nlb 주소>:8080/
Timeout 120
</VirtualHost>
# wget 설치 시
systemctl restart apache.service
# yum 설치 시
systemctl restart httpd
apache 서비스 재시작
새로고침했을 때 로드가 분배되어 was1, was2 순서대로 나오는 것 확인
참고
https://velog.io/@bonjaski0989/EC2-TomcatModProxy-%EC%97%B0%EB%8F%99
https://potato-yong.tistory.com/78
728x90