티스토리 뷰

우선 기본 설치된 자바를 지움

현재 EC2 인스턴스에 설치되어 있는 자바 버전을 확인합니다. 기본적으로 open jdk 7버전이 설치 되어 있습니다.


java -version



제가 구동할 서비스의 특성상 자바 8 이상의 버전이 필요하기 때문에 먼저 기존에 설치되어 있는 자바를 제거하겠습니다.



rpm -qa | grep java



검색된 구성요소들을 아래 명령어로 제거합니다.



sudo yum remove javapackages-tools-0.9.1-1.5.amzn1.noarch

sudo yum remove tzdata-java-2016d-1.62.amzn1.noarch

sudo yum remove java-1.7.0-openjdk-1.7.0.111-2.6.7.2.68.amzn1.x86_64



출처: http://storyinglass.tistory.com/7 [술한잔에이야기담아]


2. 자바 설치 및 환경변수 설정

자바를 설치하기 위해 기존의 apt-get이라던지, yum 등을 사용해서 쉽게 설치할 수도 있지만 오늘은 정석대로 설치해보도록 하겠습니다.

1
2
3
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u101-b13/jdk-8u101-linux-x64.tar.gz"
ls #현재 폴더 내 파일 확인

다운을 완료하였다면 사진과 같이 확장자가 tar인 JDK8(Java Development Kit)이 다운로드 되었을 것입니다. 확인 하였다면

1
2
3
tar xzf jdk-8u101-linux-x64.tar.gz
ls
#아래의 값들은 tar의 옵션 값들입니다. 저희는 xzf 압축을 풀것이며 gzip을 사용하여 tar파일을 풀때 사용하는 옵션입니다.

-c : tar파일 생성할 때 사용 (기본사용) -> 풀때는 -x 옵션 사용
-t : tar파일의 내용을 확인할 때 사용
-f : tar파일을 사용할 때 사용 (기본사용)
-p : tar파일을 생성or풀때 원본 파일속성(퍼미션) 유지
-v : 묶거나 풀 때 과정 보기 (거의기본사용)
-z : gzip(gunzip) 사용 옵션
-j : bzip(bunzip2) 사용 옵션

압축을 풀었다면 위의 사진과 같이 압축이 풀린 폴더를 확인할 수 있습니다.

1
2
3
sudo rm -f jdk-8u101-linux-x64.tar.gz #더이상 필요없는 tar파일 삭제 (*아래에 옵션 값 참조*), sudo는 root 권한 얻어오는 것
sudo mv jdk1.8.0_101/ /usr/local/java #압축을 푼 폴더를 /usr/local로 이동하며 폴더명 java로 변경
cd /usr/local/ # usr/local 이동

-f : 삭제확인 질문 없이 삭제
-i : 삭제할건지 매번 prompt 물어봄.
-r : 하위폴더 포함 삭제
-v : 모든 삭제결과 확인

1
2
3
4
5
6
7
8
9
10
11
sudo vim /etc/profile #환경변수 설정(반드시 root권한으로 실행)
#i를 눌러서 insert mode로 변경 후 제일 아랫줄에 다음 내용 삽입
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin:
#esc를 눌러 편집모드를 해제한 후 저장 및 종료
:wq!
#vi 편집기를 빠져나온 후 환경변수 파일 리로드
source /etc/profile

자바가 제대로 설치되었는지 확인하기 위해 다음 명령어 입력

1
2
java -version
javac -version

명령어 입력후 아래의 사진과 같이 뜬다면 설치 성공!!

3. Tomcat 설치 및 환경 변수 설정

톰캣은 자바와 마찬가지로 설치되기 때문에 크게 어려움 없이 잘 따라오실 수 있을겁니다.

설치

1
2
3
wget http://mirror.apache-kr.org/tomcat/tomcat-8/v8.5.5/bin/apache-tomcat-8.5.5.tar.gz
tar xzf apache-tomcat-8.5.5.tar.gz #압축풀기
ls #현재 폴더 내 파일 확인

압축을 풀었다면 다음과 같이 압축파일과 압축이 풀린 폴더를 확인 할 수 있습니다.

1
2
3
rm apache-tomcat-8.5.5.tar.gz #압축파일 삭제
sudo mv apache-tomcat-8.5.5/ /usr/local/tomcat8 #폴더명을 tomcat8로 바꾸며 이동
cd /usr/local #이동

환경변수 설정

1
2
3
4
5
6
7
8
9
sudo vi /etc/profile
# /etc/profile이 아래의 내용과 같게 등록 i를 누르면 편집모드 활성화
export JAVA_HOME=/usr/local/java
export CATALINA_HOME=/usr/local/tomcat8
export CLASSPATH=.:$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar:$CATALINA_HOME/lib/jsp-api.jar:$CATALINA_HOME/lib/servlet-api.jar
PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
#위 내용 등록 후 편집모드를 빠져나가서 저장
:wq!

1
2
3
source /etc/profile #환경변수 리로드
cd /usr/local/tomcat8/bin/ #이동
./startup.sh #톰캣 실행

#4. was 접속
자 이제 설정도 다했으니 접속을 한번 해보겠습니다.

흠 설정도 다 했는데 왜 접속이 안될까요..
접속이 안되는 이유는 Security Group에 8080포트를 안열어 줬기 때문입니다.
aws는 기본적으로 보안을 위해서 20(SSH)포트를 제외하고 포트가 다 막혀있습니다. 때문에 8080포트를 열어 주기 위해서는 aws console에서 약간의 설정이 필요합니다.


붉은 박스로 표시해놓은 부분은 현재 인스턴스에서 사용중인 시큐리티 그룹을 의미합니다.


붉은 박스로 표시된 Inbound를 클릭!!


붉은 박스로 표시된 Edit을 클릭 후 작은 팝업이 뜨는데 Custom TCP Rule를 선택하고 Port Range에 8080 source에 0.0.0.0 입력 후 Add Rule


짜잔~ 접속하였습니다.
이제 war 파일을 webapps에 배포하기만 하면 접속까지 가능한 상태입니다.