В документации сказано, что можно использовать upstream с переменными
(stream module).

----
proxy_pass $upstream;
В этом случае имя сервера ищется среди описанных групп серверов и если не
найдено, то определяется с помощью resolver’а.
----

Однако, в случае изменения айпи адреса для postgres.local  nginx не видит
изменений и продолжает обращаться к старому айпи адресу апстрима.

nginx/1.18.0

----
  upstream postgres {
    server postgres.local:5432;
  }

  map stream $upstream {
    default postgres;
  }

  server {
    listen 5432;

    access_log  /var/log/nginx/stream.access.log  proxy buffer=32k
flush=10s;

    proxy_pass $upstream;
    resolver 10.0.0.2 valid=30s;
  }
----

похоже на баг либо я делаю что-то не верно?
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить