Баланс нагрузки на основе IP в nginx

У меня есть два Backend-сервера, работающих на 192.168.0.101:8080 и 192.168.0.102:8080.

У меня nginx работает на 192.168.0.111:80, я хочу заставить nginx обращать трафик в определенных backend srever by IP.

geo $upstream {
        192.168.0.150 backend-1;
        192.168.0.250 backend-2;
        default backend-1;
}

upstream backend-1 {
   ip_hash;
   server 192.168.0.101:8080;
}

upstream backend-2 {
   ip_hash;
   server 192.168.0.102:8080;
}


server {
        listen 80;

        location / {
        proxy_pass http://$upstream;
        proxy_redirect off;
            proxy_set_header Host               $host;
            proxy_set_header X-Forwarded-Host   $host;
            proxy_set_header X-Forwarded-Server $host;
            proxy_set_header X-Real-IP          $remote_addr;
            proxy_set_header X-Forwarded-For    $proxy_add_x_forwarded_for;
        }                                                                    
}

Я запутался в этой конфигурации. Это будет работать так, как оно было? Будет ли каждый запрос, но 192.168.0.150, перейти на бэкэнд-1 (192.168.0.102:8080)? и 192.168.0.250 в бэкэнде-2?

Вопрос: он не перенаправляется на основе IP-адресов. Почему это?

1
задан 31 October 2016 в 13:46

0 ответов

Другие вопросы по тегам:

Похожие вопросы: