Quantcast
Channel: Nginx Forum - Nginx Mailing List - Russian
Viewing all articles
Browse latest Browse all 3102

Проксирование на aws/alb (no replies)

$
0
0
Здравстуйте,

есть такой сетап:
интернет -> внешний alb -> энджин (ECS-Cluster) -> внутренний alb ->
кучка сервисов (ECS-Cluster).

alb меняет время от времени свой айпи адрес, а энджин новый адрес не
резольвит. Нашол
https://distinctplace.com/2017/04/19/nginx-resolver-explained/. Как
узнать айпи адрес резольвера? ЛоадБалансер прикреплён к двум AZ: CIDR
10.180.24.0/21 http://10.180.24.0/21 и 10.180.32.0/21
http://10.180.32.0/21. Правильно ли я понимаю, что конфигурация должна
выглядить следующим образом (особенно айпи резольвера при ECS):

server {
listen 0.0.0.0:8000 http://0.0.0.0:8000;

location /service {
resolver 10.180.24.2 10.180.32.2 valid=5s;
set $upstream_endpoint http://${ALB_URL};
proxy_pass $upstream_endpoint;
}

location /otherservice {
resolver 10.180.24.2 10.180.32.2 valid=5s;
[...]

Как я понимаю, то при смене айпи есть вероятность в течении 5ти секунд,
что возникнет предыдущая ощибка:

connect() failed (113: No route to host) while connecting to upstream

Как можно избежать этого?

Ну и вопрос удобства. Что можно куда вынести из локейшн? В данный момент
конфиг выглядит следующим образом:

upstream frontend {
server ${ALB_URL};
}

server {
listen 0.0.0.0:8000 http://0.0.0.0:8000;

location /service {
proxy_pass http://frontend;
}

location /otherservice {
proxy_pass http://frontend;
}
[...]

И так как блоков сервер и локейшн много, не хотелось бы копипейстить.
Где и что можно применять стоит в документации, но вопрос в том, будет
ли работать хак с обновлением айпи адреса в резольвере?

С уважением,

Антон


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

Viewing all articles
Browse latest Browse all 3102

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>