Maison >Tutoriel système >Linux >Haproxy sur Ubuntu: équilibrage de charge et basculement pour les infrastructures résilientes
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.
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:
Type d'équilibrage de charge:
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:
Commençons par installer et configurer Haproxy sur Ubuntu.
Prérequis:
Étape 1: Installez Haproxy
sudo apt update && sudo apt upgrade -y
sudo apt install haproxy -y
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>
sudo systemctl restart haproxy
Algorithme d'équilibrage de charge:
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.
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>
VRRP avec Keepalived: pour activer le basculement, intégrez Keepalived avec Haproxy.
sudo apt install keepalived -y
/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>
sudo systemctl restart keepalived
Keepalived garantit que le serveur secondaire prend le contrôle de manière transparente lorsque le serveur principal échoue.
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:
maxconn
et timeout
. Problème de connexion:
goulot d'étranglement des performances:
Maintenance:
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!