I would like to configure NGINX as a simple 2 ARM load balancer. This is the target scenario:
I have tried this configuration:
http {
upstream backend1 {
server 192.168.1.3;
server 192.168.1.2;
}
server {
listen 80;
location / {
proxy_pass http://backend1;
}
}
}
but it is not working. What am I doing wrong?
CodePudding user response:
http block redefined in default.conf, you could just keep server block in default.conf and move upstream to http block defined in /etc/nginx/nginx.conf
- Edit /etc/nginx/site-enabled/default.conf, just keep the
serverblock
server {
listen 80;
location / {
proxy_pass http://backend1;
}
}
- Edit /etc/nginx/nginx.conf, insert your
upstreamconfigure
http {
...
// insert upstream before the following two `include` commands
upstream backend1 {
server 192.168.1.3;
server 192.168.1.2;
}
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
- Restart nginx
systemctl restart nginxto make your changes take effect.

