L'équilibrage de charge réseau est une méthode permettant de répartir uniformément le trafic réseau entre différents serveurs, améliorant ainsi la disponibilité et les performances de l'ensemble du système. Le système Linux est livré avec certains outils qui peuvent nous aider à réaliser l'équilibrage de la charge réseau. Cet article explique comment utiliser Linux pour l'équilibrage de la charge réseau.
1. Le principe de base de l'équilibrage de charge réseau Linux
Le principe de base de l'équilibrage de charge réseau est de distribuer le trafic réseau sur plusieurs serveurs. Il existe de nombreuses méthodes de distribution, notamment la méthode d'interrogation, la méthode d'interrogation pondérée, la méthode de hachage IP, la méthode du nombre minimum de connexions, etc.
Sous Linux, nous pouvons utiliser la technologie LVS (Linux Virtual Server) pour l'équilibrage de la charge réseau. LVS est une technologie qui distribue le trafic réseau sur plusieurs serveurs. Il se compose d'un planificateur (également appelé équilibreur de charge) et de plusieurs serveurs backend.
2. Installez et configurez LVS
Avant de configurer LVS, nous devons installer les packages logiciels nécessaires, notamment ipvsadm et keepalived. Ces packages logiciels peuvent être installés via la commande yum.
① Installez ipvsadm
Utilisez la commande suivante pour installer le package ipvsadm :
sudo yum install ipvsadm -y
② Installez keepalived
Utilisez la commande suivante pour installer le package keepalived :
sudo yum install keepalived -y
Avant de configurer LVS, nous devons comprendre quelques concepts de base :
Ce qui suit est un exemple de configuration de LVS, en supposant que l'adresse IP de notre planificateur est 192.168.1.1 et que les adresses IP du serveur principal sont 192.168.1.2 et 192.168.1.3.
① Configurez le planificateur
Tout d'abord, installez et configurez le service keepalived sur le planificateur. Modifiez le fichier /etc/keepalived/keepalived.conf et ajoutez la configuration suivante :
! Fichier de configuration pour keepalived
global_defs {
router_id LB_Test
}
vrrp_script chk_http_port {
script "/etc/keepalived/check.sh"
intervalle 2
}
vrrp_instance VI_1 {
état MASTER
interface eth0
virtual_router_id 50
priorité 101
authentification {
auth_type PASS auth_pass 1111
}
virtual_ipaddress {
192.168.1.100
}
track_script {
chk_http_port
}
}
Parmi eux, vrrp_instance est utilisé pour définir les paramètres du routeur virtuel. virtual_router_id est utilisé pour définir l'ID du routeur virtuel, virtual_ipaddress est utilisé pour définir l'adresse IP virtuelle et la priorité est utilisée pour définir la relation actif-veille. plus la priorité est élevée.
Ensuite, créez un fichier de script nommé check.sh pour vérifier si le serveur backend est actif. Enregistrez le contenu du script suivant dans le fichier check.sh :
A=ipvsadm -ln | grep -c "Server"
if [ $A -eq 0 ]; then
echo "failed"
killall keepalived
fi
Description : Quand Lorsque le serveur backend est indisponible, le script met fin au service keepalived.
Exécutez la commande suivante pour que le fichier de configuration prenne effet :
sudo systemctl restart keepalived
À ce stade, la configuration du planificateur est terminée.
② Configurez le serveur backend
Configurez le serveur réel de LVS sur le serveur backend.
Utilisez la commande suivante pour ajouter la configuration du Real Server :
sudo ipvsadm -A -t 192.168.1.100:80 -s rr
Parmi eux, l'option -A est utilisée pour ajouter des règles, -t est utilisée pour définir le l'adresse IP et le port d'écoute, -s est utilisé pour définir les règles de planification et la méthode d'interrogation est utilisée ici.
Ajoutez Real Server aux règles à l'aide des commandes suivantes :
sudo ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.2 -g
sudo ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.3 -g
Parmi eux, l'option -a est utilisée pour ajouter Real Server à la règle, -r est utilisée pour définir l'adresse IP du serveur backend et -g est utilisée pour définir le mode passerelle du serveur backend.
À ce stade, la configuration de LVS est terminée.
3. Testez l'équilibrage de charge réseau
Après avoir terminé la configuration de LVS, nous pouvons tester la fonction d'équilibrage de charge réseau en suivant les étapes suivantes :
curl 192.168.1.100
python -m SimpleHTTPServer 80
curl 192.168.1.2
Après le test ci-dessus, si lors de l'accès au serveur backend, les requêtes peuvent être réparties uniformément sur différents serveurs backend, alors l'équilibrage de la charge réseau peut être considéré comme réussi.
4.Résumé
Cet article explique comment utiliser Linux pour l'équilibrage de charge réseau. Nous installons les progiciels ipvsadm et keepalived, configurons l'adresse IP, le port et les règles de planification du planificateur et du serveur back-end, et enfin testons la fonction d'équilibrage de charge réseau. L'équilibrage de la charge réseau peut améliorer la disponibilité et les performances de l'ensemble du système et aider à gérer les requêtes réseau dans des environnements à haute concurrence, améliorant ainsi l'expérience utilisateur.
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!