当前位置:网站首页>Cluster I - LVS Load Balancing Cluster Nat Mode and LVS Load Balancing Field Deployment
Cluster I - LVS Load Balancing Cluster Nat Mode and LVS Load Balancing Field Deployment
2022-06-21 21:12:00 【FYR】
Catalogue des articles
1 Cluster
Cluster,Cluster、Cluster,Composé de plusieurs hôtes,Mais à l'extérieur,Se comporter comme un tout,Un seul accès est disponible(Nom de domaine ouIP),équivalent à un ordinateur central
1.1 Problèmes et solutions pour les Clusters
Il y a un problème.
Dans les applications Internet,Avec les performances du site sur le matériel、Vitesse de réponse、Stabilité du Service、Les exigences en matière de fiabilité des données augmentent,Un seul serveur ne peut pas répondre aux exigences d'équilibrage de charge et de disponibilité élevée
Solutions
- Utilisation de petits modèles coûteux、Ordinateur central
- Construire un cluster de services avec plusieurs serveurs ordinaires relativement bon marché
En consolidant plusieurs serveurs,UtiliserLVSPour une disponibilité élevée du serveur et un équilibrage de charge,Et dans le mêmeIPAdresse pour fournir le même service à l'extérieur.
Une technologie de regroupement couramment utilisée dans les entreprises——LVS(Linux Virtual Server ,LinuxServeur virtuel).
1.2 Classification des grappes
Différences selon les objectifs ciblés par le Groupe,Peut être divisé en trois
Cluster d'équilibrage de charge(Load Balance Cluster)
Améliorer la réactivité du système d'application、Traiter autant de demandes d'accès que possible、Réduire les retards comme objectif,Obtenir une forte concurrence、Charge élevée(LB)Performance globale.
LBRépartition de la charge basée sur l'algorithme de dérivation du noeud maître,Partager les demandes d'accès des clients à plusieurs noeuds serveur,Pour décharger l'ensemble du système.Clusters très disponibles(High Availability Cluster)
Améliorer la fiabilité du système d'application、Réduire au minimum les temps d'interruption,Assurer la continuité des services,Haute disponibilité atteinte(HA) L'effet de tolérance aux pannes.
HALes modes de fonctionnement du système sont duplex et Master slave.,Duplex signifie que tous les noeuds sont en ligne en même temps;Maître esclave n'a que le noeud maître en ligne,Mais en cas de défaillance, le noeud esclave peut automatiquement passer au noeud Maître.
Par exemple:“FAILOVER”、“Double veille à chaud” Attendez..Clusters haute performance(High Performance Computer Cluster)
Pour améliorer le système d'applicationCPUVitesse de fonctionnement、Élargir les ressources matérielles et les capacités d'analyse,Obtenir l'équivalent d'une grande、Calcul haute performance du superordinateur(HPC)Capacité.
La haute performance dépend de"Opérations distribuées”、“Calcul parallèle” , Utiliser du matériel et des logiciels dédiés pourCPU、Les ressources comme la mémoire sont regroupées,L'implémentation n'est que grande、La puissance de calcul d'un superordinateur.Par exemple,“Informatique en nuage”、“Calcul en grille”Attendez..
LVS+KeepalivedCluster
2 Architecture de Cluster d'équilibrage de charge
2.1 Structure d'équilibrage de la charge
Premier étage,Régulateur de charge(Load BalancerOuDirector)
Accès unique à l'ensemble du système groupé, Utilisation externe commune à tous les serveursVIPAdresse,Aussi appelé ClusterIPAdresse.En général, le maître est configuré、Deux régulateurs de secours pour la sauvegarde à chaud,Peut être remplacé en douceur par un régulateur de secours en cas de défaillance du régulateur principal,Assurer une grande disponibilité.Deuxième étage,Pool de serveurs(Server Pool)
Services d'application fournis par Cluster、Prise en charge par le pool de serveurs,Où chaque noeud a unRIPAdresse(C'est vrai.IP),Traiter uniquement les demandes des clients distribuées par l'ordonnanceur.Lorsqu'un noeud tombe temporairement en panne,Le régulateur de charge est isolé par un mécanisme tolérant les défauts,Attendre que les erreurs soient corrigées avant de réintégrer le pool de serveurs.Troisième étage,Stockage partagé(Share Storage)
Assure la stabilité de tous les noeuds du pool de serveurs、Service d'accès uniforme aux fichiers, .Assurer l'uniformité dans l'ensemble du cluster le stockage partagé est disponibleNASMatériel,Ou fournirNFSServeur privé pour les services partagés.
2.2 Analyse du mode de fonctionnement des grappes d'équilibrage des charges
Le Cluster d'équilibrage de charge est actuellement le type de Cluster le plus utilisé par les entreprises,Les techniques d'ordonnancement des charges pour les Clusters sont3Mode de fonctionnement:
- Changement d'adresse(NATMode)
- IPTunnel (TUNMode)
- Routage direct(DRMode)
2.2.1 NAT Mode
Changement d'adresse
● Network Address Translation,AbréviationsNATMode
● Une structure de réseau privée similaire à un pare - feu,L'ordonnanceur de charge sert de passerelle pour tous les noeuds du serveur,En tant que portail d'accès pour les clients,Est également la sortie d'accès de chaque noeud pour répondre aux clients
● Le noeud serveur utilise la propriété privéeIPAdresse,Sur le même réseau physique que le répartiteur de charge,La sécurité est meilleure que les deux autres
2.2.2 TUN Mode
IPTunnel
● IP Tunnel,AbréviationsTUNMode
● Adopter une architecture de réseau ouverte,Le régulateur de charge n'est qu'un point d'accès pour les clients,Chaque noeud passe par sonInternetConnexion au client de réponse directe,Sans passer par le régulateur de charge
● Les noeuds serveurs sont dispersés à différents endroits sur Internet,Avec un réseau public indépendantIPAdresse,Par l'utilisation exclusiveIPCommunication entre le tunnel et le régulateur de charge
2.2.3 DR Mode
Routage direct
● Direct Routing,AbréviationsDRMode
● Adopter une structure de réseau semi - ouverte,AvecTUNLa structure du modèle est similaire,Mais les noeuds ne sont pas dispersés partout,C'est le même réseau physique que l'ordonnanceur
● Le répartiteur de charge est connecté à chaque serveur de noeud via un réseau local,Il n'est pas nécessaire de créer unIPTunnel
3 LVS Serveur virtuel
Linux Virtual Server,PourLinuxSolution d'équilibrage de charge pour le développement du noyau,1998Année5Mois,Créé par le Dr Zhang wensong de notre pays,Site officiel: http://www.linuxvirtualserver.orgl
LVS En fait, c'est l'équivalent deIPApplication de virtualisation pour l'adresse, Basé surIPL'équilibrage de la charge pour la distribution des demandes d'adresses et de contenu offre une solution efficace
LVSC'est devenuLinuxUne partie du noyau,La compilation par défaut estip_ vsModule,Peut être appelé automatiquement si nécessaire.InCentOS 7Dans le système,Les opérations suivantes peuvent être chargées manuellement:ip_ vsModule,Et voir dans le système actuelip_ vsInformations sur la version du module.
modprobe ip_vs
cat /proc/net/ip_vs #Vérification interne de la confirmationLVSAppui
4 LVS Algorithme de programmation de la charge basé sur
- Vote(Round Robin)
Assigner à tour de rôle les demandes d'accès reçues aux noeuds du cluster dans l'ordre(Serveur réel) ,Traiter chaque serveur sur un pied d'égalité ,Quel que soit le nombre réel de connexions au serveur et la charge du système
- Scrutin pondéré (Weighted Round Robin)
Distribuer les demandes en fonction des valeurs de poids fixées par l'ordonnanceur,Les noeuds à poids élevé ont la priorité d'obtenir la tâche,Plus le nombre de demandes attribuées est élevé
Garantir un meilleur trafic d'accès pour les serveurs performants
- Connexion minimale (Least Connections )
Assigner en fonction du nombre de connexions établies par le serveur réel,Donner la priorité aux demandes d'accès reçues aux noeuds qui ont le moins de connexions
- Connexion minimale pondérée(Weighted L east Connections )
Lorsque les performances du noeud serveur varient considérablement,Les poids peuvent être ajustés automatiquement pour les serveurs réels
Les noeuds plus performants supporteront une plus grande proportion de la charge de connexion active
5 ipvsadmOutils
ipvsadmDescription des fonctions et des options
| Options | Fonction |
|---|---|
| -A | Ajouter un serveur virtuel |
| -D | Supprimer l'ensemble du serveur virtuel |
| -s | Spécifiez l'algorithme de répartition de la charge(Vote:rr、Scrutin pondéré:wrr、Connexion minimale:lc、Connexion minimale pondérée:wlc) |
| -a | Représente l'ajout d'un serveur réel(Serveur de noeuds) |
| -d | Supprimer un noeud |
| -t | Désignation VIPAdresse et TCPPort |
| -r | Désignation RIPAdresse et TCPPort |
| -m | Indique l'utilisation NATMode Cluster |
| -g | Indique l'utilisation DRMode |
| -i | Indique l'utilisation TUNMode |
| -w | Définir le poids(Le poids est 0 Indique un noeud de pause) |
| -p 60 | Indique une longue connexion60Secondes |
| -l | Affichage de la Liste LVS Serveur virtuel(La valeur par défaut est de voir tous) |
| -n | Afficher les adresses sous forme numérique、Informations telles que les ports,Souvent avec“-l”Combinaison d'options.ipvsadm -ln |
6 NATModeLVSDéploiement de grappes d'équilibrage des charges
Déploiement du stockage partagé(NFSServeur:192.168.80.20)
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
yum -y install nfs-utils rpcbind
systemctl start rpcbind.service
systemctl start nfs.service
systemctl enable nfs.service
systemctl enable rpcbind.service
mkdir /opt/lic
mkdir /opt/kiki
chmod 777 /opt/lic
chmod 777 /opt/kiki
vim /etc/exports
/usr/share *(ro,sync)
/opt/lic 192.168.80.0/24(rw,sync)
/opt/kiki 192.168.80.0/24(rw,sync)
exportfs -rv
Configurer le serveur de noeuds(192.168.80.12、192.168.80.13)
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
yum install httpd -y
systemctl start httpd.service
systemctl enable httpd.service
yum -y install nfs-utils rpcbind
showmount -e 192.168.80.13
systemctl start rpcbind
systemctl enable rpcbind
Web-1(192.168.80.12)
mount.nfs 192.168.80.13:/opt/lic /var/www/html
echo 'this is lic web!' > /var/www/html/index.html
Web-2(192.168.80.13)
mount.nfs 192.168.80.20:/opt/kiki /var/www/html
echo 'this is kiki web!' > /var/www/html/index.html
3、Configurer le régulateur de charge(Passerelle Intranet ens33:192.168.80.20,Passerelle externe ens37:12.0.0.254)
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
(1)ConfigurationSNATRègles de transmission
vim /etc/sysctl.conf
net.ipv4.ip_forward = 1
Ou
echo '1' > /proc/sys/net/ipv4/ip_forward
sysctl -p
iptables -t nat -F
iptables -F
iptables -t nat -A POSTROUTING -s 192.168.80.0/24 -o ens37 -j SNAT --to-source 12.0.0.254
(2)ChargementLVSModule noyau
modprobe ip_vs #Chargement ip_vsModule
cat /proc/net/ip_vs #Voir ip_vsInformations sur la version
(3)Installationipvsadm Outils de gestion
yum -y install ipvsadm
La politique de répartition de la charge doit être sauvegardée avant le démarrage du service.
ipvsadm-save > /etc/sysconfig/ipvsadm
Ou
ipvsadm --save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm.service
systemctl enable ipvsadm.service
(4)Configurer la politique de répartition de la charge(NATLe mode est configuré sur le serveur,Le serveur de noeuds n'a pas besoin d'une configuration spéciale)
ipvsadm -C #Effacer la politique originale
ipvsadm -A -t 12.0.0.254:80 -s rr -p 10
ipvsadm -a -t 12.0.0.254:80 -r 192.168.80.12:80 -m
ipvsadm -a -t 12.0.0.254:80 -r 192.168.80.13:80 -m
ipvsadm #Activer la politique
ipvsadm -ln #Voir l'état du noeud,MasqReprésentant NATMode
ipvsadm-save > /etc/sysconfig/ipvsadm #Enregistrer la politique(Conservation permanente)
Modifier sur le serveur de noeuds ens33La passerelle pour192.168.80.20
Ouvert ifdown ens33 ; ifup ens33
Dans unIPPour12.0.0.200Les clients de http://12.0.0.254/ ,Rafraîchir continuellement le Navigateur pour tester l'équilibrage de la charge,L'intervalle de rafraîchissement doit être long.
Effets des tests
Dans unIPPour12.0.0.12Les clients de http://12.0.0.1/ ,Rafraîchir continuellement le Navigateur pour tester l'équilibrage de la charge,L'intervalle de rafraîchissement doit être long.

边栏推荐
- Laravel imports and exports excel using phpoffice
- History of the Great Game
- [CTF] attack and defense world Misc
- What are the applications of 4.3-inch touch screen intelligent network central control host
- Problems caused by redis caching scenario
- 随机森林(Random Forest)学习笔记
- 基于 PCA 的人脸识别系统及人脸姿态分析
- 数据路:三人行,必有我师!
- I am a thread (Revised)
- 关于SQL Server中变量前加上 N与其他使用情况解析
猜你喜欢

产品创新 | 物极必反,回归真实生活的创新社交APP

History of the Great Game

基于 PCA 的人脸识别系统及人脸姿态分析

吴军给大学生的书单

Ns32f103vbt6 hardware and software replace stm32f103vbt6

Convert string type to list < integer >

Several common device communication protocols in embedded development are summarized

Quartus II 18.0 software installation package and installation tutorial

String类型转换成List<Integer>

高性能内网DNS系统介绍
随机推荐
向量与平面交点
纵横网络靶场社区-Modbus协议
有哪些新手程序員不知道的小技巧?
ADUM1401ARWZ-RL 亚德诺 数字信号隔离模块
Vscode有什么好用的插件?
STL之vector扩容机制
Golang learning notes - pointer
Quels sont les conseils que les programmeurs débutants ne connaissent pas?
Rongyun obtains token
FANUC机器人进行全部备份和镜像备份以及加载备份文件的具体操作(图文)
Shutter automatickeepaliveclientmixin cache component
融云获取Token
数据路:三人行,必有我师!
Qu'est - ce qu'une passerelle
Kubernetes-23:详解如何将CPU Manager做到游刃有余
高度可扩展,EMQX 5.0 达成 1 亿 MQTT 连接
How functions are declared
Shutter pageview component
Harbor high availability cluster design and deployment (practice + video), based on offline installation
Unity analog flashlight light source detector, AI attack range detection area, object detection in visual cone, fan-shaped area detection, circular area detection, cone area detection