Réponses:
La distinction entre les équilibreurs de charge «matériel» et «logiciel» n'a plus de sens. Un équilibreur de charge dit «matériel» est un processeur de classe PC, des interfaces réseau avec des capacités de traitement de paquets et certains logiciels pour les lier tous ensemble. Un équilibreur de charge "logiciel" réalisé sur un bon serveur avec des cartes réseau modernes est ... le même.
Ce que vous obtenez avec des offres commerciales haut de gamme comme F5 ou Citrix Netscaler est:
Avec les équilibreurs de charge de logiciels (open source), vous n'obtenez pas le contraire, ce que vous obtenez dépend du logiciel que vous choisissez et de la façon dont vous procédez. Cela dit, vous verrez généralement:
La différenciation n'est pas vraiment entre "matériel" et "logiciel". Il s'agit de «acheter une pile technologique éprouvée en tant qu'appliance» par rapport à «la construire vous-même». Il y a bien sûr de nombreuses variables à considérer lors de la prise de décision finale (coûts, compétences internes, tolérance aux temps d'arrêt, croissance future, etc.).
Les équilibreurs de charge matérielle ont généralement un ensemble de fonctionnalités plus riche, en particulier lorsque vous arrivez aux gros comme F5. Vous avez également l'avantage supplémentaire d'une plus grande évolutivité en raison du déchargement du matériel.
D'un autre côté, si vous savez que votre trafic ne sera pas trop élevé, les équilibreurs de charge logiciels fonctionnent plutôt bien. Si vous pouvez vous en sortir avec un LB de couche 4, Linux LVS + Keepalived est une très bonne option. Si vous avez besoin de la puissance d'un Layer 7 LB, vous pouvez essayer HAProxy.
Donc, en résumé, les LB HW évoluent généralement mieux que les LB SW.
J'espère que cela t'aides!
Quelques réflexions:
Pro: la machine sur laquelle vous exécutez l'équilibreur de charge pourrait avoir un matériel beaucoup plus puissant, donc serait plus rapide et imposerait moins de latence supplémentaire (bien que cela dépend peu de la vitesse de vos liens avec le monde extérieur).
Inconvénients: un équilibreur de charge matériel n'aura probablement pas plus de puissance de calcul qu'il n'en a besoin (il peut fonctionner sur une puce basée sur Atom ou ARM plutôt que sur un gros processeur Intel / AMD haut de gamme par exemple), il consommera donc moins d'énergie et générera moins chaleur.
Pro: l' installation de votre propre arrangement d'équilibrage de charge logiciel peut vous donner plus de flexibilité dans la configuration et les mises à niveau / modifications ultérieures, où une solution matérielle peut être beaucoup plus une solution de «boîte noire» fermée. Bien que si vous achetez un service géré pour implémenter l'équilibreur de logiciel, cela ne fera aucune différence.
Inconvénients: si vous ne gérez pas l'équilibreur de logiciels (c.-à-d. Que la tâche est externalisée ou que vous achetez le service dans le cadre d'un arrangement d'hébergement géré plus important), vous pourriez trouver les frais d'administration pour maintenir la configuration comme un matériel standard. solution serait moins chère à long terme. N'oubliez pas non plus de prendre en compte votre temps dans les coûts si vous ou votre entreprise gérez l'équilibreur de charge.
105931 sessions per second
et environ 17% d'utilisation du processeur - c'est assez fou pour un seul processeur Xeon de base
Je prendrais également en compte ces points:
Si l'entreprise dispose d'un département informatique avec un spécialiste du réseau, un Hardware LB peut aider à réduire la charge de maintenance de l'équipe de développement.
Parfois, spécialement pour les grandes entreprises, l'adoption d'un nouveau matériel que personne ne sait comment faire fonctionner, implique l'embauche de consultants coûteux ou même un nouvel emploi.
L'équipe de développement déteste une solution matérielle si elle prévoit de mettre l'accent sur les fonctionnalités de l'équilibreur de charge, comme par exemple, pour adopter un déploiement continu.
Apparemment, les LW HW peuvent améliorer la gestion des connexions SSL et donc réduire le nombre total de serveurs d'applications requis: