Les deux révisions précédentes Révision précédente | Prochaine révisionLes deux révisions suivantes |
informatique:systeme:ha:pacemaker [2014/02/21 15:48] – bn8 | informatique:systeme:ha:pacemaker [2019/03/11 14:58] – bn8 |
---|
====== Pacemaker ====== | ====== Pacemaker ====== |
| |
| |
===== Installation ===== | ===== Installation ===== |
<note warning>Il est tout d'abord très important que les machines puissent communiquer entre elle avec leur nom (court ou //fqdn//). Si la résolution DNS ne le permet pas, ajouter les lignes nécéssaires dans le fichier ///etc/hosts//.</note> | <note warning>Il est tout d'abord très important que les machines puissent communiquer entre elle avec leur nom (court ou //fqdn//). Si la résolution DNS ne le permet pas, ajouter les lignes nécessaires dans le fichier ///etc/hosts//.</note> |
* Installation sur les deux machines : <code>apt-get install pacemaker dlm-pcmk openais</code> | * Installation sur les deux machines : <code>apt-get install pacemaker crmsh</code> |
* Création de la clé partagér : | * Sur la machine 1 : |
* Sur la machine 1 (**Astuce :** Pour la génération d'entropy si vous être connecté à distance vous pouvez utiliser [[informatique:outils:rng-tools]]) : <code>corosync-keygen</code> | * Création de la clé partagér (**Astuce :** Pour la génération d'entropy si vous être connecté à distance vous pouvez utiliser [[informatique:outils:rng-tools]]) : <code>corosync-keygen</code> |
* Sur la machine 2 : Récupérer le fichier ///etc/corosync/authkey// sur la machine 1. Il doit appartenir à //root:root// et avoir les droits //400//. | * Éditer le fichier ///etc/corosync/corosync.conf// : |
* Sur les deux machines, éditer le fichier ///etc/corosync/corosync.conf// et modifier la partie configurant l'interface d'écoute :<code> interface { | * ajuster le paramètre //cluster_name// |
| * modifier le paramètre //crypto_cipher// : //aes256// |
| * modifier le paramètre //crypto_hash// : //sha512// |
| * modifier la partie configurant l'interface d'écoute :<code> interface { |
# The following values need to be set based on your environment | # The following values need to be set based on your environment |
ringnumber: 0 | ringnumber: 0 |
bindnetaddr: 192.168.3.0 | bindnetaddr: 192.168.3.0 |
mcastaddr: 226.94.1.1 | mcastaddr: 239.255.1.1 |
mcastport: 5405 | mcastport: 5405 |
| ttl: 1 |
}</code> | }</code> |
* Si vous souhaitez utiliser une deuxième interfaces réseaux simultanément pour les dialogues entre les nodes corosync, il suffit ajouter un deuxième bloques //interface// en incrémentant //ringnumber//, en modifiant //bindnetaddr// et en veillant à se que //mcastaddr// et //mcasport// soient différents que pour l'autre interface. Il faudra également passer mettre //rrp_mode// à //active//. | * Si votre cluster n'est composé que de deux noeuds, ajouter le paramètre //two_node// à //1// dans la section //quorum// |
* Si vous utilisez OCFS2 entre autre, il est nécéssaire d'activer le service //cktp// fournis par openais. Pour cela, créer le fichier ///etc/corosync/service.d/cktp// et ajouter y les lignes suivantes :<code>service { | * Ajouter une section //nodelist// comme suit et en ajuster l'IP d'écoute des noeuds : <code>nodelist { |
| node { |
| ring0_addr: 192.168.3.207 |
| } |
| node { |
| ring0_addr: 192.168.3.208 |
| } |
| }</code> |
| * Si vous souhaitez utiliser une deuxième interfaces réseaux simultanément pour les dialogues entre les nodes corosync, il suffit ajouter un deuxième bloques //interface// en incrémentant //ringnumber//, en modifiant //bindnetaddr// et en veillant à se que //mcastaddr// et //mcasport// soient différents que pour l'autre interface. Il faudra également passer mettre //rrp_mode// à //active//. |
| <note tip>Si vous utilisez OCFS2 entre autre, il est nécesaire d'activer le service //cktp// fournis par //openais// (le paquet du même nom doit être installé). Pour cela, créer le fichier ///etc/corosync/service.d/cktp// et ajouter y les lignes suivantes :<code>service { |
name: openais_ckpt | name: openais_ckpt |
ver: 0 | ver: 0 |
}</code> | }</code></note> |
* Sur les deux machines, activer le lancement du daemon corosync en éditant le fichier ///etc/default/corosync// et en mettant la variable //START// à //yes// | * Sur la machine 2, faite un rsync de l'ensemble du dossier ///etc/corosync// |
* Sur les deux machines, lancer le daemon : <code>/etc/init.d/corosync start</code> | * Sur les deux machines, redémarrer le service //corosync// puis //pacemaker// |
| |
L'installation est prête a être configurée. La commande //crm status// devrait retourné quelque chose comme : | L'installation est prête a être configurée. La commande //crm status// devrait retourné quelque chose comme : |
<code>============ | <code>Stack: corosync |
Last updated: Mon Dec 6 18:38:18 2010 | Current DC: ldap1 (version 1.1.16-94ff4df) - partition with quorum |
Stack: openais | Last updated: Mon Mar 11 15:54:50 2019 |
Current DC: srvvirt1 - partition with quorum | Last change: Mon Mar 11 15:54:25 2019 by hacluster via crmd on ldap1 |
Version: 1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b | |
2 Nodes configured, 2 expected votes | 2 nodes configured |
0 Resources configured. | 0 resources configured |
============ | |
| Online: [ ldap1 ldap2 ] |
| |
| No resources |
| |
Online: [ srvvirt1 srvvirt2 ]</code> | </code> |
| |
===== Communication Unicast ===== | ===== Communication Unicast ===== |