일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- node postgresql
- yum설치목록
- 배열컬럼
- intelij mybatis
- 배열크기
- 레드마인
- 레드마인 테마
- redmine
- dotenv
- CentOS
- rpm설치목록
- 메소드한줄
- Redmine theme
- nodejs 환경변수처리
- Node
- pg환경변수
- 멀티 인스턴스
- rpm목록
- intelij sqlmap
- 리액트네이티브
- .env
- node.js postgresql
- tomcat install
- 패키지
- sqlmap 경고
- multi instance
- 레드마인테마
- sqlmap warring
- yum목록
- Java
- Today
- Total
ZeroRadish
[Tomcat] Tomcat 설치하기 - 멀티인스턴스 본문
설치 디렉토리 구조
설치 계정의 home에 sever, java, app 폴더를 생성한다. 이 포스팅에서는 tomcat 계정을 새로 만들고 tomcat 계정 home에서 진행한다.
mkdir server java app
ls -ld $PWD/*
/home/tomcat/app
/home/tomcat/java
/home/tomcat/server
- /home/tomcat/app - Tomcat 인스턴스 관리 위치
- /home/tomcat/java - JDK 관리 위치
- /home/tomcat/server - Tomcat 엔진 관리 위치
Tomcat 공식 사이트
아래 주소는 7, 8, 9 안정화 버젼을 받을수 공식 사이트의 다운로드 페이지이다.
https://tomcat.apache.org/download-70.cgi
https://tomcat.apache.org/download-80.cgi
https://tomcat.apache.org/download-90.cgi
Apache Software Foundation Distribution Directory
아래 주소는 7,8,9 버젼 뿐만 아니라, 지금까지 릴리즈 되었던 모든 버젼을 확인하고 다운로드 받을 수 있다.
https://archive.apache.org/dist/tomcat/
Tomcat7 다운로드 및 압축해제
이 포스팅은 7버젼을 기준으로 진행한다.
Apache Software Foundation Distribution Directory에서 7버젼의 마지막 배포 버젼을 받아보도록 하겠다.
7버젼을 wget을 이용하여 다운로드 한다.
cd ~/server
wget https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.94/bin/apache-tomcat-7.0.94.tar.gz
tar -zxvf apache-tomcat-7.0.94.tar.gz
ls -al
apache-tomcat-7.0.94
apache-tomcat-7.0.94.tar.gz
rm -rf apache-tomcat-7.0.94
Java7 다운로드 및 압축해제
아래 주소로 접속해보면 7은 Java SE 6 이상이 필요하다고 적혀있다.
http://apache.mirror.cdnetworks.com/tomcat/tomcat-7/v7.0.94/README.html
open jdk 7버젼을 wget을 이용하여 다운로드 한다.
cd ~/java
wget https://download.oracle.com/openjdk/jdk7u75/ri/jdk_ri-7u75-b13-linux-x64-18_dec_2014.tar.gz
tar -zxvf jdk_ri-7u75-b13-linux-x64-18_dec_2014.tar.gz
ls -al
java-se-7u75-ri
jdk_ri-7u75-b13-linux-x64-18_dec_2014.tar.gz
rm -rf jdk_ri-7u75-b13-linux-x64-18_dec_2014.tar.gz
Tomcat 엔진과 인스턴스 분리
다운로드 받은 Tomcat 파일을 압축을 푼다.
cd ~/server/apache-tomcat-7.0.94
ls -ld $PWD/*
/home/tomcat/server/apache-tomcat-7.0.94/BUILDING.txt
/home/tomcat/server/apache-tomcat-7.0.94/CONTRIBUTING.md
/home/tomcat/server/apache-tomcat-7.0.94/LICENSE
/home/tomcat/server/apache-tomcat-7.0.94/NOTICE
/home/tomcat/server/apache-tomcat-7.0.94/README.md
/home/tomcat/server/apache-tomcat-7.0.94/RELEASE-NOTES
/home/tomcat/server/apache-tomcat-7.0.94/RUNNING.txt
/home/tomcat/server/apache-tomcat-7.0.94/bin
/home/tomcat/server/apache-tomcat-7.0.94/conf
/home/tomcat/server/apache-tomcat-7.0.94/lib
/home/tomcat/server/apache-tomcat-7.0.94/logs
/home/tomcat/server/apache-tomcat-7.0.94/temp
/home/tomcat/server/apache-tomcat-7.0.94/webapps
/home/tomcat/server/apache-tomcat-7.0.94/work
불필요한 파일 및 폴더를 제거한다.
rm BUILDING.txtCONTRIBUTING.md LICENSE NOTICE README.md RELEASE-NOTES RUNNING.txt
rm -rf temp work webapps/*/
남아있는 구성은 아래와 같다.
ls -ld $PWD/*
/home/tomcat/server/apache-tomcat-7.0.94/bin -- Tomcat 실행시 사용하는 스크립트들이 관리되는 폴더
/home/tomcat/server/apache-tomcat-7.0.94/conf -- 웹어플리케이션에서 필요한 설정 정보들이 관리되는 폴더
/home/tomcat/server/apache-tomcat-7.0.94/lib -- Tomcat에서 사용하는 라이브러리를 보관하는 폴더
/home/tomcat/server/apache-tomcat-7.0.94/logs -- 로그 정보가 수집되는 폴더
/home/tomcat/server/apache-tomcat-7.0.94/webapps -- 기본 어플리케이션 배포 디렉토리로 사용되는 폴더
https://tomcat.apache.org/tomcat-7.0-doc/introduction.html 접속하면 Directories and Files 영역에 폴더 구성에 대한 설명이 쓰여져있다.
work, temp 삭제 했지만 톰켓 기동할때 다시 생성되는 폴더이다.
- work - jsp servlet이 보관되는 폴더
- temp - 임시파일이 보관되는 폴더
하나의 Tomcat 엔진으로 3개의 인스턴스를 구성해보자.
bin, lib는 엔진 역활을 수행하고 나머지 폴더는 각각의 인스턴스를 구성하는데 사용하게 된다.
Tomcat 인스턴스 폴더로 /home/tomcat/app을 사용하기로 위에서 정하였다.
3개의 인스턴스를 서비스하기 위한 3개의 임의의 폴더를 생성한다.
mkdir /home/tomcat/app/foo
mkdir /home/tomcat/app/bar
mkdir /home/tomcat/app/baz
ls -ll /home/tomcat/app/
bar
baz
foo
인스턴스 생성에 필요한 구성을 3개의 폴더에 복사하고 엔진폴더에서는 삭제한다.
temp, work 폴더는 인스턴스 폴더에서 재 생성된다.
cp -rf conf logs webapps /home/tomcat/app/foo/
cp -rf conf logs webapps /home/tomcat/app/bar/
cp -rf conf logs webapps /home/tomcat/app/baz/
rm -rf conf logs webapps
Tomcat 인스턴스 테스트 페이지 생성
테스트 디플로이 폴더를 hello로 생성한다.
mkdir /home/tomcat/app/foo/webapps/hello
mkdir /home/tomcat/app/bar/webapps/hello
mkdir /home/tomcat/app/baz/webapps/hello
hello 하위에 각 인스턴스를 구분할수 있는 index.html 파일을 만든다.
vi /home/tomcat/app/foo/webapps/hello/index.html
<h1>hellow! foo instance ~!</h1>
#이하 vi명령모드
: wq
vi /home/tomcat/app/bar/webapps/hello/index.html
<h1>hellow! bar instance ~!</h1>
#이하 vi명령모드
: wq
vi /home/tomcat/app/baz/webapps/hello/index.html
<h1>hellow! baz instance ~!</h1>
#이하 vi명령모드
: wq
Tomcat Server.xml 설정
이번 포스팅에서는 port만 변경하도록 한다.
port와 redirectPort를 검색하여 인스턴스 순번을 추가하여 다섯자리 포트번호로 변경한다.
vi /home/tomcat/app/foo/conf/server.xml
#이하 vi명령모드 - 포트변경하기 위함
: %s/8005/18085/g
: %s/8080/18080/g
: %s/8443/18443/g
: %s/8009/18009/g
: wq
vi /home/tomcat/app/bar/conf/server.xml
#이하 vi명령모드 - 포트변경하기 위함
: %s/8005/28085/g
: %s/8080/28080/g
: %s/8443/28443/g
: %s/8009/28009/g
: wq
vi /home/tomcat/app/baz/conf/server.xml
#이하 vi명령모드 - 포트변경하기 위함
: %s/8005/38085/g
: %s/8080/38080/g
: %s/8443/38443/g
: %s/8009/38009/g
: wq
Tomcat 인스턴스 시작, 중지 스크립트
아래 스크립트를 참고하여 3개의 인스턴스 폴더에 각각 start.sh, stop.sh 로 생성한다.
이후 start.sh을 실행하여 인스턴스를 기동한다.
#인스턴스 시작 스크립트
CUR_DIR=$(pwd)
#인스턴스명
export TOMCAT_SERVER_NAME=${PWD##*/}
#JAVA 위치export JAVA_HOME = ~/java/java-se-7u75-ri/bin#Tomcat 엔진 위치
export CATALINA_HOME = ~/server/apache-tomcat-7.0.94
export CATALINA_OPTS = "-Denv.servername=${TOMCAT_SERVER_NAME}"
export CATALINA_BASE = ${CUR_DIR}
export CATALINA_TMPDIR = ${CUR_DIR}/temp
export CATALINA_OUT = ${CUR_DIR}/logs/catalina.out
export CATALINA_PID = ${CUR_DIR}/${TOMCAT_SERVER_NAME}.pid
cd $CATALINA_HOME/bin
./startup.sh
#인스턴스 중지 스크립트
CUR_DIR=$(pwd)
#인스턴스명
export TOMCAT_SERVER_NAME= ${PWD##*/}
#JAVA 위치
export JAVA_HOME = ~/java/java-se-7u75-ri/bin
#Tomcat 엔진 위치
export CATALINA_HOME=~/server/apache-tomcat-7.0.94
export CATALINA_OPTS="-Denv.servername=${TOMCAT_SERVER_NAME}"
export CATALINA_BASE=${CUR_DIR}
export CATALINA_TMPDIR=${CUR_DIR}/temp
export CATALINA_OUT=${CUR_DIR}/logs/catalina.out
export CATALINA_PID=${CUR_DIR}/${TOMCAT_SERVER_NAME}.pid
cd $CATALINA_HOME/bin
./shutdown.sh -force
페이지확인