( 참고 블로그 : https://blog.naver.com/PostView.nhn?isHttpsRedirect=true&blogId=hanajava&logNo=221567552041&categoryNo=0&parentCategoryNo=40&viewDate=¤tPage=1&postListTopCurrentPage=1&from=postView
0) 기존 tomcat 백업 후 진행
cp -ar /opt/tomcat /opt/tomcat_20220211
1) instance 생성 및 권한 설정
[root@vtk-cs /opt]# useradd -g tomcat -s /usr/sbin/nologin instance1
[root@vtk-cs /opt/tomcat]# cp -a conf /home/instance1/
[root@vtk-cs /opt/tomcat]# cp -a webapps /home/instance1/
[root@vtk-cs /opt/tomcat]# mkdir /home/instance1/logs
[root@vtk-cs /opt/tomcat]# mkdir /home/instance1/work
[root@vtk-cs /opt/tomcat]# mkdir /home/instance1/bin
[root@vtk-cs /opt/tomcat]# mkdir /home/instance1/temp
[root@vtk-cs /home]# chown instance1:tomcat -R /home/instance1
drwx------ 6 instance1 tomcat 106 2022-02-11 11:19 instance1
2) startup.sh 생성
vim /home/instance1/bin/start.sh
#!/bin/sh
export CATALINA_HOME=/opt/tomcat
export CATALINA_BASE=/home/instance1
export CATALINA_OPTS="-Denv=product -Denv.servername=server1"
cd $CATALINA_HOME/bin
./startup.sh
3) shutdown.sh 생성
vim /home/instance1/bin/shutdown.sh
#!/bin/sh
export CATALINA_HOME=/opt/tomcat
export CATALINA_BASE=/home/instance1
export CATALINA_OPTS="-Denv=product -Denv.servername=server1"
cd $CATALINA_HOME/bin
./shutdown.sh
4) 포트가 겹치지 않도록 server.xml 포트 수정
<Server port="8105" shutdown="SHUTDOWN">
ㄴ 8005에서 8105으로 수정
<Connector port="8180" protocol="HTTP/1.1"
ㄴ 8080에서 8180으로 수정
redirectPort="81443" />
ㄴ 8443에서 81443으로 수정
port="8109"
redirectPort="81443" />
ㄴ 8009, 8443 에서 8109, 81443으로 수정
5) 스크립트 파일 실행권한 추가
[root@vtk-cs /home/instance1]# chmod +x *.sh
-rwxr-xr-x 1 root root 252 2022-02-11 11:45 shutdown.sh
-rwxr-xr-x 1 root root 1463 2022-02-11 11:43 start.sh
6) 실행
[root@vtk-cs /home/instance1/bin]# ./startup.sh
Using CATALINA_BASE: /home/instance1
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /home/instance1/temp
Using JRE_HOME: /usr/lib/jvm/java-1.8.0/jre
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS: -Denv=product -Denv.servername=server1
Tomcat started.
7) 실행 프로세스 확인
<기존>
[root@vtk-cs /home/instance1]# ps -ef | grep tomcat
root 7207 1 0 04:17 ? 00:00:49 /usr/lib/jvm/java-1.8.0/jre/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
-Dcatalina.base=/opt/tomcat -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/opt/tomcat/temp org.apache.catalina.startup.Bootstrap start
<변경 후>
[root@vtk-cs /home/instance1/bin]# ps -ef | grep tomcat
root 30694 1 49 14:01 pts/0 00:00:09 /usr/lib/jvm/java-1.8.0/jre/bin/java -Djava.util.logging.config.file=/home/instance1/conf/logging.properties
-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
-Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Denv=product -Denv.servername=server1 -Dignore.endorsed.dirs= -classpath /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
-Dcatalina.base=/home/instance1 -Dcatalina.home=/opt/tomcat -Djava.io.tmpdir=/home/instance1/temp org.apache.catalina.startup.Bootstrap start
8) 권한 변경
8-1) 스크립트 수정
ㄴ root 권한이 아닌 tomcat 권한으로 실행
#cd $CATALINA_HOME/bin
#./startup.sh
ㄴ 주석 처리
su - tomcat -c $CATALINA_HOME/bin/startup.sh
8-2) 실행시 에러 발생
[root@vtk-cs /home/instance1/bin]# ./startup.sh
-bash: /opt/tomcat/bin/startup.sh: Permission denied
8-3) 권한 수정 후 조치 완료
[root@vtk-cs /opt]# chown -R tomcat:tomcat tomcat
[root@vtk-cs /home/instance1/bin]# ./startup.sh
Using CATALINA_BASE: /opt/tomcat
Using CATALINA_HOME: /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME: /usr/lib/jvm/java-1.8.0/jre
Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.
'On-premise > Tomcat' 카테고리의 다른 글
| tomcat(톰캣) 리다이렉트 설정 - tomcat 단독으로 사용하는 경우에 해당 (0) | 2023.11.06 |
|---|---|
| openjdk가 아닌 단순 java(jdk) 설치 (0) | 2023.11.06 |
| apache-tomcat (JSP 테스트 페이지 연동 확인하기) (0) | 2023.11.06 |
| Tomcat SNI 기능 (0) | 2023.11.06 |
| Tomcat 설정시 도메인명, DocumentRoot 경로 설정 하는 방법 (0) | 2023.11.06 |