Among Us - Yellow Crewmate [AWS] EC2 인스턴스에 Tomcat 설치하기

AWS/실습

[AWS] EC2 인스턴스에 Tomcat 설치하기

감쟈! 2021. 2. 14. 15:09

Apache Tomcat ?

톰캣 고양이

 

 

웹서버에 대해서 공부하다 보면 자주 들려오는 이름, 톰캣(tomcat)이다

그럼 톰캣이 무엇일까?? 톰캣을 설치하기전에 톰캣이 무엇인지부터 알아보도록 하자

 

아파치 톰캣, 일명 톰캣은 아파치 소프트웨어 재단에서 개발한 웹 애플리케이션 서버(WAS)이다.

이름에 아파치가 붙어있는데, 그럼 웹서버인 아파치하고 차이점이 무엇인지 궁금해졌다.

아파치와 아파치 톰캣을 비교하면서 알아보자.

 

Apache와 Apache Tomcat 비교

우선 큰 차이점은 Apache는  Web 서버이고, Tomcat은 WAS 서버이다.

근데 왜 Apache Tomcat 일까??? 그 이유는 톰캣이 아파치 재단에서 만들어졌기 때문이다...

 

Web 서버는 주로 HTML, 이미지같은 정적인 데이터를 처리하고,

WAS 서버는 JSP, PHP, SERVLET 같은 동적인 데이터를 처리한다.

 

하지만 Tomcat은 Apache의 기능이 포함되어 있기때문에 정적,동적데이터를 모두 처리할 수 있다.

그럼 Apache는 왜 사용하고, 왜 Tomcat과 분리하는 걸까??? 그 이유를 살펴보자

 

가장 대표적인 이유는,

웹사이트에서 데이터를 처리할때 Apache에서는 정적 데이터를, Tomcat에서는 동적 데이터를 처리하게 해서 서버의 부담을 줄인다. 라고 알고 있었는데, 사실 그렇지 않다고 한다.

 

Tomcat에서는 정적 데이터를 처리하는 기능을 제공해서 Apache httpd를 사용하지 않아도 성능차이가 거의 없다.

따라서, 정적 데이터 처리를 위해 Apache httpd를 사용하는 것은 메모리만 먹고, 부담만 커질뿐이다.

 

 

Apache와 Tomcat을 분리해서 사용하는 진짜 이유는 다음과 같다

 

1. 보안강화 (Apache에서 해킹을 당해도 Tomcat에서는 정상 작동하게끔 한다)

2. 로드밸런싱 (특정 서버에서 에러/과부화가 발생할 경우, 다른 서버에서 정상적으로 서비스하게끔 한다)

3. Apache에서 다른 언어의 애플리케이션을 함께 사용하고자 할 때.

 

 


 1. EC2 인스턴스에 Tomcat을 설치해보자

EC2 인스턴스를 Putty를 이용해서 접속해주고, 인스턴스에 직접 Tomcat을 설치해주자.

 

 

1. Tomcat을 설치하기 위해서는 자바가 필요하다고 한다. 현재 자바가 설치되어 있는지 확인해주자.

현재 자바가 설치되어 있지 않은 상태이다.

 

java -version

자바 버전확인

 

 

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

 

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

자바 설치

 

 

3. 설치가 되었는지 다시 java -version 명령어를 통해 버전을 확인해보자.

자바 설치 확인

 

 

4. wget 명령어를 통해 Tomcat을 다운로드 받아주자. 다운받는 링크는 Tomcat 홈페이지에서 확인할 수 있다. 

Tomcat 설치

 

 

 

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

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

Tomcat 압축 해제

 

 

 

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

Tomcat 실행

 

 

7. Tomcat에 접근하기 위해서 Security Groups의 인바운드 규칙을 추가해주자.

Tomcat의 포트번호는 8080이다. Custom TCP를 사용해 8080을 추가해주자.

Security Groups 인바운드 규칙 추가

 

 

8. EC2 인스턴스의 Public IP:8080 을 주소창에 입력해주면 Tomcat이 정상적으로 작동중인 것을 확인할 수 있다!

Tomcat 접근

 

 

 

 

 

Tomcat이 무엇인지 Apache와 비교하면서 알아보고, AWS EC2 인스턴스에 설치하는 과정에 대해서 알아보았다.