Welcome! Log In Create A New Profile

Advanced

Динамический upstream средствами dns в открытой версии nginx

Иван
March 19, 2019 11:32AM
Здравствуйте!


Есть необходимость выбирать апстрим для проксирования на основании
информации из mysql-базы. Есть мысль задействовать для этого DNS-сервер
с поддержкой mysql в бэкэнде (и A\AAAA записи с небольшим, порядка 30-60
секунд TTL), например, powerdns и nginx примерно в такой конфигурации:

Пусть DNS отвечает на 127.0.1.1:53 . У него бэкэнд в мускуле, в котором
сотни A\AAAA записей вида

user1.room1.example.com -> 1.1.1.1

user2.room1.example.com -> 1.10.1.2

user3.room2.example.com -> 1.200.1.100

и т.п.

которые (записи) периодически (раз в несколько часов) обновляет наше ПО.


В nginx на прокси примерно такая конфигурация:

location ~ ^/user/(?<room>\w+)/(?<user>\w+)$ {

    resolver 127.0.1.1;

    proxy_pass http://$user.$room.example.com;

}

Будет ли в такой конфигурации запрос вида GET /user/room2/user3 к прокси
уходить на 1.200.1.100, а GET /user/room1/user2 к прокси уходить на
1.10.1.2,

Когда я последний раз думал над этой схемой, мне казалось, что тут
что-то доступно только в коммерческой подписке.


С уважением, Иван.

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Динамический upstream средствами dns в открытой версии nginx

Иван March 19, 2019 11:32AM

Re: Динамический upstream средствами dns в открытой версии nginx

Maxim Dounin March 19, 2019 11:46AM

Re: Динамический upstream средствами dns в открытой версии nginx

Alexander Azarov March 20, 2019 05:34AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 265
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready