« LINUX:Pacemaker - deux routers en failover - trois serveurs WEB en Loadbalancing, Galera et GlusterFs » : différence entre les versions
(Page créée avec « ---- ''→ retour au menu de la Haute disponibilité'' ---- =But= Cette configuration est très semblable à la précédente, Quatre serveurs WEB en Loadbalancing, Galera et GlusterFs. La différence est qu'on met en Failover deux routers, qui utilisent Ldirectord comme répartiteur de requêtes. Les trois serveurs Web sont en loadbalancing. Ils util... ») |
Aucun résumé des modifications |
||
Ligne 29 : | Ligne 29 : | ||
* la configuration des deux routers qui auront la tâche de rediriger et répartir les requêtes des clients. | * la configuration des deux routers qui auront la tâche de rediriger et répartir les requêtes des clients. | ||
Avant de passer à Pacemaker. | Avant de passer à Pacemaker. | ||
=Prérequis= | |||
==Configurations de base== | |||
En premier, les [[LINUX:Haute disponibilité - Prérequis|Prérequis]] doivent être effectués. | |||
==Fichier "hosts"== | |||
Sur chaque machine du cluster, on ajoute un nom aux différentes adresses réseaux. On le fait en local dans le fichier "/etc/hosts" suivant le schéma ci-dessus. Son contenu devient: | |||
---- | |||
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 | |||
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 | |||
| |||
192.168.1.70 cluster.home.dom cluster | |||
192.168.1.75 cluster5.home.dom cluster5 | |||
192.168.1.74 cluster4.home.dom cluster4 | |||
192.168.2.75 sv5.home.dom sv5 | |||
192.168.2.74 sv4.home.dom sv4 | |||
| |||
192.168.2.71 sv1.home.dom sv1 | |||
192.168.2.72 sv2.home.dom sv2 | |||
192.168.2.73 sv3.home.dom sv3 | |||
| |||
192.168.3.71 dt1.home.dom dt1 | |||
192.168.3.72 dt2.home.dom dt2 | |||
192.168.3.73 dt3.home.dom dt3 | |||
| |||
# serveur mail | |||
192.168.1.110 servermail.home.dom home.dom | |||
---- | |||
=Configuration des services sur les serveurs Web= | |||
Nous avons à configurer les différents services nécessaires qui vont être utilisés par Pacemaker. Ces configurations sont à faire sur les quatre serveurs Web: | |||
"192.168.2.71", "192.168.2.72" et "192.168.2.73". | |||
==Service GlusterFs== | |||
Sur chaque machine, il faut configurer le serveur Gluster. | |||
La configuration se base sur celle présentée dans l'article sur [[LINUX:Glusterfs|Glusterfs]]. | |||
Toute la configuration centralisée se fera à partir de la machine "sv1.home.dom". | |||
Le volume sera placé sur un partition d'un disque distinct que nous avons monté sur le répertoire "/disk1". | |||
===Démarrage=== | |||
Sur chaque machine, on lance le service "glusterd.service": | |||
systemctl start glusterd.service | |||
===Constitution du "Pool"=== | |||
On constitue le "Pool" de serveurs qui va utiliser le réseau "192.168.3.0/24". Voici la suite des commandes: | |||
gluster peer probe dt2.home.dom | |||
gluster peer probe dt3.home.dom | |||
===Constitution du volume en réplication=== | |||
On crée ensuite le volume en réplication "diskgfs1" sur les quatre machines: | |||
gluster volume create diskgfs1 replica 3 transport tcp dt1.home.dom:/disk1/glusterfs/brique1 dt2.home.dom:/disk1/glusterfs/brique1 \ | |||
dt3.home.dom:/disk1/glusterfs/brique1 | |||
gluster volume start diskgfs1 | |||
==Services HTTPD et PHP== | |||
Les fichiers des sites se trouvent sous le répertoire "/web". Cet espace sera monté sur le volume GlusterFs configuré ci-dessus. | |||
mkdir /data | |||
mount -t glusterfs localhost:/diskgfs1 /data | |||
La configuration est similaire à celle présentée dans l'article sur le [[LINUX:Pacemaker - Paramétrage des services en Failover|Paramétrage des services en Failover]]. La mise en place des certificats est nécessaire. Celle concernant la messagerie n'est pas reprise dans ce cas-ci même si elle pourrait y être ajoutée facilement. La configuration de Mariadb sera abordée ci-dessous. Nous plaçons les fichiers du site sous le répertoire "/data/web". | |||
On ajoute un fichier "/data/web/vivant.html" dont le contenu est: | |||
---- | |||
Je suis vivant. | |||
---- | |||
Il servira au service "ldirectord.service" de vérifier qu'Apache est bien actif. | |||
Version du 25 juin 2023 à 15:20
→ retour au menu de la Haute disponibilité
But
Cette configuration est très semblable à la précédente, Quatre serveurs WEB en Loadbalancing, Galera et GlusterFs. La différence est qu'on met en Failover deux routers, qui utilisent Ldirectord comme répartiteur de requêtes. Les trois serveurs Web sont en loadbalancing. Ils utilisent en outre les fonctionnalités de GlusterFs et de MariaDb-Galera qui travaillent en réplication.
Matériel et adressage IP
Dans notre exemple, nous utilisons trois serveurs Web mis en cluster sous le réseau "192.168.2.0/24". Pour améliorer les performances et de sécurité, le trafic généré par la réplication des espaces disques et des bases de données se fera au travers d'un troisième réseau ("192.168.3.0/24"), chaque machine est pour cette raison équipée d'une seconde carte réseau. La fonctionnalité de Loadbalancing est assurée par deux routers qui fait la répartition des tâches et la liaison avec la Lan d'entrée. Ces deux routers sont configurés en Failover.
Le schéma ci-dessous nous montre l'adressage IP et le nom de ces machines.
Principe
Nous avons trois serveurs Web gérants le même site. La charge Web sera répartie équitablement entre ces trois serveurs Web. Cette tâche est assurée par le paquet Ldirectord en mode "Mask". Il se place sur les routers "sv5.home.dom" et "sv4.home.dom". Ils travaillent en Failover. Celui qui a la main possède une adresse IP virtuelle "192.168.1.70" sous le nom de "cluster.home.dom" et cette adresse servira de passerelle par défaut pour les trois serveurs Web. Ce site utilisera le cryptage SSL sous le nom de "cluster.home.dom". Pour cette raison, l'interface réseau utilisé par les utilisateurs sera accessible sous le nom "cluster.home.dom" du réseau "192.168.1.0/24". La configuration du router "192.168.1.70" peut être trouvée dans l'article sur le Routage statique. Dans cadre d'un réseau à domicile, vous aurez des problème d'appliquer un routage statique; l'article suivant vous aidera à le résoudre via le Natting.
Les fichiers utilisés pour ce site sont placés dans un espace disque commun aux trois serveurs. Pour cette tâche, nous utilisons un volume GlusterFs en réplication. La réplication se passe au travers du réseau "192.168.3.0/24".
Ce site utilise une base de données. Chacun de ces trois serveurs comporte une base de données; elles sont identiques. Cette réplication se fait grâce au gestionnaire de base de données Mariadb-Galera au travers du réseau "192.168.3.0/24". Comme nous avons un nombre impaire de serveurs de base de données, nous n'devons pas besoin du service Garb.
Toute cette configuration sera supervisée par le logiciel Pacemaker. Il assurera que l'ensemble fonctionne et dans le cas extrême, l'ensemble des applications concernées s'arrêtera.
Pour cette mise en place, deux grandes parties sont à considérer:
- la configuration des trois serveurs qui vont travailler de concert.
- la configuration des deux routers qui auront la tâche de rediriger et répartir les requêtes des clients.
Avant de passer à Pacemaker.
Prérequis
Configurations de base
En premier, les Prérequis doivent être effectués.
Fichier "hosts"
Sur chaque machine du cluster, on ajoute un nom aux différentes adresses réseaux. On le fait en local dans le fichier "/etc/hosts" suivant le schéma ci-dessus. Son contenu devient:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.1.70 cluster.home.dom cluster 192.168.1.75 cluster5.home.dom cluster5 192.168.1.74 cluster4.home.dom cluster4 192.168.2.75 sv5.home.dom sv5 192.168.2.74 sv4.home.dom sv4 192.168.2.71 sv1.home.dom sv1 192.168.2.72 sv2.home.dom sv2 192.168.2.73 sv3.home.dom sv3 192.168.3.71 dt1.home.dom dt1 192.168.3.72 dt2.home.dom dt2 192.168.3.73 dt3.home.dom dt3 # serveur mail 192.168.1.110 servermail.home.dom home.dom
Configuration des services sur les serveurs Web
Nous avons à configurer les différents services nécessaires qui vont être utilisés par Pacemaker. Ces configurations sont à faire sur les quatre serveurs Web: "192.168.2.71", "192.168.2.72" et "192.168.2.73".
Service GlusterFs
Sur chaque machine, il faut configurer le serveur Gluster. La configuration se base sur celle présentée dans l'article sur Glusterfs. Toute la configuration centralisée se fera à partir de la machine "sv1.home.dom".
Le volume sera placé sur un partition d'un disque distinct que nous avons monté sur le répertoire "/disk1".
Démarrage
Sur chaque machine, on lance le service "glusterd.service":
systemctl start glusterd.service
Constitution du "Pool"
On constitue le "Pool" de serveurs qui va utiliser le réseau "192.168.3.0/24". Voici la suite des commandes:
gluster peer probe dt2.home.dom gluster peer probe dt3.home.dom
Constitution du volume en réplication
On crée ensuite le volume en réplication "diskgfs1" sur les quatre machines:
gluster volume create diskgfs1 replica 3 transport tcp dt1.home.dom:/disk1/glusterfs/brique1 dt2.home.dom:/disk1/glusterfs/brique1 \ dt3.home.dom:/disk1/glusterfs/brique1 gluster volume start diskgfs1
Services HTTPD et PHP
Les fichiers des sites se trouvent sous le répertoire "/web". Cet espace sera monté sur le volume GlusterFs configuré ci-dessus.
mkdir /data mount -t glusterfs localhost:/diskgfs1 /data
La configuration est similaire à celle présentée dans l'article sur le Paramétrage des services en Failover. La mise en place des certificats est nécessaire. Celle concernant la messagerie n'est pas reprise dans ce cas-ci même si elle pourrait y être ajoutée facilement. La configuration de Mariadb sera abordée ci-dessous. Nous plaçons les fichiers du site sous le répertoire "/data/web".
On ajoute un fichier "/data/web/vivant.html" dont le contenu est:
Je suis vivant.
Il servira au service "ldirectord.service" de vérifier qu'Apache est bien actif.
→ retour au menu de la Haute disponibilité