Назад | Перейти на главную страницу

Несколько серверов, несколько доменных имен, один внешний IP-адрес, IIS 7

Я просмотрел сообщения и веб-листинг и не нашел того, что мне нужно, поэтому посмотрю, смогу ли я здесь что-то понять.

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

Итак, вот настройка. Мы пытаемся перенести нашу архитектуру с одного сервера базы данных (ms sql) в паре с одним веб-сервером (IIS 7) для всех наших клиентов на несколько пар db / веб-сервер, которые выполняют в основном одну и ту же задачу, но вместо одной огромной of control db, они будут ограничены меньшими подмножествами. Эту часть я выполнил, не теряя много сна. Проблема в том, что теперь у нас будет несколько доменов, пытающихся разрешить один и тот же IP-адрес, что не является проблемой, если все сайты были размещены на одном веб-сервере, но каждое доменное имя является собственным веб-сервером с собственным сертификатом безопасности ssl.

Например, www.example.com, www2.example.com, ww3.example.com все относятся к разным серверам в одной серверной стойке за одним и тем же внешним IP-адресом. Я не уверен, будут ли работать обратные прокси-серверы или как это настроить по отношению к SSL.

Есть ли аппаратная установка, на которую я мог бы взглянуть, которая могла бы разрешать входящий трафик с порта 80 на IP-адрес на основе информации URL-адреса?

Есть ли программное решение, которое не будет мешать SSL входящему трафику, который может маршрутизироваться от шлюза к нужному компьютеру?

Все, что я нашел в Google и в разных местах, предназначено для Apache или IIS, где только один веб-сервер просто меняет привязку к URL-адресам. Также упоминались заголовки ... но я так мало знаю, что не уверен, какой будет правильный / лучший / самый безопасный подход.

Для получения дополнительной информации я использую SQL Server 2008 R2 и Windows Server 2008 R2 на этих машинах, и я ограничен решением только для Windows. Под капотом мы используем asp.net/iis 7.0

ОТРЕДАКТИРОВАННАЯ ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ: Я ищу несколько доменных имен с подстановочными знаками или многодоменным сертификатом, поэтому префикс www будет другим ... www.example.com, www2.example.com, www3.example.com. Каждый набор доменных имен будет относиться к подмножеству наших клиентов, поэтому первая группа будет использовать www.example.com, а группа 2 будет использовать www2.example.com. Поэтому, когда наше клиентское приложение ищет веб-службу, оно будет знать, какую веб-службу использовать, но это разные машины. Это будет происходить в коде, поэтому конечные пользователи не узнают, что архитектура изменилась.

Например, наша клиентская программа вызывает www.example.com/webService/someForm.aspx для работы с базой данных, поэтому вместо этого, если ее группа 2, ей нужно будет вызвать www2.example.com/webService/someForm.aspx, который находится в том же месте как www.example.com/webService/someForm.aspx, но если вы не перейдете на правильный сервер, никогда не сможете найти какие-либо данные.

Я надеюсь, что это прояснило немного больше того, что мне нужно.

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

Что касается решений для Linux, хотя мне было бы комфортно работать с Linux и разбираться в нем, начальство не знает Linux и не принимает решение, требующее его использования.

Было бы полезно, если бы вы могли быть более конкретными в своих желаниях - вы пытаетесь иметь одно доменное имя, например, www.example.com, для распространения коллекции веб-серверов?

Если я правильно понимаю ваш вопрос, вам нужно обратить внимание на балансировщик нагрузки. Существует множество различных вариантов, от аппаратных устройств высокого класса до недорогих / бесплатных решений на базе Linux. Мне не очень повезло с программными решениями на базе Windows. В вашем случае я бы порекомендовал прибор.

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

Ответ TL; DR: Да, вам нужен обратный прокси. Все остальное - деталь реализации.