18.2. Configuration des contraintes de ressources des clones
Dans la plupart des cas, un clone aura une seule copie sur chaque nœud actif de la grappe. Vous pouvez toutefois définir clone-max
pour le clone de ressources à une valeur inférieure au nombre total de nœuds dans le cluster. Dans ce cas, vous pouvez indiquer les nœuds auxquels le cluster doit préférentiellement affecter des copies à l'aide de contraintes d'emplacement des ressources. Ces contraintes sont écrites de la même manière que pour les ressources ordinaires, à l'exception de l'utilisation de l'identifiant du clone.
La commande suivante crée une contrainte d'emplacement pour le cluster afin d'affecter de préférence le clone de ressources webfarm-clone
à node1
.
pcs constraint location webfarm-clone prefers node1
# pcs constraint location webfarm-clone prefers node1
Les contraintes d'ordre se comportent légèrement différemment pour les clones. Dans l'exemple ci-dessous, comme l'option de clonage interleave
est laissée par défaut en tant que false
, aucune instance de webfarm-stats
ne démarrera avant que toutes les instances de webfarm-clone
qui doivent être démarrées ne l'aient été. Ce n'est que si aucune copie de webfarm-clone
ne peut être démarrée que webfarm-stats
sera empêché d'être actif. En outre, webfarm-clone
attendra que webfarm-stats
soit arrêté avant de s'arrêter lui-même.
pcs constraint order start webfarm-clone then webfarm-stats
# pcs constraint order start webfarm-clone then webfarm-stats
La colocation d'une ressource régulière (ou d'un groupe) avec un clone signifie que la ressource peut s'exécuter sur n'importe quelle machine ayant une copie active du clone. Le cluster choisira une copie en fonction de l'endroit où le clone s'exécute et des préférences de localisation de la ressource.
La colocalisation entre clones est également possible. Dans ce cas, l'ensemble des emplacements autorisés pour le clone est limité aux nœuds sur lesquels le clone est (ou sera) actif. L'allocation s'effectue alors normalement.
La commande suivante crée une contrainte de colocalisation pour garantir que la ressource webfarm-stats
s'exécute sur le même nœud qu'une copie active de webfarm-clone
.
pcs constraint colocation add webfarm-stats with webfarm-clone
# pcs constraint colocation add webfarm-stats with webfarm-clone