recherche
MaisonTutoriel systèmeLinuxHaproxy sur Ubuntu: équilibrage de charge et basculement pour les infrastructures résilientes

HAProxy on Ubuntu: Load Balancing and Failover for Resilient Infrastructure

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

  1. Mettez à jour votre système: sudo apt update && sudo apt upgrade -y
  2. Installation de Haproxy: sudo apt install haproxy -y
  3. 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>
  1. redémarrer haproxy pour appliquer les modifications: sudo systemctl restart haproxy
  2. 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.

  1. Obtenez le certificat SSL.
  2. 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.

  1. Installation de Keepalived: sudo apt install keepalived -y
  2. 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>
  1. 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 et timeout.
  • 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!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Internet fonctionne-t-il sur Linux?Internet fonctionne-t-il sur Linux?Apr 14, 2025 am 12:03 AM

Internet ne s'appuie pas sur un seul système d'exploitation, mais Linux joue un rôle important. Linux est largement utilisé dans les serveurs et les appareils réseau et est populaire pour sa stabilité, sa sécurité et son évolutivité.

Quelles sont les opérations Linux?Quelles sont les opérations Linux?Apr 13, 2025 am 12:20 AM

Le cœur du système d'exploitation Linux est son interface de ligne de commande, qui peut effectuer diverses opérations via la ligne de commande. 1. Les opérations de fichiers et de répertoires utilisent des commandes LS, CD, MKDIR, RM et d'autres commandes pour gérer les fichiers et les répertoires. 2. La gestion des utilisateurs et des autorisations garantit la sécurité du système et l'allocation des ressources via UserAdd, Passwd, ChMOD et d'autres commandes. 3. La gestion des processus utilise PS, Kill et d'autres commandes pour surveiller et contrôler les processus du système. 4. Les opérations réseau incluent Ping, Ifconfig, SSH et d'autres commandes pour configurer et gérer les connexions réseau. 5. Commandes d'utilisation de surveillance et de maintenance du système telles que TOP, DF, DU pour comprendre l'état de fonctionnement du système et l'utilisation des ressources.

Boostez la productivité avec les raccourcis de commande personnalisés à l'aide d'alias LinuxBoostez la productivité avec les raccourcis de commande personnalisés à l'aide d'alias LinuxApr 12, 2025 am 11:43 AM

Introduction Linux est un puissant système d'exploitation favorisé par les développeurs, les administrateurs système et les utilisateurs de l'énergie en raison de sa flexibilité et de son efficacité. Cependant, l'utilisation fréquente de commandes longues et complexes peut être fastidieuse et ER

À quoi sert Linux?À quoi sert Linux?Apr 12, 2025 am 12:20 AM

Linux convient aux serveurs, aux environnements de développement et aux systèmes intégrés. 1. En tant que système d'exploitation de serveurs, Linux est stable et efficace, et est souvent utilisé pour déployer des applications à haute monnaie. 2. En tant qu'environnement de développement, Linux fournit des outils de ligne de commande efficaces et des systèmes de gestion des packages pour améliorer l'efficacité du développement. 3. Dans les systèmes intégrés, Linux est léger et personnalisable, adapté aux environnements avec des ressources limitées.

Outils et cadres essentiels pour maîtriser le piratage éthique sur LinuxOutils et cadres essentiels pour maîtriser le piratage éthique sur LinuxApr 11, 2025 am 09:11 AM

Introduction: sécuriser la frontière numérique avec un piratage éthique basé sur Linux Dans notre monde de plus en plus interconnecté, la cybersécurité est primordiale. Les tests de piratage et de pénétration éthiques sont essentiels pour l'identification de proactive et l'atténuation des vulnérabilités

Comment apprendre les bases de Linux?Comment apprendre les bases de Linux?Apr 10, 2025 am 09:32 AM

Les méthodes d'apprentissage Linux de base à partir de zéro incluent: 1. Comprendre le système de fichiers et l'interface de ligne de commande, 2. Master Basic Commandes telles que LS, CD, MKDIR, 3. Apprenez les opérations de fichiers, telles que la création et l'édition de fichiers, 4. Explorer une utilisation avancée telle que les pipelines et les commandes GREP, 5. Master Debugging Skills and Performance Optimimisation, 6. Amélioration continue des compétences par la pratique et l'exploration.

Quelle est la plus utilisée de Linux?Quelle est la plus utilisée de Linux?Apr 09, 2025 am 12:02 AM

Linux est largement utilisé dans les serveurs, les systèmes intégrés et les environnements de bureau. 1) Dans le domaine du serveur, Linux est devenu un choix idéal pour héberger des sites Web, des bases de données et des applications en raison de sa stabilité et de sa sécurité. 2) Dans les systèmes intégrés, Linux est populaire pour sa personnalisation et son efficacité élevées. 3) Dans l'environnement de bureau, Linux fournit une variété d'environnements de bureau pour répondre aux besoins des différents utilisateurs.

Quels sont les inconvénients de Linux?Quels sont les inconvénients de Linux?Apr 08, 2025 am 12:01 AM

Les inconvénients de Linux incluent l'expérience utilisateur, la compatibilité des logiciels, la prise en charge matérielle et la courbe d'apprentissage. 1. L'expérience utilisateur n'est pas aussi conviviale que Windows ou MacOS, et elle s'appuie sur l'interface de ligne de commande. 2. La compatibilité logicielle n'est pas aussi bonne que les autres systèmes et manque de versions natives de nombreux logiciels commerciaux. 3. La prise en charge matérielle n'est pas aussi complète que Windows, et les pilotes peuvent être compilés manuellement. 4. La courbe d'apprentissage est raide et la maîtrise des opérations de ligne de commande nécessite du temps et de la patience.

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semainesBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Navigateur d'examen sécurisé

Navigateur d'examen sécurisé

Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

Version crackée d'EditPlus en chinois

Version crackée d'EditPlus en chinois

Petite taille, coloration syntaxique, ne prend pas en charge la fonction d'invite de code

DVWA

DVWA

Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

Adaptateur de serveur SAP NetWeaver pour Eclipse

Adaptateur de serveur SAP NetWeaver pour Eclipse

Intégrez Eclipse au serveur d'applications SAP NetWeaver.