Cum să configurați NGINX ca un balancer de încărcare pentru servicii Apache Tomcat

Configurare noua (How To)

Situatie

Există o mulțime de opțiuni atunci când vine vorba de alegerea unei soluții de echilibrare a încărcării pentru serverele Apache Tomcat, Apache HTTPD și Nginx sunt în prezent unele dintre cele mai frecvent utilizate soluții open source.

Nginx este un server web popular open-source, Load Balancer și proxy reverse, cunoscut pentru performanța sa ridicată, stabilitate, set de caracteristici bogate, configurație simplă și consum redus de resurse.

 

Backup

Setare Round Robin Nginx Load Balancer

În acest exemplu vă voi arăta cum se  construiește cluster-ul numit appcluster1  cu un simplu  round-robin load balancer. 

Vom crea un bloc server virtual denumit lbd01.yallalabs.local.conf  sau se poate edita fișierul nginx.conf   și se poate modifica fișierul http :

# cat  /etc/nginx/conf.d/lbd01.yallalabs.local.conf
upstream appcluster1 {
    server TOMCAT1_IP_ADDRESS:8080;
    server TOMCAT2_IP_ADDRESS:8080;
}
server {
  listen       80;
  server_name  tomcat.yallalabs.local www.tomcat.yallalabs.local;

  location / {
    proxy_pass http://appcluster1;
  }
}

Solutie

Pasi de urmat

Setare  Nginx Load Balancer

 

Aici ne vom conecta  în  least_conn , folosind următorul algoritm   în care cererea de intrare este trimisă serverului care are cel mai mic număr de conexiune activă existentă.

 

upstream appcluster2 {
    server TOMCAT1_IP_ADDRESS:8080;
    server TOMCAT2_IP_ADDRESS:8080;
    least_conn;
}
server {
  listen       80;
  server_name  tomcat.yallalabs.local www.tomcat.yallalabs.local;

  location / {
    proxy_pass http://appcluster2;
  }
}

Setare Persistence sau Sticky Nginx Load Balancer

Dacă aplicația dvs. Tomcat necesită persistența sesiunilor de bază, de asemenea cunoscute ca sticky sessions, poți implementa Nginx cu algoritmul  IP Hash load‑balancing .

IP hashing  utilizează adresa IP a vizitatorilor ca o cheie pentru a determina ce gazdă ar trebui selectată pentru a răspunde solicitării. Acest lucru permite vizitatorilor să fie direcționați de fiecare dată către același server.

Pentru a configura persistența sesiunii în Nginx, adăugați directiva ip_hash la blocul din upstream.

upstream appcluster3 {
    server TOMCAT1_IP_ADDRESS:8080;
    server TOMCAT2_IP_ADDRESS:8080;
    ip_hash;
}
server {
  listen       80;
  server_name  tomcat.yallalabs.local www.tomcat.yallalabs.local;

  location / {
    proxy_pass http://appcluster3;
  }
}

Concluzie:

După configurarea Nginx ca  Load Balancer se poate configura pe mai multe servere de Apache Tomcat.

Tip solutie

Permanent

Voteaza

(71 din 142 persoane apreciaza acest articol)

Despre Autor

Leave A Comment?