NGINX basic Load Balancer examples
-
sudo vim /etc/nginx/sites-available/lb_example.conf
Round Robin config example:
upstream mywebservers { server 1.2.3.4; server 5.6.7.8; } server { listen 80; location / { proxy_pass http://mywebservers; } }
To make it balance it to the least busy server:
upstream mywebservers { least_conn; server 1.2.3.4; server 5.6.7.8; } server { listen 80; location / { proxy_pass http://mywebservers; } }
To priorities server, you can use weights:
- default weight is 1upstream mywebservers { least_conn; server 1.2.3.4 weight=3; server 5.6.7.8; } server { listen 80; location / { proxy_pass http://mywebservers; } }
Conf Example Including non-active backup:
upstream mywebservers { least_conn; server 1.2.3.4 weight=3; server 5.6.7.8; server 10.20.30.40 backup; } server { listen 80; location / { proxy_pass http://mywebservers; } }
Conf Example for different Listening Ports of Servers:
upstream mywebservers { least_conn; server 1.2.3.4:8081 weight=3; server 5.6.7.8; server 10.20.30.40:8080 backup; } server { listen 80; location / { proxy_pass http://mywebservers; } }