


Haproxy sur Ubuntu: équilibrage de charge et basculement pour les infrastructures résilientes
Introduction
dans l'environnement numérique au rythme rapide d'aujourd'hui, assurer la disponibilité et les performances des applications est essentielle. L'infrastructure moderne nécessite des solutions puissantes pour allouer efficacement le trafic, en maintenant la disponibilité des services même en cas de défaillance du serveur. haproxy En tant que norme réelle pour l'équilibrage et le basculement de la charge haute performance, il a vu le jour.
Cet article explore la synergie entre Haproxy et Ubuntu, l'une des distributions Linux les plus populaires. De l'installation à la configuration avancée, nous allons plonger dans la façon dont Haproxy peut transformer votre infrastructure avec les capacités d'équilibrage et de basculement de charge.
Explication détaillée de l'équilibrage de la charge
L'équilibrage de charge est le processus d'allocation du trafic réseau entrant vers plusieurs serveurs. En équilibrant la charge, il garantit qu'aucun serveur unique n'est dépassé, améliorant ainsi les performances, la fiabilité et la tolérance aux pannes.
Avantages principaux:
- Évolutivité: Formation du trafic croissant en ajoutant plus de serveurs.
- Fiabilité: Facile l'impact de la défaillance du serveur en achetant le trafic vers un serveur normal.
- Performances: Réduire la latence en distribuant uniformément les charges de travail.
Type d'équilibrage de charge:
- Couche 4 (couche de transport): Distribuez le trafic en fonction des informations IP et du port.
- Couche 7 (couche d'application): prendre des décisions de routage basées sur des données au niveau de l'application (telles que les en-têtes HTTP).
Concept de basculement
Le basculement garantit la continuité en redirigeant automatiquement le trafic vers des ressources de sauvegarde en cas de défaillance majeure des ressources. C'est la pierre angulaire de la configuration Haute disponibilité (ha) .
Avec haproxy, le basculement est transparent:
- Si le serveur backend n'est pas disponible, Haproxy le détectera par le biais d'un contrôle de santé.
- Le trafic sera redirigé vers d'autres serveurs disponibles, conservant ainsi un service ininterrompu.
Réglez Haproxy sur Ubuntu
Commençons par installer et configurer Haproxy sur Ubuntu.
Prérequis:
- un serveur Ubuntu (recommandé d'utiliser 20,04 ou plus).
- Plusieurs serveurs backend pour tester l'équilibrage de la charge.
- Compétences de base de la ligne de commande Linux.
Étape 1: Installez Haproxy
- Mettez à jour votre système:
sudo apt update && sudo apt upgrade -y
- Installation de Haproxy:
sudo apt install haproxy -y
- Vérifiez l'installation:
haproxy -v
Étape 2: Configurez Haproxy
Modifier /etc/haproxy/haproxy.cfg
Fichier de configuration:
<code>global log /dev/log local0 log /dev/log local1 notice maxconn 2048 daemon defaults log global option httplog option dontlognull timeout connect 5000ms timeout client 50000ms timeout server 50000ms frontend http_front bind *:80 default_backend http_back backend http_back balance roundrobin server server1 192.168.1.101:80 check server server2 192.168.1.102:80 check</code>
- redémarrer haproxy pour appliquer les modifications:
sudo systemctl restart haproxy
- Testez en accédant à l'adresse IP du serveur. Haproxy allouera les demandes entre les backends.
Configuration avancée
Algorithme d'équilibrage de charge:
- Sondage: Allouer séquentiellement les demandes.
- Nombre de connexions: acheminée vers le serveur avec les connexions les moins actives.
- Source: Assurez-vous que le client est toujours acheminé vers le même serveur.
Mettez à jour la directive balance
dans le backend en conséquence.
Vérification de la santé: La vérification de la santé garantit que le trafic est envoyé uniquement aux serveurs normaux. check
L'instruction effectue des contrôles de santé réguliers.
terminaison SSL: pour protéger le trafic, configurez Haproxy pour gérer la terminaison SSL.
- Obtenez le certificat SSL.
- Mettre à jour la configuration pour utiliser https:
frontend https_front bind *:443 ssl crt /etc/haproxy/certs/example.pem default_backend http_back
Liste des contrôles d'accès (ACL): Filtrez le trafic à l'aide de l'ACL:
<code>frontend http_front acl is_api path_beg /api use_backend api_back if is_api</code>
Activer la haute disponibilité
VRRP avec Keepalived: pour activer le basculement, intégrez Keepalived avec Haproxy.
- Installation de Keepalived:
sudo apt install keepalived -y
- Configuration Keepalived (
/etc/keepalived/keepalived.conf
):
<code>vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass mypassword } virtual_ipaddress { 192.168.1.100 } }</code>
- redémarrer Keepalived:
sudo systemctl restart keepalived
Keepalived garantit que le serveur secondaire prend le contrôle de manière transparente lorsque le serveur principal échoue.
Suivi et réglage des performances
HAPROXY STATISTIQUES PANNEL: Activer le panneau pour une surveillance en temps réel:
<code>listen stats bind *:8404 stats enable stats uri /stats stats auth admin:password</code>
Accédez à lui dans http://<server-ip>:8404/stats</server-ip>
.
Compétences d'optimisation:
- Ajustez les paramètres
maxconn
ettimeout
. - Utilisez la compression GZIP pour le trafic HTTP.
- Surveiller les exceptions dans le journal.
Cas d'utilisateurs et scénarios réels
- Microservices: Attribuez des demandes d'API à plusieurs services.
- Application Web: Gérer les pointes de trafic en étendant les serveurs backend.
- Équilibrage de charge de la base de données: Optimiser les opérations de lecture et d'écriture.
Dépannage des FAQ
Problème de connexion:
- Vérifiez les règles du pare-feu.
- Vérifiez la vérification de la santé du serveur.
goulot d'étranglement des performances:
- Ajouter l'ulimit du descripteur de fichier.
- Optimiser la configuration du serveur backend.
Maintenance:
- Configuration de la sauvegarde toujours.
- Appliquer des mises à jour pendant le faible trafic.
Conclusion
En combinant Haproxy et Ubuntu, vous obtenez une combinaison puissante pour gérer le trafic et assurer la disponibilité. Avec les étapes ci-dessus, vous pouvez créer une infrastructure résiliente qui peut gérer des charges élevées et des défaillances de serveurs.
Commencez à essayer Haproxy maintenant et débloquez le plein potentiel des capacités du système Ubuntu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Compter efficacement les fichiers et les dossiers dans Linux: un guide complet Savoir compter rapidement les fichiers et les répertoires dans Linux est crucial pour les administrateurs système et toute personne qui gère les grands ensembles de données. Ce guide démontre en utilisant la commande simple-L

La gestion efficace des comptes d'utilisateurs et des abonnements de groupe est crucial pour l'administration du système Linux / Unix. Cela garantit un contrôle approprié des ressources et des données. Ce tutoriel détaille comment ajouter un utilisateur à plusieurs groupes dans les systèmes Linux et Unix. Nous

Le noyau Linux est le composant central d'un système d'exploitation GNU / Linux. Développé par Linus Torvalds en 1991, il s'agit d'un noyau Unix, monolithique, monolithique, modulaire et multitâche. Dans Linux, il est possible d'installer plusieurs noyaux sur un chant

Outil de gestion de l'autorisation d'application FlatPak: guide de l'utilisateur FlatSeal Flatpak est un outil conçu pour simplifier la distribution et l'utilisation du logiciel Linux. Étant donné que les applications FlatPak sont situées dans cet environnement de bac à sable, elles doivent demander des autorisations pour accéder à d'autres parties du système d'exploitation, des appareils matériels (tels que Bluetooth, Network, etc.) et des sockets (tels que PulseAudio, SSH-Auth, Cups, etc.). Ce guide vous guidera sur la façon de configurer facilement Flatpak avec FlatSeal sur Linux

Ce bref guide explique comment taper le symbole de roupies indien dans les systèmes d'exploitation Linux. L'autre jour, je voulais taper "Indian Rupee Symbol (₹)" dans un document Word. Mon clavier a un symbole de roupie dessus, mais je ne sais pas comment le taper. Après

Avez-vous déjà voulu enregistrer vos vidéos préférées sur Internet? Que ce soit une vidéo de chat drôle ou un tutoriel que vous souhaitez regarder plus tard, YT-DLP est là pour vous aider! Dans ce tutoriel complet YT-DLP, nous expliquerons ce qu'est YT-DLP, comment installer I

Linux est mieux utilisé comme gestion de serveurs, systèmes intégrés et environnements de bureau. 1) Dans la gestion des serveurs, Linux est utilisé pour héberger des sites Web, des bases de données et des applications, assurant la stabilité et la fiabilité. 2) Dans les systèmes intégrés, Linux est largement utilisé dans les systèmes électroniques intelligents et automobiles en raison de sa flexibilité et de sa stabilité. 3) Dans l'environnement de bureau, Linux fournit des applications riches et des performances efficaces.

Linus Torvalds a publié Linux Kernel 6.14 Release Candidate 6 (RC6), ne signalant aucun problème significatif et en gardant la sortie sur la bonne voie. Le changement le plus notable dans cette mise à jour traite d'un problème de signature de microcode AMD, tandis que le reste des mises à jour
