У нас есть ферма веб-серверов, на которой в настоящее время размещены 2 приложения - оба приложения работают на всех серверах. Мы хотим разделить это, чтобы у нас была выделенная ферма серверов для каждого приложения (у нас есть веские причины для этого).
Мы надеялись иметь один балансировщик нагрузки перед всеми серверами, который будет направлять трафик в правильную ферму на основе имени хоста, но мы хотим поддерживать SSL для веб-серверов.
Кажется, маршрутизаторы, которые нам предлагают, не делают этого. Я ценю, что без SNI это невозможно, но мы ожидаем, что показатели SNI будут присутствовать практически на всем нашем трафике.
Теперь я программист, а не сетевой парень, но когда приходит новый запрос на соединение SSL, я не могу маршрутизатор проверить заголовок SNI и направить к правильной ферме. Я предполагаю, что входящее SSL-соединение идентифицируется {исходный IP: исходный порт}, поэтому он не может запомнить это для последующих входящих пакетов (если SNI присутствует только в первом пакете)?
Насколько я могу сказать, Haproxy делает это, но кажется, что аппаратные балансировщики нагрузки этого не делают. Есть ли для этого какая-то причина, или мы должны настаивать на этом?
(Для последнего защитника, использующего IE на XP, который не включает SNI, мы хотели бы отправлять трафик на старую ферму, и мы будем управлять прокси на новую ферму, когда это необходимо).