I am using socket file for accessing my application with nginx. my application consist of three server listening on 8080, 8081, 8082. server configuration under /etc/nginx/sites-available/config-file is below
server {
listen 8080 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name my-server-one;
location / {
include uwsgi_params;
uwsgi_pass unix:/tmp/server_one.sock;
}
server {
listen 8081 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name my-server-two;
location / {
include uwsgi_params;
uwsgi_pass unix:/tmp/server_two.sock;
}
server {
listen 8082 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name my-server-two;
location / {
include uwsgi_params;
uwsgi_pass unix:/tmp/server_three.sock;
}
my question is how can i apply load balance with upstream? like below upstream container
upstream myserver {
server localhost:8080;
server localhost:8081;
server localhost:8082;
}
Thanks i found the solution finally and want to share
for setting up nginx load balancer i added the .sock file in upstream and pass the upstream to uwsgi_pass
nginx load balancer with socket
upstream myserver {
server unix:///tmp/server_one.sock;
server unix:///tmp/server_two.sock;
server unix:///tmp/server_three.sock;
}
the /etc.nginx/sites-available/nginx-config files are below
server {
listen 8080 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name my-server-one;
location / {
include uwsgi_params;
uwsgi_pass myserver;
}
server {
listen 8081 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name my-server-two;
location / {
include uwsgi_params;
uwsgi_pass myserver;
}
server {
listen 8082 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name my-server-two;
location / {
include uwsgi_params;
uwsgi_pass myserver;
}