Замена Windows для HAProxy

13

Похоже, что этот вопрос уже был опубликован, поэтому я пойду и спрошу.

Я работаю над проектом, который может выиграть от двух-четырех серверов, обрабатывающих входящие запросы к бэкэнд-веб-сервису. Служба не требует SSL, но должна поддерживать отдельные длительные процессы (до 120 секунд).

Этот проект в настоящее время не имеет средств для приобретения аппаратного решения для балансировки нагрузки.

Ранее я использовал HAProxy в качестве решения для этого, и нашел его очень простым и понятным. Существует ли аналогичный продукт для Windows (сервер 2003 или 2008), который предоставляет аналогичные параметры конфигурации и работает как облегченный сервис?

По независящим от меня причинам я не могу настроить Linux-машину (физическую или виртуальную) и поэтому ищу поведение, которое можно развернуть на Windows-машине.

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

GrayWizardx
источник
Какая версия винды?
Джастин Скотт
Windows Server 2003 или 2008
GrayWizardx

Ответы:

4

Может быть, Perlbal ? Это решение для балансировки нагрузки на основе Perl. Я сам с этим не работал, но видел, что на него часто ссылаются, и, поскольку он написан на Perl, есть шанс, что он сработает. Но...

... Google предполагает, что сервер Windows уже имеет встроенную службу балансировки сетевой нагрузки, как обсуждалось здесь и здесь .

larsks
источник
Я буду смотреть в него. Windows LB - это не тот LB, который требуется клиенту, так как ему нужен балансировщик нагрузки прокси для пересылки трафика на два внутренних сервера, которые будут совместно использовать ответ. Я не знаю много о Windows LB, но я понимаю, что это не будет работать для этого проекта.
GrayWizardx
Также Mircosoft NLB и виртуальные среды не подходят друг другу.
aairey
10

Будьте осторожны, я получаю очень негативные отзывы от людей, работающих под управлением Windows LB, что стало основной причиной, по которой они переключились на haproxy. Если вас устраивает haproxy, вы можете создать его на Windows с помощью набора cygwin. Я не проверял это сам, но пользователь, который выполнил порт, сделал. Он также сказал мне, что существует ограничение приблизительно в 1600 одновременных подключений на процесс под Windows, что может быть или не достаточно для вас.

Насколько я понимаю, сборка должна быть такой же простой, как и в Linux: "make". Если вам нужна дополнительная информация от этого пользователя, я предлагаю вам отправить вызов в список рассылки haproxy. В качестве альтернативы, на сервере могут быть люди, которые могут помочь с настройкой среды сборки Cygwin. Пожалуйста, используйте для этого версию 1.3.22 (последняя стабильная).

Вилли Тарро
источник
9

Вы можете использовать NGINX в качестве обратного прокси. Поддерживается на платформе Windows.

Перейдите на домашнюю страницу NGINX для загрузки и установки: домашняя страница NGINX

Существует очень хорошее руководство по настройке балансировки нагрузки: NGINX как балансировщик нагрузки

Коби Мизрахи
источник
Ссылка на учебник больше не работает.
Чау
8

Я знаю, что прошло много времени для вопросов, но если вы хотите что-то для Windows, то решение ARR -> NLB

IIS ARR будет выполнять кэширование содержимого, обратный прокси-сервер, разгрузку SSL. Он не выполняет балансировку нагрузки, для этого вам нужно использовать NLB на веб-серверах. Но комбинация этих двух очень мощная.

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

Маму
источник
1
Да, это ARR, а ARR - «Маршрутизация запросов приложений» для IIS, iis.net/download/applicationrequestrouting
Jesper M
1
ARR пытается балансировать нагрузку на одну машину. Хотя вы можете направлять трафик между двумя разными машинами (и одна из них может быть самим прокси-сервером), вы не можете найти детализированный элемент управления HAPROXY, чтобы просто указывать его на адреса.
Даг
0

Я столкнулся с похожей ситуацией, и это работает для меня, это тот же демон, который вы можете найти в Linux для Windows: http://mattiasgeniar.be/2010/04/14/tcp-traffic-redirection-on-windows/ http: //www.boutell.com/rinetd/

Tincho
источник
Похоже, что последнее обновление rinetd было в апреле 2003 года, более 11 лет назад. Учитывая, что он утверждает, что работает на Windows 95/98 / NT, я передам
HairOfTheDog
0

Я понимаю, что вопрос действительно старый, но некоторые люди могут столкнуться с той же проблемой. Так что самое простое решение - Cygwin. Пример здесь http://zcourts.com/2012/09/29/install-haproxy-on-windows-cygwin-good-for-testing/#sthash.PhJ3odwn.dpbs

Асхат
источник
1
Хотя эта ссылка может ответить на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. Ответы, содержащие только ссылки, могут стать недействительными в случае изменения связанной страницы.
Касперд