Among Us - Yellow Crewmate [AWS] AWS로 구축하는 3티어 아키텍처 - (WAS 서버)

AWS/3 Tier Architecture

[AWS] AWS로 구축하는 3티어 아키텍처 - (WAS 서버)

감쟈! 2021. 2. 21. 16:46

3 Tier Architecture

 

 

11. 웹 애플리케이션 서버 (WAS) 설치

 

앞서 생성했던 Bastion Host를 통해 Private Subnet에 ssh로 접속해  WAS 를 설치해주도록 하자.

WAS를 설치한 뒤에는 IN-ELB를 통해 로드밸런스 테스트까지 해준다.

 

다음 작업은 WAS1과 WAS2 모두 동일하게 진행해주도록 하자.

 

 

11-1. Private WAS 서버 접속

Private의 접속하기 위해서는 ".pem" 키 파일을 이용한 ssh로 접속해 주도록 하자

WAS 서버 접속

 

 

11-2. WAS 서버인 Tomcat을 설치해주기 전에는 Java가 필요하다. 

Java가 설치 되어있는지 확인해주자.

java  확인

 

 

11-3. 자바가 설치되어 있지 않아서 설치해주도록 한다.

 

yum 명령어를 통해 설치해주도록 하자.

sudo yum install -y java-1.8.0-openjdk.x86_64

Java 설치

 

 

11-4.  Java가 설치가 되었다면 다음으로 WAS 서버에 Tomcat을 설치해주자

Tomcat 홈페이지에서 사용하려는 Tomcat의 버전의 링크를 가져와 wget을 통해 설치해주자

 

tomcat.apache.org/download-10.cgi

 

Apache Tomcat® - Apache Tomcat 10 Software Downloads

Welcome to the Apache Tomcat® 10.x software download page. This page provides download links for obtaining the latest version of Tomcat 10.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versi

tomcat.apache.org

Tomcat 설치

 

 

 

11-5. Tomcat이 설치되어 있는것을 확인해주고

sudo tar xzf apache-tomcat-10.0.2.tar.gz 명령어를 통해 압축을 풀어주도록 하자.

Tomcat 압축 해제

 

 

11-6. 압축 해제된 Tomcat의 폴더로 이동한 후, sudo ./bin/startup.sh 명령어를 통해 톰캣을 실행 시켜주자.

Tomcat 실행

 

 

 

11-7. 설치했던 tomcat의 디렉터리 안에  logs 디렉터리로 이동해주고,

tail -f localhost_access_log.2021-02-21.txt  가장 최근의 로그파일이 생성되어있다.

로그를 확인해보자

로그파일 확인

 

 

11-8. WAS 서버 확인을 위해 JSP 파일로 테스트 페이지를 작성해주자.

/Tomcat/webapps/ROOT 디렉터리로 이동해준뒤 <파일명>.jsp 으로 테스트 페이지를 작성해준다.

 

(WAS2 서버에서는 테스트 페이지 작성할 때, 로드밸런스 확인할 수 있게 WAS1과는 다른 내용으로 작성해주자. )

WAS 테스트 페이지 작성

 

 

 

11-9. ./shutdown.sh 명령어로 Tomcat을 종료했다가, 다시 시작해주자

Tomcat 재시작

 

 

 

 

11-10. WAS 서버가 타겟으로 등록된 IN-ELB의 상태가 healthy인지 확인해주자.

IN-ELB 상태 확인

 

 

 

11-11. WAS 서버가 설치되었고 로드밸런서도 작동중이지만,

현재는 Web과 WAS가 연결되어 있지 않은 상태이기 때문에, EX-ELB를 타고 들어왔던 트래픽이 Web에서 WAS로 전달 불가능하다.

 

Web 서버와 WAS 서버를 연결해주는 작업이 별도로 필요하다. Apache 설치 시 같이 설치되는 mod_proxy 모듈을 이용해서 두 서버를 연결해주도록 하자.

 

cd /etc/httpd/conf/httpd.conf 파일을 열어서 

Include conf.modules.d/*.conf 구문 밑에 다음과 같이 추가해주자.

mod_porxy 모듈 

 

 

11-12. 그 후, 파일 맨 끝에 다음과 같은 구문을 작성해주자.

 

Web에서 받은 트래픽을 IN-ELB:8080으로 넘겨주는 작업

httpd.conf 파일 수정

 

 

11-13. 파일 내용이 적용 될 수 있도록 Apache를 재실행 해주자

Apache 재실행

 

 

11-14. Web과 WAS가 제대로 연결되었다면, EX-ELB의 DNS Name/<파일명>.jsp 를 통해 접속하면 

다음과 같이 로드밸런서가 작동되는 WAS 서버 테스트 페이지를 확인할 수 있다.

 

 

 

새로고침 할 때마다 WAS1, WAS2 가 계속 바뀌는 것과 현재 시간 데이터를 받아올 수 있다.

WAS1 서버
WAS2 서버