반응형
CentOS 7에 NGINX와 Tomcat 멀티 인스턴스를 설치하고 설정하는 방법
1. nginx 설치
필수 패키지 설치
yum install pcre-devel zlib-devel openssl-devel
디렉토리 생성 및 이동
mkdir /app
cd /app/
Nginx 소스 코드 압축 해제
tar xvfz nginx-1.10.3.tar.gz
Nginx 소스 디렉토리로 이동
cd nginx-1.10.3
Nginx 구성 설정
./configure --prefix=/app/nginx --with-http_ssl_module --with-http_gzip_static_module --with-http_stub_status_module
Nginx 컴파일 및 설치
make && make install
Nginx 실행 파일 디렉토리로 이동
cd /app/nginx/sbin/
Nginx 시작
/app/nginx/sbin/nginx
Nginx 프로세스 확인
ps -ef | grep nginx
$ ps -ef | grep nginx
root 12446 1 0 17:33 ? 00:00:00 nginx: master process /app/nginx/sbin/nginx
nobody 12447 12446 0 17:33 ? 00:00:00 nginx: worker process
root 12465 8135 0 17:33 pts/0 00:00:00 grep --color=auto nginx
Nginx 설정 파일 수정
vim /app/nginx/conf/nginx.conf
$ vim /app/nginx/conf/nginx.conf
...
18
19 upstream tomcat{
20 server 127.0.0.1:8081;
21 server 127.0.0.1:8082;
22 keepalive 10;
23 }
24
...
49
50 location / {
51 # root html;
52 # index index.html index.htm;
53 proxy_pass http://tomcat;
54 proxy_redirect off;
55 proxy_set_header Host $host;
56 proxy_set_header X-Real-IP $remote_addr;
57 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
58 proxy_set_header X-Forwarded-Proto $scheme;
59 }
60
2. java 설치
JDK 압축 해제
tar xvfz jdk-8u111-linux-x64.tar.gz
심볼릭 링크 생성
ln -s jdk1.8.0_111 java
tomcat 사용자로 전환
su - tomcat
vim .bashrc
# JAVA_HOME configuration
export JAVA_HOME="/app/java"
export PATH="$PATH:$JAVA_HOME/bin"
환경 변수 설정 적용
source .bashrc
728x90
3. tomcat 설치
Tomcat 압축 해제
tar xvfz apache-tomcat-8.0.38.tar.gz
Tomcat 디렉토리 이름 변경
mv apache-tomcat-8.0.38 was01
Tomcat 인스턴스 복제
cp -rf was01 was02
디렉토리 소유권 변경
chown -R tomcat.tomcat was01 was02
Tomcat 사용자로 전환
su - tomcat
Tomcat 인스턴스 설정 파일 수정
vim /app/was01/conf/server.xml
$ vi /app/was01/conf/server.xml
21 -->
22 <Server port="8501" shutdown="SHUTDOWN">
23 <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
...
68 -->
69 <Connector port="8081" protocol="HTTP/1.1"
70 connectionTimeout="20000"
71 redirectPort="8443" />
...
90 <!-- Define an AJP 1.3 Connector on port 8009 -->
91 <Connector port="8901" protocol="AJP/1.3" redirectPort="8443" />
92
vim /app/was02/conf/server.xml
$ vi /app/was02/conf/server.xml
21 -->
22 <Server port="8502" shutdown="SHUTDOWN">
23 <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
...
68 -->
69 <Connector port="8082" protocol="HTTP/1.1"
70 connectionTimeout="20000"
71 redirectPort="8443" />
...
90 <!-- Define an AJP 1.3 Connector on port 8009 -->
91 <Connector port="8902" protocol="AJP/1.3" redirectPort="8443" />
92
vim .bashrc
# JAVA_HOME configuration
export JAVA_HOME="/app/java"
export PATH="$PATH:$JAVA_HOME/bin"
# WAS startup/shutdown/log aliases
alias was01_startup="/app/was01/bin/startup.sh"
alias was01_shutdown="/app/was01/bin/shutdown.sh -force"
alias was01_log="tail -f /app/was01/logs/catalina.out"
alias was02_startup="/app/was02/bin/startup.sh"
alias was02_shutdown="/app/was02/bin/shutdown.sh -force"
alias was02_log="tail -f /app/was02/logs/catalina.out"
alias all_startup="was01_startup && was02_startup"
alias all_shutdown="was01_shutdown && was02_shutdown"
alias all_log="was01_log && was02_log"
환경 변수 설정 적용
source .bashrc
all_startup
$ all_startup
Using CATALINA_BASE: /app/was01
Using CATALINA_HOME: /app/was01
Using CATALINA_TMPDIR: /app/was01/temp
Using JRE_HOME: /app/java
Using CLASSPATH: /app/was01/bin/bootstrap.jar:/app/was01/bin/tomcat-juli.jar
Using CATALINA_PID: /app/was01/logs/.tomcat_pid
Tomcat started.
Using CATALINA_BASE: /app/was02
Using CATALINA_HOME: /app/was02
Using CATALINA_TMPDIR: /app/was02/temp
Using JRE_HOME: /app/java
Using CLASSPATH: /app/was02/bin/bootstrap.jar:/app/was02/bin/tomcat-juli.jar
Using CATALINA_PID: /app/was02/logs/.tomcat_pid
Tomcat started.
JSP 테스트 파일 생성
vim /app/was01/webapps/ROOT/index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>TOMCAT Instance1 - TOMCAT TEST</title>
</head>
<body>
<h1>TOMCAT TEST</h1>
<pre>
운영체제: <%= System.getProperty("os.arch") %>
데이터모델: <%= System.getProperty("sun.arch.data.model") %>
클래스경로: <%= System.getProperty("java.class.path", ".") %>
라이브러리경로: <%= System.getProperty("java.library.path", ".") %>
파라메터: <%= request.getParameter("param") %> ('한글'이라고 표기되어야 함)
파일인코딩: <%= System.getProperty("file.encoding") %>
시스템캐릭터셋: <%= java.nio.charset.Charset.defaultCharset().name() %>
페이지캐릭터셋: <%= response.getCharacterEncoding() %>
서블릿 경로: <%= application.getRealPath("") %>
</pre>
</body>
</html>
728x90
반응형
'리눅스' 카테고리의 다른 글
Ansible을 설치하고 구성하는 방법 (0) | 2017.04.16 |
---|---|
[기타] GeoIP database update (0) | 2017.04.06 |
[리눅스] Scouter Host Agent 설치 (0) | 2017.03.17 |
[리눅스] Scouter Server 설치 (0) | 2017.03.17 |
OpenSSL을 소스 코드를 사용하여 컴파일하고 업그레이드하는 방법 (0) | 2017.02.20 |