본문 바로가기

리눅스

[리눅스] nginx + tomcat 클러스터링 구성

728x90

nginx + tomcat 클러스터링 구성

스트명 아이피 엔진(인스턴스명) 포트 비고
kube-node1 192.168.0.61 nginx 80  
kube-node2 192.168.0.62 tomcat(instance1) 8082, 8005  
kube-node2 192.168.0.62 tomcat(instance2) 8083, 8006  
kube-node3 192.168.0.63 tomcat(instance1) 8082, 8005  
kube-node3 192.168.0.63 tomcat(instance2) 8083, 8006  
아이피 엔진(인스턴스명) Receiver port 포트 AJP 1.3 port 비고
192.168.0.62 tomcat(instance1) 4000 8082, 8005 8009  
192.168.0.62 tomcat(instance2) 4001 8083, 8006 8010  
192.168.0.63 tomcat(instance1) 4002 8082, 8005 8009  
192.168.0.63 tomcat(instance2) 4003 8083, 8006 8010  

nginx 설정

- ip_hash

/etc/nginx/conf.d/default.conf
upstream backend_tomcat {
        ip_hash;
        server 192.168.0.62:8082;
        server 192.168.0.62:8083;
        server 192.168.0.63:8082;
        server 192.168.0.63:8083;
        #keepalive 100;
    }

tomcat server.xml 설정

vim /apps/tomcat/instance1/conf/server.xml
<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
    <Connector port="8082" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <!-- Define an AJP 1.3 Connector on port 8009 -->
    <!--
    <Connector protocol="AJP/1.3"
               address="::1"
               port="8009"
               redirectPort="8443" />
    -->

 

참고URL

- 클러스터링/세션 복제 방법(Apache Tomcat 10) : https://tomcat.apache.org/tomcat-10.1-doc/cluster-howto.html

- nginx를 HTTP 로드 밸런서로 사용 : http://nginx.org/en/docs/http/load_balancing.html

 

728x90