Balancer de încărcare Tomcat cu Apache folosind Proxy Mod și Session Sticky

Configurați Tomcat cu Apache folosind Modul proxy și sesiune lipicioasă


Configurarea echilibrului de încărcare Tomcat cu serverul web Apache utilizând Mod Proxy este destul de ușoară.

Este ușor când urmărești secvența și totul merge bine. Am enumerat următorul pas cu pas despre modul de configurare Apache cu Tomcat pentru a configura Load Balancer folosind Mod Proxy.

O echilibrare a sarcinii este întotdeauna recomandată într-un mediu de producție pentru o mai bună disponibilitate.

Configurare server web Apache

  • Activați proxy_module, proxy_balancer_module și proxy_http_module în httpd.conf al serverului web Apache

LoadModule proxy_module modules / mod_proxy.so
LoadModule proxy_balancer_module modules / mod_proxy_balancer.so
LoadModule proxy_http_module modules / mod_proxy_http.so

Adăugați proxy pass împreună cu numele de echilibru pentru rădăcina contextului aplicației.

În acest exemplu, am o cale proxy ca exemple și nume de balansator ca ulMeu.

Foarte important de inclus stickysession deoarece nu aveți această opțiune, distribuiți aceeași solicitare către mai multe server Tomcat și veți avea probleme de expirare a sesiunii într-o aplicație.

ProxyRequests Off
ProxyPass / exemple de echilibrare: // mycluster stickysession = JSESSIONID
ProxyPassReverse / exemple de echilibrare: // mycluster stickysession = JSESSIONID

BalancerMember http: // localhost: 8080 / exemple route = server1
BalancerMember http: // localhost: 8090 / exemple route = server2

După cum puteți vedea în configurația de mai sus, am adăugat un traseu în BalancerMember, astfel încât valoarea rutei poate fi anexată la ID-ul sesiunii.

Acum, să configurăm Apache pentru a imprima JSESSIONID în jurnalele de acces.

  • Adăugați următoarele în Directiva LogFormat

% {JSESSIONID} C

Ex:

LogFormat "% h% l% u% t "% r" %>s% b "% {Referer} i" "% {User-Agent} i""% {JSESSIONID} C"" combinate

  • Reporniți Apache Web Server

Configurare Tomcat

Trebuie să configurați instanțele tomcat cu același id de rute ca și dvs. la început BalancerMember de mai sus.

  • Adăugați parametrul jvmRoute în server.xml de Tomcat. Aceasta trebuie adăugată în eticheta cu numele motorului.

Instalație Tomcat configurată cu 8080 port

Instalație Tomcat configurată cu 8090 port

  • Reporniți serverul Tomcat

Verificare

Generați o anumită încărcare pe aplicație și verificați jurnalul de acces al serverului apache pentru a vă asigura că solicitarea dvs. este direcționată către o singură instanță tomcat.

Veți observa, de asemenea, că ID-ul sesiunii dvs. este anexat la rută, așa cum se arată în exemplul de mai jos.

Ex:

127.0.0.1 – – [18 / Sep / 2013: 10: 02: 02 +0800] "POST / exemple / servlets / servlet / RequestParamExample HTTP / 1.1" 200 662 "http: // localhost / exemple / servlete / servlet / RequestParamExample" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 06 +0800] "GET / exemple / servlets / servlet / RequestInfoExample HTTP / 1.1" 200 693 "http: // localhost / exemple / servlete /" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 17 +0800] "GET /examples/servlets/reqinfo.html HTTP / 1.1" 200 3607 "http: // localhost / exemple / servlete /" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 20 +0800] "GET / exemple / servlets / servlet / SessionExemple HTTP / 1.1" 200 1124 "http: // localhost / exemple / servlete /" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 26 +0800] "POST / exemple / servlets / servlet / SessionExemple HTTP / 1.1" 200 1142 "http: // localhost / exemple / servlete / servlet / SessionExample" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 28 +0800] "GET / exemple / servlets / servlet / SessionExemple? Dataname = fda&datavalue = fadaf HTTP / 1.1" 200 1159 "http: // localhost / exemple / servlete / servlet / SessionExample" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B4EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 32 +0800] "GET / exemple / servlets / servlet / SessionExample? Dataname = foo&datavalue = bar HTTP / 1.1" 200 1174 "http: // localhost / exemple / servlete / servlet / SessionExample DataName = fda&datavalue = fadaf" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"
127.0.0.1 – – [18 / Sep / 2013: 10: 02: 36 +0800] "GET / exemple / servlets / servlet / RequestHeaderExemple HTTP / 1.1" 200 1423 "http: // localhost / exemple / servlete /" "Mozilla / 5.0 (X11; Linux x86_64; rv: 17.0) Gecko / 20130807 Firefox / 17.0""B80557A1D9B48EC1D73CF8C7482B7D46.server2"

Sper ca acest lucru să vă ajute în configurarea Tomcat Load Balancer cu Proxy Mod Apache și Session Sticky.

Dacă sunteți interesat să aflați despre administrarea Tomcat, verificați acest lucru curs online.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map