You may receive the following warning when reloading/configtesting an Nginx configuration that uses upstreams.
$ service nginx configtest nginx: [warn] load balancing method redefined in /etc/nginx/conf.d/upstream.conf:5 nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
This can occur when you have a wrong order of upstream variables in your definition, like this:
$ cat upstream.conf upstream upstream_name { # Use max # keepalive connections keepalive 120; # Use the backend with least number of connections least_conn; # All upstream members defined below server 192.168.1.5:80 weight=24; server 192.168.1.6:80 weight=24; }
You can mix keepalive
and least_conn
, but you should define least_conn
before keepalive
.
With the wrong order, you’ll get a load balancing method redefined error and Nginx won’t start.