Ошибка 404 AWS Load Balancer с маршрутизацией пути

Я пытаюсь настроить маршрутизацию на основе пути в моем балансировщике нагрузки приложения. У меня есть три целевые группы, настроенные для одного экземпляра ECS, однако, когда я вызываю один из конкретных путей в ALB, я просто получаю 404.

Я могу вызвать три контейнера напрямую (т.е. http://somehost:xxxx) и поменять местами цель последнего Правило для любой из моих целей, поэтому я думаю, что я что-то напутал с путями, но я не могу этого понять.

Вот правила прослушивателя ALB: HTTP: 80

  1. Путь / curly * ==> Вперед к app1-tg
  2. Путь: / larry * ==> Вперед на app2-tg
  3. Путь: / moe * ==> Вперед на app3-tg

У кого-нибудь есть предложения?


person Mike    schedule 26.12.2018    source источник


Ответы (1)


Майк,

Я знаю, что это старый пост, но он может кому-то помочь. Решил подобную проблему недавно.

Цель состоит в том, чтобы на 1 хост-инстансе AWS IIS работали 2 приложения в виде отдельных контейнеров веб-сайтов, с распределенной нагрузкой в ​​AWS в 2 зонах доступности для обеспечения отказоустойчивости и высокой доступности.

Нам нужно было иметь возможность настроить таргетинг на любое приложение на хосте, используя имя приложения в URL-адресе, добавленном к адресу балансировки нагрузки. Я получил эту работу, выполнив 2 вещи:

Фактический физический путь, по которому существует код контейнера, должен отличаться, чтобы путь правила работал. т.е. добавление / app1 или / app2 к правилу LB не будет работать , если путь к папке действительно не содержит / app1 или / app2 в пути к папке.

Поэтому я перекодировал .json, который создает контейнеры, чтобы поместить базовый index.html в /app1/index.html и то же самое для app2.

Путь URL-адреса, который я использовал в «IF path», имел форму «[my LB DNS] / app1» и «[my LB DNS] / app2» - по какой-то причине LB не распознал бы их как допустимые пути. Поэтому я изменил «IF path» на «/ app1 / » и / app2 / ».

Итак, вставка URL-адреса баланса нагрузки и добавление / app1 или / app2 в конце работает и направляет браузер в соответствующий контейнер для «Hello from App1» или «… App2».

person Faye Smelter    schedule 25.06.2019
comment
Дорогая Фейн, не могли бы вы подробнее рассказать об этом? - person Jithin Kumar S; 01.06.2020