아마존 리눅스(Amazon Linux 2)에 아파치 톰캣(Apache Tomcat) 9.0을 설치하는 방법을 소개한다. 톰캣 설치 전에 자바가 설치되어 있지 않다면 아래의 글에서 자바를 설치하도록 하자.
2022.02.16 - [개발/리눅스] - [Amazon Linux 2] 자바(Java) 8 설치하는 법
1. YUM(Yellow dog Updater, Modified)으로 설치가능한 패키지 확인
YUM 명령어를 통해 톰캣을 설치할 수 있으면 간단하겠지만 현재 기준으로는 7.0만 설치가 가능하다.
sudo yum list | grep tomcat
2. 톰캣 웹사이트에서 9.0 버전 다운로드 주소 확인
그러므로 톰캣 웹사이트에 가서 9.0 버전 파일의 주소를 확인하고 다운로드한다.
아파치 톰캣 웹사이트 주소: https://tomcat.apache.org/download-90.cgi
Core 파일 중에 tar.gz 파일의 주소를 복사하고 아래와 같이 명령어를 작성하여 입력한다.
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.58/bin/apache-tomcat-9.0.58.tar.gz
3. 아파치 톰캣 9.0을 실행할 계정과 그룹 생성
아래의 명령어를 입력하여 아파치 톰캣 9.0을 실행한 계정과 그룹을 생성한다. 참고로 말하면 보안 측면에서 WAS를 기동하는 계정을 별도로 사용하는 것이 좋다. 이 계정은 로그인하지 않을 것이기 때문에 로그인하지 않는 것으로 설정하는 옵션을 입력한다.
sudo groupadd tomcat
useradd -s /bin/nologin -g tomcat tomcat
4. 아파치 톰캣 설치
아래의 명령어를 입력하여 2.에서 다운받은 아파치 톰캣을 압축해제한다.
tar xvfz apache-tomcat-9.0.58.tar.gz
아래의 명령어를 입력하여 아파치 톰캣 디렉토리를 톰캣 계정의 홈 디렉토리로 이동한다.
sudo mv apache-tomcat-9.0.58 /home/tomcat
아래의 명령어를 입력하여 톰캣 서비스 파일을 생성한다.
sudo vi /etc/systemd/system/tomcat.service
아래의 내용을 서비스 파일에 입력한다.
[Unit]
Description=Apache Tomcat 9.0 Web Application Container
After=syslog.target network.target
[Service]
Type=forking
Environment=JAVA_HOME=/usr/lib/jvm/jre
Environment=CATALINA_PID=/home/tomcat/apache-tomcat-9.0.58/temp/tomcat.pid
Environment=CATALINA_HOME=/home/tomcat/apache-tomcat-9.0.58
Environment=CATALINA_BASE=/home/tomcat/apache-tomcat-9.0.58
Environment='CATALINA_OPTS=-Xms256M -Xmx256M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=/home/tomcat/apache-tomcat-9.0.58/bin/startup.sh
ExecStop=/home/tomcat/apache-tomcat-9.0.58/bin/shutdown.sh
#ExecStop=/bin/kill -15 $MAINPID
User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
아래의 명령어를 입력하여 서비스를 등록시킨다.
sudo systemctl daemon-reload
아래의 명령어를 입력하여 톰캣 서비스가 아마존 리눅스가 부팅될 때 자동으로 실행되도록 설정한다.
sudo systemctl enable tomcat.service
아래의 명령어를 입력하여 톰캣 홈 디렉토리 이하의 파일들의 권한을 일괄로 톰캣으로 변경한다.
sudo chgrp -R tomcat /home/tomcat/
sudo chown -R tomcat /home/tomcat/
5. 아파치 톰캣 실행 및 테스트
아래의 명령어를 입력하여 톰캣 서비스를 실행한다.
sudo systemctl start tomcat
'http://IP주소:8080' 으로 이동하여 정상적으로 실행되는지를 확인한다.
아마존 EC2 대시보드로 가서 공인(Public) IPv4 주소를 확인하고 보안 규칙을 설정하면 정상적으로 접속이 가능할 것이다.
6. 톰캣 디렉토리 읽기 권한 부여(Amazon Linux 2만 해당함)
ec2-user 계정으로 /home/tomcat 디렉토리를 읽으려고 하면 접근 거부가 나타날텐데 그 경우 아래와 같이 명령어를 입력하여 ec2-user 계정을 tomcat 그룹에 추가한다.
sudo usermod -aG tomcat ec2-user
groups
groups 명령어를 입력했을때 tomcat이 없으면 운영체제를 재기동 후에 다시 확인하면 잘 반영이 되어 있을 것이다.
'리눅스(Linux) > CentOS' 카테고리의 다른 글
[CentOS] 즉시 재부팅 명령어 (0) | 2022.03.16 |
---|---|
[CentOS] Crontab을 통해 프로그램 스케줄링 (0) | 2022.03.05 |
[CentOS 8] 라라벨(Laravel) 8 설치하고 PHP 내장 웹서버에서 실행하는 방법 (0) | 2021.12.28 |
[CentOS 8] PHP 7.4 버전 설치하는 법 (0) | 2021.12.23 |
[CentOS 7/8] 파일(폴더) 소유주와 소속그룹 변경 (0) | 2021.11.25 |
댓글