7.5.2. Ajouter un service cluster à un cluster
Pour ajouter un service cluster au cluster, suivez les étapes de cette section.
- Ouvrez
/etc/cluster/cluster.conf
sur n'importe quel nœud dans le cluster. - Ajoutez une section
service
avec l'élémentrm
pour chaque service. Par exemple :<rm> <service autostart="1" domain="" exclusive="0" name="" recovery="restart"> </service> </rm>
- Configurez les paramètres suivants (attributs) dans l'élément
service
:autostart
— Spécifie s'il faut démarrer le service automatiquement lorsque le cluster démarre. Veuillez utiliser « 1 » pour activer et « 0 » pour désactiver, le service est activé par défaut.domain
— Spécifie un domaine de basculement (s'il est requis).exclusive
— Spécifie une politique où le service s'exécute uniquement sur des nœuds sur lesquels aucun autre service ne s'exécute.recovery
— Spécifie une stratégie de récupération pour le service. Les options disponibles du service sont déplacer, redémarrer, désactiver, ou redémarrer-désactiver.
- Selon le type de ressources que vous souhaitez utiliser, remplissez le service avec des ressources globales ou spécifiques au servicePar exemple, voici un service Apache qui utilise des ressources globales :
<rm> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> <service autostart="1" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate"> <fs ref="web_fs"/> <ip ref="127.143.131.100"/> <apache ref="example_server"/> </service> </rm>
Par exemple, voici un service Apache qui utilise des ressources spécifiques au service :<rm> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate"> <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www2" fstype="ext3"/> <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/> </service> </rm>
L'Exemple 7.10, «cluster.conf
avec services ajoutés : l'un utilisant des ressources globales et l'autre utilisant des ressources spécifiques au service » montre un exemple de fichiercluster.conf
avec deux services :example_apache
— Ce service utilise les ressources globalesweb_fs
,127.143.131.100
etexample_server
.example_apache2
— Ce service utilise les ressources spécifiques au serviceweb_fs2
,127.143.131.101
etexample_server2
.
- Mettez à jour l'attribut
config_version
en incrémentant sa valeur (par exemple, en la modifiant deconfig_version="2"
àconfig_version="3">
). - Enregistrez
/etc/cluster/cluster.conf
. - (Optional) Validez le fichier mis à jour sur le schéma du cluster (
cluster.rng
) en exécutant la commandeccs_config_validate
. Par exemple :[root@example-01 ~]#
ccs_config_validate
Configuration validates - Exécutez la commande
cman_tool version -r
pour propager la configuration au reste des nœuds de cluster. - Vérifiez que le fichier de configuration mis à jour a été propagé.
- Procédez à la Section 7.8, « Vérifier une configuration ».
Exemple 7.10. cluster.conf
avec services ajoutés : l'un utilisant des ressources globales et l'autre utilisant des ressources spécifiques au service
<cluster name="mycluster" config_version="3"> <clusternodes> <clusternode name="node-01.example.com" nodeid="1"> <fence> <method name="APC"> <device name="apc" port="1"/> </method> </fence> </clusternode> <clusternode name="node-02.example.com" nodeid="2"> <fence> <method name="APC"> <device name="apc" port="2"/> </method> </fence> </clusternode> <clusternode name="node-03.example.com" nodeid="3"> <fence> <method name="APC"> <device name="apc" port="3"/> </method> </fence> </clusternode> </clusternodes> <fencedevices> <fencedevice agent="fence_apc" ipaddr="apc_ip_example" login="login_example" name="apc" passwd="password_example"/> </fencedevices> <rm> <failoverdomains> <failoverdomain name="example_pri" nofailback="0" ordered="1" restricted="0"> <failoverdomainnode name="node-01.example.com" priority="1"/> <failoverdomainnode name="node-02.example.com" priority="2"/> <failoverdomainnode name="node-03.example.com" priority="3"/> </failoverdomain> </failoverdomains> <resources> <fs name="web_fs" device="/dev/sdd2" mountpoint="/var/www" fstype="ext3"/> <ip address="127.143.131.100" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server" server_root="/etc/httpd" shutdown_wait="0"/> </resources> <service autostart="1" domain="example_pri" exclusive="0" name="example_apache" recovery="relocate"> <fs ref="web_fs"/> <ip ref="127.143.131.100"/> <apache ref="example_server"/> </service> <service autostart="0" domain="example_pri" exclusive="0" name="example_apache2" recovery="relocate"> <fs name="web_fs2" device="/dev/sdd3" mountpoint="/var/www2" fstype="ext3"/> <ip address="127.143.131.101" monitor_link="yes" sleeptime="10"/> <apache config_file="conf/httpd.conf" name="example_server2" server_root="/etc/httpd" shutdown_wait="0"/> </service> </rm> </cluster>