Remplacement de Windows pour HAProxy

13

Il ne semble pas qu'il y ait une question similaire à celle déjà publiée, donc je vais aller de l'avant et demander.

Je travaille sur un projet qui pourrait bénéficier de la présence de deux à quatre serveurs gérant les requêtes entrantes vers un webservice backend. Le service ne nécessite pas SSL mais doit prendre en charge des processus de longue durée occasionnels (jusqu'à 120 secondes).

Ce projet ne dispose pas actuellement de financement pour acheter une solution d'équilibrage de la charge matérielle.

J'ai déjà utilisé HAProxy comme solution pour cela, et l'ai trouvé très simple et direct. Existe-t-il un produit similaire pour Windows (serveur 2003 ou 2008) qui offre des options de configuration similaires et fonctionne comme un service léger?

Pour des raisons indépendantes de ma volonté, je ne peux pas configurer une machine Linux (physique ou virtuelle) et je recherche donc un comportement pouvant être déployé sur une machine Windows.

Je ne trouve que Perlbal qui semble appartenir à cette catégorie. Afin de ne pas garder cela ouvert indéfiniment, je donnerai crédit à la seule réponse.

GrayWizardx
la source
Quelle version de Windows?
Justin Scott
Windows Server 2003 ou 2008
GrayWizardx

Réponses:

4

Peut-être Perlbal ? Il s'agit d'une solution d'équilibrage de charge basée sur Perl. Je ne l'ai pas travaillé moi-même mais je l'ai vu souvent référencé et, comme il est écrit en Perl, il y a de fortes chances que cela fonctionne. Mais...

... Google suggère que le serveur Windows dispose déjà d'un service d'équilibrage de charge réseau intégré, comme indiqué ici et ici .

larsks
la source
Je vais l'examiner. Windows LB n'est pas le LB souhaité par le client car il souhaite un équilibreur de charge proxy pour transférer le trafic vers deux serveurs principaux qui partageront la réponse. Je ne connais pas grand chose à Windows LB mais je crois que cela ne fonctionnera pas pour ce projet.
GrayWizardx
De plus, Mircosoft NLB et les environnements virtuels ne vont pas bien ensemble.
aairey
10

Soyez prudent, j'ai des rapports très négatifs de la part de personnes utilisant Windows LB, ce qui était la principale raison pour laquelle ils sont passés au haproxy. Si vous êtes satisfait du haproxy, vous pouvez le construire sur Windows en utilisant la suite cygwin. Je ne l'ai pas testé moi-même, mais l'utilisateur qui a effectué le port l'a fait. Il m'a également dit qu'il y avait une limite à environ 1600 connexions simultanées par processus sous Windows, ce qui peut ou non être suffisant pour vous.

D'après ma compréhension, la construction devrait être aussi simple que sous Linux: "make". Si vous avez besoin de plus d'informations de cet utilisateur, je vous invite à envoyer un appel sur la liste de diffusion haproxy. Alternativement, il y a certainement des gens ici sur serverfault qui peuvent aider à mettre en place un environnement de build cygwin. Veuillez utiliser la version 1.3.22 (dernière version stable) pour cela.

Willy Tarreau
la source
9

Vous pouvez utiliser NGINX comme proxy inverse. Il a pris en charge sur la plate-forme Windows.

Accédez à la page d'accueil de NGINX pour le téléchargement et l'installation: page d'accueil de NGINX

Il y a un très bon tutoriel pour le configurer pour servir l'équilibrage de charge: NGINX comme équilibreur de charge

Koby Mizrahy
la source
Le lien vers le tutoriel ne fonctionne plus.
Chau
8

Je sais que cela fait longtemps que la question est posée, mais si vous voulez quelque chose pour Windows, la solution est ARR -> NLB

IIS ARR effectuera la mise en cache du contenu, le proxy inverse et le déchargement SSL. Il n'effectue pas d'équilibrage de charge pour cela, vous devez utiliser NLB sur les serveurs Web. Mais la combinaison est que ces deux sont très puissants.

De plus, si vous finissez par implémenter une sorte de solution, mentionnez-le dans ce fil afin que les utilisateurs qui tombent sur ici puissent profiter de votre expérience.

Mamu
la source
1
Oui, ARR est-ce - et ARR est "Application Request Routing" pour IIS, iis.net/download/applicationrequestrouting
Jesper M
1
ARR a du mal à effectuer l'équilibrage de charge sur une seule machine. Bien que vous puissiez diriger le trafic entre deux machines différentes (et l'une d'entre elles peut être le proxy lui-même), vous n'avez pas le contrôle granulaire de la recherche que vous avez avec HAPROXY pour pouvoir simplement le pointer vers des adresses.
Doug
0

Je comprends que la question est vraiment ancienne, mais certaines personnes peuvent toujours faire face au même problème. La solution la plus simple est donc Cygwin. L'exemple est ici http://zcourts.com/2012/09/29/install-haproxy-on-windows-cygwin-good-for-testing/#sthash.PhJ3odwn.dpbs

Askhat
la source
1
Bien que ce lien puisse répondre à la question, il est préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien de référence. Les réponses de lien uniquement peuvent devenir invalides si la page liée change.
kasperd