[AWS] EC2에 Apatch & Tomcat 설치

728x90
반응형
SMALL
반응형

 

# Java 설치

JDK 11.0.17

 

## Java 설치

https://docs.aws.amazon.com/ko_kr/corretto/latest/corretto-17-ug/downloads-list.html

# sudo yum update -y

# 설치파일 다운로드
curl -LO https://corretto.aws/downloads/resources/11.0.17.8.1/java-11-amazon-corretto-devel-11.0.17.8-1.x86_64.rpm
sudo yum localinstall java~~

# 설치 파일 제거
rm -rf java~~

# 확인
java -version

 

 

## 환경변수 설정

 

절대 경로 확인 후 복사

which java
> /usr/bin/java

readlink -f /usr/bin/java
> /usr/lib/jvm/java-11-amazon-corretto/bin/java

 

 

 

profile에 환경 변수 추가

sudo vi /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-11-amazon-corretto
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar

 

 

적용

$ source /etc/profile


 

## HostName 변경

sudo hostnamectl set-hostname sample.com

sudo vi /etc/sysconfig/network
HOSTNAME=sample.com 추가

 

 


 

## 사용자 추가

# user 추가
sudo adduser sample

# sample ALL=(ALL) NOPASSWD:ALL 추가
sudo visudo

# user 변경
sudo su - sample

mkdir .ssh
chmod 700 .ssh

cd .ssh
 
touch authorized_keys
chmod 600 authorized_keys

# .ssh/authorized_keys 값 추가
vi authorized_keys

 

## 시간 동기화

EC2의 시간을 Chrony 방식으로 동기화한다.

 

# 시간 확인
date

# EC2 실행될 때마다 Chronyd 방식으로 시간을 동기화 하도록 설정
sudo chkconfig chronyd on

# Chrony가 169.254.169.123 IP 주소를 사용하여 시간 동기화를 하는지 확인
chronyc sources -v

# 시간 동기화 지표 확인
chronyc tracking

# 타입존 설정
# ZONE="Asia/Seoul"
# KST=True
sudo vim /etc/sysconfig/clock

# 현재 타임존 확인
cat /etc/localtime

# 기존 설정 삭제
sudo rm /etc/localtime

# 대한민국 표준 시간대 정보 심볼릭 링크로 설정
sudo ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime

# 시간 확인
date

 


 

# Apach

Apach 2.4.54

 

## Apache 설치

// 설치 가능 버전 확인
$ sudo yum list | grep httpd


# 설치
sudo yum install httpd

# 확인
httpd -version

 


 

# Tomcat 

tomcat 9 

 

## Tomcat 설치

https://tomcat.apache.org/download-90.cgi에서 설치할 다운로드 링크 복사 하기

# 파일 다운로드
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.69/bin/apache-tomcat-9.0.69.tar.gz

# 압축해제
tar xvf apache-tomcat-9.0.58.tar.gz

# 다운로드 파일 제거
rm -rf apache-tomcat-9.0.69.tar.gz

# 이름 변경
mv apache-tomcat-9.0.69/ tomcat9

 


 

## CATALINA_HOME 환경 변수 등록

# profile에 'export CATALINA_HOME=/usr/local/tomcat9' 추가
sudo vi /etc/profile

# 적용
source /etc/profile

# 등록된 변수 확인
echo $CATALINA_HOME

 

 

 

 

반응형

# Apach & Tomcat 연동

mod_jk (tomcat-connector 1.2.48)

 

## mod_jk 설치

# 파일 다운로드
wget -c  https://dlcdn.apache.org/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.48-src.tar.gz

# 압축 해제
tar xvf tomcat-connectors-1.2.48-src.tar.gz

# 다운로드 파일 삭제
rm -rf tomcat-connectors-1.2.48-src.tar.gz

# 빌드 관련 유틸 설치
sudo yum -y install autoconf
sudo yum -y install libtool
sudo yum -y install gcc gcc-c++ httpd-devel

# tomcat connector buildconf 실행 (tomcat-connectors-1.2.48-src/native)
./buildconf.sh

# tomcat connector compile
sudo ./configure --with-apxs=/usr/bin/apxs
sudo make
sudo make install

# 스크립트 완료 이후 설치된 mod_jk 확인
cd /etc/httpd/modules
ls -l | grep 'mod_jk'

 

 


 

## Tomcat 연동을 위한 Apache 설정 파일 생성

 

### workers.properties

$ cd /etc/httpd/conf

// workers.properties 생성
$ sudo vim workers.properties
worker.list=was1

worker.was1.port=8009
worker.was1.host=localhost
worker.was1.type=ajp13

 


 

### httpd.conf

 

sudo vim httpd.conf
# ServerName www.example.com:80 찾아서 변경
ServerName localhost:80


# DocumentRoot "/var/www/html" 찾아서 변경
DocumentRoot "${tomcat home}/webapps/${project name}"


# <Directory "/var/www"> 찾아서 변경
<Directory "${tomcat home}/webapps/${project name}">
    AllowOverride None
    # Allow open access:
    Require all granted
</Directory>


# 맨 하단에 추가
LoadModule jk_module modules/mod_jk.so

<IfModule mod_jk.c>
  # 워커 설정 파일 위치
  JkWorkersFile conf/workers.properties

  # Log 위치
  JkLogFile logs/mod_jk.log

  # Log Format
  JkLogStampFormat "[%y %m %d %H:%M:%S]"

  # Mount 설정
  JkMount /* was1

</IfModule>

 


 

### Tomcat server.xml

# tomcat server 설정 ( ${tomcat directory}/conf )
vi server.xml


# Shutdown port 8005 -> 8006 수정
<Server port="8006" shutdown="SHUTDOWN">


# <!-- Define an AJP 1.3 Connector on port 8009 --> 주석 풀고 설정
<Connector protocol="AJP/1.3"
               address="0.0.0.0"
               port="8009"
               redirectPort="8443"
               secretRequired="false"
               URIEncoding="UTF-8"
            />
            
            
# Host 설정 추가
<Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="false">
              <Context docBase="readingOcean" path="" reloadable="false" />

 

 

## 설정 완료 후 재실행

# apache 재실행
sudo service httpd stop
sudo service httpd start

# tomcat 재실행
{tomcat direcotry}/bin/shutdown.sh
{tomcat direcotry}/bin/startup.sh

 

## 확인

# 확인
ps -ef | grep "httpd\|tomcat"

 

 


 

### Tomcat Log 영어로 전환

vi ${tomcat_home}/bin/catalina.bat
# setlocal 아래에 추가
set "JAVA_OPTS=%JAVA_OPTS% -Duser.language=en"

 

 

반응형
728x90
반응형
LIST