GNU/Linux >> Tutoriels Linux >  >> Cent OS

Cluster de serveurs Web Apache à deux nœuds avec Pacemaker sur CentOS 7

Pacemaker est un logiciel de cluster à haute disponibilité pour Linux comme le système d'exploitation. Pacemaker est connu sous le nom de 'Cluster Resource Manager ', Il fournit une disponibilité maximale des ressources du cluster en effectuant un basculement des ressources entre les nœuds du cluster.

Pacemaker utilise corosync pour le rythme cardiaque et la communication interne entre les composants du cluster, Corosync prend également en charge le quorum dans le cluster.

Dans cet article, nous allons démontrer l'installation et la configuration de deux clusters de serveurs Web Node Apache (httpd) à l'aide de Pacemaker sur CentOS 7.

Dans ma configuration, j'utiliserai deux machines virtuelles et un stockage partagé de Fedora Server (deux disques seront partagés, un disque sera utilisé comme périphérique de clôture et un autre disque sera utilisé comme stockage partagé pour le serveur Web)

  • node1.linuxtechi.com ( 192.168.1.51 ) — CentOS 7.x
  • node2.linuxtechi.com (192.168.1.52 ) — CentOS 7.x

Étape 1 Mettre à jour le fichier "/etc/hosts"

Ajoutez les lignes suivantes dans le fichier /etc/hosts dans les deux nœuds.

192.168.1.51 node1.linuxtechi.com node1192.168.1.52 node2.linuxtechi.com node2

Étape 2 :Installez le cluster et les autres packages requis.

Utilisez la commande ci-dessous yum sur les deux nœuds pour installer le package de cluster (pcs ), fence-agents et le serveur Web (httpd)

[[email protected] ~]# yum -y update[[email protected] ~]# yum -y install pcs fence-agents-all iscsi-initiator-utils httpd[[email protected] ~]# yum -y mise à jour[[email protected] ~]# yum -y install pcs fence-agents-all iscsi-initiator-utils httpd

Étape :3 Définissez le mot de passe sur l'utilisateur "hacluster"

Il est recommandé d'utiliser le même mot de passe d'utilisateur "hacluster" sur les deux nœuds.

[[email protected] ~]# echo  | passwd --stdin hacluster[[email protected] ~]# echo  | passwd --stdinhacluster

Étape : 4 Autoriser les ports haute disponibilité dans le pare-feu.

Utilisez 'firewall-cmd ' sur les deux nœuds pour ouvrir les ports haute disponibilité dans le pare-feu du système d'exploitation.

[[email protected] ~]# firewall-cmd --permanent --add-service=high-availabilitysuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#[[ email protected] ~]# firewall-cmd --permanent --add-service=high-availabilitysuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#

Étape : 5 Démarrez le service de cluster et autorisez les nœuds à rejoindre le cluster.

Démarrons le service de cluster sur les deux nœuds,

[[email protected] ~]# systemctl start pcsd.service[[email protected] ~]# systemctl enable pcsd.serviceln -s '/usr/lib/systemd/system/pcsd.service' '/etc/systemd /system/multi-user.target.wants/pcsd.service'[[email protected] ~]#[[email protected] ~]# systemctl start pcsd.service[[email protected] ~]# systemctl enable pcsd.serviceln - s '/usr/lib/systemd/system/pcsd.service' '/etc/systemd/system/multi-user.target.wants/pcsd.service'[[email protected] ~]#

Utilisez la commande ci-dessous sur l'un des nœuds pour autoriser les nœuds à rejoindre le cluster.

[[email protected] ~]# pcs cluster auth node1 node2Username :haclusterPassword:node1 :Authorizednode2 :Authorized[[email protected] ~]#

Étape : 6 Créer le cluster et activer le service de cluster

Utilisez les commandes pcs ci-dessous sur l'un des nœuds du cluster pour créer un cluster avec le nom 'apachecluster ' et node1 &node2 sont les nœuds du cluster.

[[email protected] ~]# pcs cluster setup --start --name apachecluster node1 node2Arrêt des services pacemaker/corosync...Redirection vers /bin/systemctl stop pacemaker.serviceRedirection vers /bin/systemctl stop corosync.serviceKilling tous les services restants...Suppression de tous les fichiers de configuration du cluster...nœud1 :Réussinœud2 :RéussiteDémarrage du cluster sur les nœuds : nœud1, nœud2...nœud2 :Démarrage du cluster...nœud1 :Démarrage du cluster...Synchronisation des certificats pcsd sur les nœuds nœud1, node2...node1 :Successnode2 :SuccessRedémarrage de pcsd sur les nœuds afin de recharger les certificats...node1 :Successnode2 :Success[[email protected] ~]#

Activez le service de cluster à l'aide de la commande pcs ci-dessous :

[[email protected] ~]# pcs cluster enable --allnode1 :cluster activénode2 :cluster activé[[email protected] ~]#

Vérifiez maintenant le service de cluster

[[email protected] ~]# état du cluster pcs

Étape :7 Configurez le stockage partagé iscsi sur le serveur Fedora pour les deux nœuds.

Adresse IP du serveur Fedora 23 =192.168.1.21

Installez d'abord le package requis.

[[email protected] ~]# dnf -y install targetcli

J'ai un nouveau disque (/dev/sdb) de taille 11 Go sur mon serveur fedora sur lequel j'ai créé deux LV l'un pour Fecing et l'autre pour le système de fichiers Apache.

[[email protected] ~]# pvcreate /dev/sdb Le volume physique "/dev/sdb" a été créé avec succès[[email protected] ~]# vgcreate cluster_data /dev/sdb Le groupe de volumes "cluster_data" a été créé avec succès[[email protected] ~]# lvcreate -L 1G -n fence_storage cluster_data Volume logique "fence_storage" créé.[[email protected] ~]# lvcreate -L 10G -n apache_storage cluster_data Volume logique "apache_storage" créé.[[email protected] ~] #

Obtenez les noms d'initiateur des deux nœuds.

[[email protected] ~]# chat /etc/iscsi/initiatorname.iscsi InitiatorName=iqn.1994-05.com.redhat:63ba7391df7f[[email protected] ~]# [[email protected] ~]# chat /etc/iscsi/initiatorname.iscsi InitiatorName=iqn.1994-05.com.redhat:d4337e65531e[[email protected] ~]#

Utilisez maintenant 'targetcli ' commande pour configurer le stockage iscsi pour les deux nœuds.

[[email protected] ~]# targetcli/> cd /backstores/block/backstores/block> create apache-fs /dev/cluster_data/apache_storage /backstores/block> create fence-storage /dev/cluster_data/fence_storage / backstores/block> cd /iscsi/iscsi> create/iscsi> cd iqn.2003-01.org.linux-iscsi.fedora23.x8664:sn.646023b9e9c6/tpg1/luns/iscsi/iqn.20...9c6/tpg1 /luns> créer /backstores/block/apache-fs/iscsi/iqn.20...9c6/tpg1/luns> créer /backstores/block/fence-storage/iscsi/iqn.20...9c6/tpg1/luns> cd ../acls/iscsi/iqn.20...9c6/tpg1/acls> créer iqn.1994-05.com.redhat:63ba7391df7f/iscsi/iqn.20...9c6/tpg1/acls> créer iqn .1994-05.com.redhat:d4337e65531e/iscsi/iqn.20...9c6/tpg1/acls> cd //> saveconfig /> exit

Démarrer et activer le service cible

[[email protected] ~]# systemctl start target.service[[email protected] ~]# systemctl enable target.service[[email protected] ~]#

Ouvrez les ports iscsi dans le pare-feu du système d'exploitation.

[[email protected] ~]# firewall-cmd --permanent --add-port=3260/tcpsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]# 

Analysez maintenant le stockage iscsi sur les deux nœuds :

Exécutez les commandes ci-dessous sur les deux nœuds

# iscsiadm --mode discovery --type sendtargets --portal 192.168.1.21# iscsiadm -m node -T iqn.2003-01.org.linux-iscsi.fedora23.x8664:sn.646023b9e9c6 -l -p 192.168 .1.21:3260

Remplacez la cible « iqn » et « adresse IP » selon votre configuration. Après avoir exécuté la commande ci-dessus, nous pouvons voir deux nouveaux disques dans la sortie de la commande ‘fdisk -l’.

Répertorier les identifiants du disque iscsi récemment analysé.

[[email protected] ~]# ls -l /dev/disk/by-id/total 0..........lrwxrwxrwx. 1 racine racine 9 février 21 03:22 wwn-0x60014056e8763c571974ec3b78812777 -> ../../sdblrwxrwxrwx. 1 root root 9 février 21 03:22 wwn-0x6001405ce01173dcd7c4c0da10051405 -> ../../sdc[[email protected] ~]#

Démarrez et activez le service iscsi sur les deux nœuds.

[[email protected] ~]# systemctl start iscsi.service[[email protected] ~]# systemctl enable iscsi.service[[email protected] ~]# systemctl enable iscsid.serviceln -s '/usr/lib/ systemd/system/iscsid.service' '/etc/systemd/system/multi-user.target.wants/iscsid.service'[[email protected] ~]# [[email protected] ~]# systemctl start iscsi.service[ [email protected] ~]# systemctl enable iscsi.service[[email protected] ~]# systemctl enable iscsid.serviceln -s '/usr/lib/systemd/system/iscsid.service' '/etc/systemd/system/multi -user.target.wants/iscsid.service'[[email protected] ~]#

Étape : 8 Créez les ressources de cluster.

Définir stonith (Shoot The Other Node In The Head) dispositif de clôture pour le cluster. C'est une méthode pour isoler le nœud du cluster lorsque le nœud ne répond plus.

J'utilise 1 Go de stockage iscsi (/dev/sdc ) pour l'escrime.

Exécutez les commandes suivantes sur l'un des nœuds :

[[email protected] ~]# pcs stonith create scsi_fecing_device fence_scsi pcmk_host_list="node1 node2" pcmk_monitor_action="metadata" pcmk_reboot_action="off" devices="/dev/disk/by-id/wwn-0x6001405ce01173dcd7c4c0da10051405" méta fournit ="unfencing"[[email protected] ~]# [[email protected] ~]# pcs stonith show scsi_fecing_device (stonith:fence_scsi) :Noeud1 démarré[[email protected] ~]#

Créez maintenant une partition sur le deuxième stockage iscsi (/dev/sdb ) qui sera utilisé comme racine du document pour notre serveur Web.

[[email protected] ~]# fdisk /dev/disk/by-id/wwn-0x60014056e8763c571974ec3b78812777

Formater la partition nouvellement créée :

[[email protected] ~]# mkfs.ext4 /dev/disk/by-id/wwn-0x60014056e8763c571974ec3b78812777-part1

Montez le nouveau système de fichiers temporaire sur /var/www et créez des sous-dossiers et définissez la règle selinux.

[[email protected] html]# mount /dev/disk/by-id/wwn-0x60014056e8763c571974ec3b78812777-part1 /var/www/[[email protected] html]# mkdir /var/www/html[[email protected ] html]# mkdir /var/www/cgi-bin[[email protected] html]# mkdir /var/www/error[[email protected] html]# restorecon -R /var/www[[email protected] html] # echo "Apache Web Server Pacemaker Cluster"> /var/www/html/index.html

Démontez le système de fichiers maintenant car le cluster montera le système de fichiers si nécessaire.

[[email protected] html]# umount /var/www/[[email protected] html]#

Créer la ressource de cluster du système de fichiers du serveur Web en utilisant la commande pcs ci-dessous.

[[email protected] html]# pcs resource create webserver_fs Filesystem device="/dev/disk/by-id/wwn-0x60014056e8763c571974ec3b78812777-part1" directory="/var/www" fstype="ext4" --group webgroup[[email protected] html]# [[email protected] html]# pcs resource show Resource Group :webgroup webserver_fs (ocf::heartbeat:Filesystem) :nœud 1 démarré[[email protected] html]#

Ajoutez les lignes suivantes dans le fichier ‘/etc/httpd/conf/httpd.conf’ sur les deux nœuds.

 SetHandler server-status Order deny,allow Deny from all Allow from 127.0.0.1

Ouvrez le port httpd ou du serveur Web dans le pare-feu du système d'exploitation sur les deux nœuds

[[email protected] ~]# firewall-cmd --permanent --add-service=httpsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#[[email protected ] ~]# firewall-cmd --permanent --add-service=httpsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#

Créer une ressource de cluster IP virtuelle (IPaddr2) en utilisant la commande ci-dessous. Exécutez la commande suivante sur l'un des nœuds.

[[email protected] ~]# ressource pcs créer vip_res IPaddr2 ip=192.168.1.151 cidr_netmask=24 --group webgroup[[email protected] ~]#

Créer une ressource de cluster Apache en utilisant la commande ci-dessous :

[[email protected] ~]# ressource pcs créer apache_res apache configfile="/etc/httpd/conf/httpd.conf" statusurl="http://127.0.0.1/server-status" --group webgroup[ [e-mail protégé] ~]#

Vérifiez l'état du cluster :

[[email protected] ~]état de # PC

Utilisez 'df ' et 'ajout d'ip ' commande pour vérifier le système de fichiers et le basculement de l'adresse IP.

Accédez à votre site Web en utilisant VIP (192.168.1.151)

.

Interface graphique du stimulateur :

L'interface graphique de Pacemaker est accessible à partir d'un navigateur Web à l'aide de vip.

https://192.168.1.151:2224/

Utilisez le nom d'utilisateur "hacluster" et son mot de passe que nous avons défini à l'étape ci-dessus.

Ajoutez les nœuds de cluster existants.

L'installation et la configuration de Pacemaker sont terminées. J'espère que vous avez apprécié les étapes. Veuillez partager vos précieux commentaires et commentaires 🙂

Référence : http://clusterlabs.org/quickstart-redhat.html


Cent OS
  1. Comment configurer plusieurs sites Web avec le serveur Web Apache

  2. Installer le serveur Web Apache CentOS 6 / RHEL 6

  3. Installer Apache Web Server sur CentOS 8 - Processus étape par étape pour le faire ?

  4. Comment installer Apache Web Server sur Centos 8

  5. Installer Apache sur CentOS 8

Comment installer le serveur Web Lighttpd sur CentOS 8

Comment installer le serveur Web Cherokee sur CentOS 6

Comment installer Jetty Web Server sur CentOS 7

Comment installer le serveur Web Hiawatha sur CentOS 7

Comment installer le serveur Web Caddy sur CentOS 7

Comment installer LiteSpeed ​​Web Server dans WHM/cPanel avec Centos 7.x ?