Affectation d'hôtes avec affectation automatique de libellés d'hôte
Les hôtes sont automatiquement affectés à des pools de travailleurs au sein de clusters ou de services Satellite d' IBM Cloud, à l'aide d'étiquettes d'hôte permettant de les faire correspondre à la capacité de calcul disponible. Vous pouvez activer ou désactiver l'attribution automatique.
L'affectation automatique de l'hôte n'est pas disponible pour le plan de contrôle d'emplacement Satellite .
Libellés d'hôte
L'affectation automatique des hôtes fait correspondre les étiquettes du pool de travailleurs dans les clusters Satellite aux étiquettes d'hôte et de zone sur les hôtes disponibles.
Gardez à l'esprit les informations suivantes sur les libellés d'hôte utilisés pour l'affectation automatique.
- Libellés d'hôte par défaut
- Lorsque vous connectez un hôte à un emplacement Satellite, l'hôte obtient automatiquement des libellés pour
cpu,osetmemory(en octets). Vous ne pouvez pas supprimer ces libellés. Vous pouvez inclure des libellés d'hôte supplémentaires ou mettre à jour ultérieurement les métadonnées d'hôte. Si l'hôte n'inclut pas le libelléos, il est automatiquement supposé êtreRHEL7. - Les hôtes peuvent avoir plus d'étiquettes qu'il n'y a de pools de travailleurs
- Par exemple, un hôte portant les étiquettes d'hôte
envcpu,memory, et peut être automatiquement affecté à un pool de travailleurs ne portant que l'étiquette d'hôtecpu. L'affectation automatique de l'hôte correspond aux libelléscpu. L'inverse ne fonctionne pas : si un pool de travailleurs possède plus d'étiquettes qu'un hôte, celui-ci ne peut pas être automatiquement attribué à ce pool de travailleurs. - La correspondance est exacte
- Les libellés d'hôte doivent être identiques (
=) l'un et l'autre exactement. Même si le libellé d'hôte est un nombre, pas moins de (<), supérieur à (>) ou d'autres opérateurs sont utilisés pour la mise en correspondance.
Exemple de scénario pour l'affectation automatique de l'hôte
Supposons que vous disposiez d'un cluster Satellite avec un pool de noeuds worker default dans la zone us-east-1a avec les libellés d'hôte suivants :
cpu=4env=prodos=RHEL7
L'emplacement Satellite inclut des hôtes disponibles (non affectés) avec les libellés d'hôte suivants :
- Hôte A :
cpu=4, memory=32, env=prod, zone=us-east-1bos=rhel - Hôte B :
cpu=4, memory=32, zone=us-east-1aos=RHEL7 - Hôte C :
cpu=4, memory=64, env=prodos=RHEL7 - Hôte D :
cpu=4, memory=64, env=prod``os=RHCOS( Red Hat CoreOS )
Si vous redimensionnez le pool de noeuds worker default pour demander trois noeuds worker supplémentaires, seul l'hôte C peut être affecté automatiquement, mais pas l'hôte A ou l'hôte B.
- L'hôte A répond aux demandes relatives à l'unité centrale de traitement (CPU) et aux étiquettes
env=prod, mais ne peut être attribué qu'enus-east-1b. Comme le pool de noeuds workerdefaultse trouve uniquement dans la zoneus-east-1a, l'hôte A n'est pas affecté. - L'hôte B est conforme aux demandes "cpu" et "zone" mais il n'a pas de libellé
env=prodet n'est donc pas affecté. - L'hôte C est affecté automatiquement car il possède les libellés d'hôte
cpu=4etenv=prodet n'a pas de restriction de zone. Le libellé d'hôtememory=64n'est pas pris en compte car le pool de noeuds worker ne demande pas de libellémemory. - L'hôte D répond aux demandes d'utilisation de l'unité centrale, de la zone et du libellé
env=prod, mais ne répond pas à la demandeosdeRHEL7et n'est donc pas affecté.
Les hôtes doivent être affectés en tant que noeuds worker dans chaque zone du pool de workers par défaut dans votre cluster. Si votre pool de workers par défaut s'étend sur plusieurs zones, assurez-vous de disposer d'hôtes connectés à des libellés correspondants pouvant être affectés dans chaque zone.
Affectation automatique des hôtes
IBM Cloud Satellite attribue automatiquement des hôtes aux pools de travailleurs des clusters qui demandent de la capacité de calcul à l'aide d'étiquettes d'hôte telles que cpu.
Avant de commencer, veillez à créer un cluster Satellite. Si vous créez un cluster dans l'interface de ligne de commande, vous
devez spécifier l'option --workers avec le nombre d'hôtes que vous souhaitez affecter automatiquement. Vérifiez ensuite que vous connectez des hôtes à votre emplacement
Satellite, mais n'affectez les hôtes à aucune ressource.
-
Examinez les libellés d'hôte utilisés par les pools de noeuds worker pour demander des capacités de calcul. Vous avez plusieurs options.
- Création d'un pool de travailleurs dans un cluster Satellite avec les libellés d'hôte que vous souhaitez utiliser pour l'affectation automatique.
- Examinez les pools de noeuds worker existants pour identifier leurs libellés d'hôte. Notez que vous ne pouvez pas mettre à jour les libellés d'hôte d'un pool de noeuds worker. Vous pouvez consulter la commande Libellés d'hôte en exécutant la commande
ibmcloud oc worker-pool get -c <cluster> --worker-pool <worker_pool>. - Vérifiez les libellés d'hôte qu'un cluster de services IBM Cloud prêt pour Satellite utilise pour demander des ressources à partir de la console d'instance de service IBM Cloud prête pour Satellite.
-
Vérifiez les libellés d'hôte que possèdent les hôtes disponibles. N'oubliez pas que les libellés
cpuetmemorysont affectés automatiquement aux hôtes lorsque vous connectez les hôtes à votre emplacement Satellite.- Procédez à l'extraction du nom de l'emplacement Satellite.
ibmcloud sat location ls ``` 2. Affichez la liste des hôtes disponibles (non affectés) dans votre emplacement et notez les ID des hôtes dont vous souhaitez vérifier les libellés. ```sh {: pre} ibmcloud sat host ls --location LOCATION_NAME_OR_ID | grep unassigned ``` 3. Procédez à l'extraction des détails de chaque hôte que vous souhaitez vérifier et notez les **libellés** figurant dans la sortie. ```sh {: pre} ibmcloud sat host get --location LOCATION_NAME_OR_ID --host HOST_NAME_OR_ID ``` Exemple de sortie ```sh {: screen} ... Labels app webserver cpu 4 memory 3874564 os RHCOS ... ``` -
Mettez à jour les libellés de votre hôte disponible pour qu'ils correspondent à tous les libellés du pool de travailleurs pour lesquels vous souhaitez que l'hôte soit disponible pour l'affectation automatique. Si vous le souhaitez, vous pouvez définir une zone pour vous assurer que l'hôte n'est affecté automatiquement qu'à cette zone.
Les libellés
cpu,osetmemorysur l'hôte sont appliqués automatiquement et ne peuvent pas être modifiés.ibmcloud sat host update --location <location_name_or_ID> --host <host_name_or_ID> -hl <key=value> [-hl <key=value>] [--zone <zone1>]
Désactivation de l'affectation automatique de l'hôte
Les actions suivantes désactivent l'affectation automatique de l'hôte pour un pool de travailleurs. Vous pouvez ensuite réactiver l'affectation automatique de l'hôte.
Réactivation de l'affectation automatique de l'hôte
Si vous désactivez l'affectation automatique de l'hôte, vous pouvez réactiver l'affectation automatique.
- Vérifiez que des hôtes dont les libellés correspondent aux libellés d'hôte du pool de noeuds worker sont disponibles.
- Redimensionnez le pool de travailleurs pour définir la taille demandée par zone, rééquilibrer le pool de travailleurs et activer à nouveau l'affectation automatique.
Pour les clusters « Satellite », n'utilisez pas la commande « ibmcloud oc worker-pool rebalance » si vous avez attribué manuellement des nœuds de travail à votre pool de travail. Le rééquilibrage d'un pool comportant des nœuds de
travail attribués manuellement entraîne la suppression d'un nombre de nœuds de travail supérieur à celui prévu.