Можете ли вы использовать Datapower для маршрутизации входящего трафика c на различные серверы приложений на основе IP-адреса пользователей - PullRequest
0 голосов
/ 25 мая 2020

Я пытаюсь понять, можно ли направлять запросы пользователей на serverA или serverB на основе их IP-адреса или имени хоста.

В настоящее время пользователи получают доступ к приложению через URL-адрес https://thisismyprodserver: 9999 давайте назовем этот serverA, и теперь компания хочет настроить serverB и развернуть здесь новый код. Затем они хотят отфильтровать некоторых пользователей, чтобы использовать serverB для тестирования, но при этом они не знают никакой разницы, поскольку они по-прежнему получают доступ к своему приложению, используя тот же URL. Они не хотят, чтобы пользователь видел разницу во внешнем интерфейсе. После того, как небольшое количество пользователей протестирует обновленное приложение на serverB, они направят всех оставшихся пользователей на serverB, который теперь станет рабочим.

Я надеялся, что Datapower сможет вмешаться и направить запрос на любой из серверовA или serverB на основе IP-адреса входящих пользователей.

Текущий поток - запрос USER <-> WebServer <-> AppServer. Мне было интересно, может ли Datapower вмешаться и изменить поток на USER Request -> WebServer - > IDG -> ServerA -> ServerB

Приложение работает в WAS v9, а веб-сервер - Apache 2,4

Я также хочу посмотреть, можно ли это сделать через веб-сервер, но хотел бы интегрировать IDG в приложение.

1 Ответ

0 голосов
/ 11 июня 2020

Ваш вопрос немного неясен, но лучший вариант, конечно, сделать это в балансировщике нагрузки, используя пул с правилами для направления разных IP-адресов на разные конечные точки.

Если у вас есть TLS / SSL сертификат на экземпляре, который они «ударили», вы не можете «перенаправить» соединение в любом случае, поэтому в этом случае ваш единственный вариант - использовать второй экземпляр как «серверную» службу, а первый как «прокси» или используйте открытый URL-адрес, чтобы получить данные из второго и вернуться к первому. Вы также можете вернуть 301 redirect, но есть много служб / программного обеспечения, которым это не нравится в реализации API / службы. Ни один из этих двух вариантов не делает то, к чему вы стремитесь, поскольку нет четкого пути к окончательной миграции ко второму блоку, который вы ищете. MPGW, который направляет службу либо на 127.0.0.1:xxxx, либо на другой блок в зависимости от IP-адреса источника запроса. Таким образом, вы можете иметь одинаковые службы на обоих устройствах, и запрос всегда попадет в одну и ту же «прокси-службу». Это также известно как «связанные службы» в DataPower lin go ...

...