Assegnazione automatica di host con etichetta host
Gli host vengono assegnati automaticamente ai pool di worker nei cluster o nei servizi di " Satellite " di IBM Cloud, utilizzando le etichette degli host per abbinarli alla capacità di calcolo disponibile. È possibile attivare o disattivare l'assegnazione automatica.
L'assegnazione automatica dell'host non è disponibile per il piano di controllo della sede Satellite.
Etichette host
L'assegnazione automatica degli host abbina le etichette del pool di worker nei cluster " Satellite " alle etichette degli host e delle zone sugli host disponibili.
Tenere a mente le seguenti informazioni sulle etichette host utilizzate per l'assegnazione automatica.
- Etichette host predefinite
- Quando colleghi un host a un'ubicazione Satellite, l'host ottiene automaticamente le etichette per
cpu,osememory(in byte). Non è possibile rimuovere queste etichette. È possibile includere ulteriori etichette host o aggiornare i metadati host in un secondo momento. Se l'host non include l'etichettaos, viene automaticamente assunto comeRHEL7. - Gli host possono avere più etichette dei pool di lavoro
- Ad esempio, un host con le etichette
cpu,memoryeenvpuò essere assegnato automaticamente a un pool di worker che presenta solo l'etichettacpu. L'assegnazione automatica dell'host corrisponde alle etichettecpu. Il contrario non è vero: se un pool di worker ha più etichette rispetto a un host, l'host non può essere assegnato automaticamente a quel pool di worker. - La corrispondenza è esatta
- Le etichette host devono essere esattamente uguali (
=). Anche se l'etichetta host è un numero, per la corrispondenza vengono utilizzati non meno di (<), più di (>) o altri operatori.
Scenario di esempio per l'assegnazione automatica dell'host
Dì di avere un cluster Satellite con un pool di nodi di lavoro default in us-east-1a e le seguenti etichette host.
cpu=4env=prodos=RHEL7
La tua ubicazione Satellite ha host disponibili (non assegnati) con etichette host come segue.
- Conduttore A:
cpu=4, memory=32, env=prod, zone=us-east-1bos=rhel - Conduttore B:
cpu=4, memory=32, zone=us-east-1aos=RHEL7 - Presentatore C:
cpu=4, memory=64, env=prodos=RHEL7 - Conduttore D:
cpu=4, memory=64, env=prodos=RHCOS( Red Hat CoreOS )
Se si ridimensiona il pool di nodi di lavoro default per richiedere altri 3 nodi di lavoro, è possibile assegnare automaticamente solo l'host C, ma non l'host A o l'host B.
- L'host A gestisce le richieste relative all'unità centrale di elaborazione (CPU) e all'etichett
env=prod, ma può essere assegnato solo inus-east-1b. Poiché il pool di nodi di lavorodefaultè solo inus-east-1a, l'host A non viene assegnato. - L'host B soddisfa le richieste di CPU e zona. Tuttavia, l'host non ha l'etichetta
env=prode quindi non è assegnato. - L'host C viene assegnato automaticamente perché corrisponde alle etichette host
cpu=4eenv=prode non ha alcuna limitazione di zona. L'etichetta hostmemory=64non viene considerata perché il pool di nodi di lavoro non richiede un'etichettamemory. - L'host D soddisfa le richieste di CPU, zona e etichetta
env=prod, ma non soddisfa la richiestaosdiRHEL7e quindi non è assegnato.
Gli host devono essere assegnati come nodi di lavoro in ciascuna zona del pool di nodi di lavoro predefinito nel tuo cluster. Se il tuo pool di nodi di lavoro predefinito si estende su più zone, assicurati di avere host con etichette corrispondenti che possono essere assegnate in ogni zona.
Assegnazione automatica degli host
IBM Cloud Satellite assegna automaticamente gli host ai pool di worker nei cluster che richiedono capacità di calcolo utilizzando etichette di host quali cpu.
Prima di iniziare, assicurati di creare un cluster Satellite. Se si crea un cluster in CLI, è necessario specificare l'opzione
--workers con il numero di host che si desidera assegnare automaticamente. Assicurati quindi di collegare gli host alla tua ubicazione Satellite, ma non assegnare gli
host ad alcuna risorsa.
-
Esamina le etichette host utilizzate dai pool di nodi di lavoro per richiedere la capacità di calcolo. Sono disponibili diverse opzioni.
- Crea un pool di nodi di lavoro in un cluster Satellite con le etichette host che desideri utilizzare per l'assegnazione automatica.
- Esaminare i pool di lavoro esistenti per le relative etichette host. Nota che non puoi aggiornare le etichette host di un pool di nodi di lavoro. È possibile esaminare Etichette host eseguendo il comando
ibmcloud oc worker-pool get -c <cluster> --worker-pool <worker_pool>. - Esamina le etichette host che un cluster di servizio Satellite-enabled IBM Cloud utilizza per richiedere risorse dalla console dell'istanza del servizio Satellite-enabled IBM Cloud.
-
Esaminare le etichette host di cui dispongono gli host disponibili. Ricorda che gli host ricevono automaticamente le etichette
cpuememoryquando colleghi l'host alla tua ubicazione Satellite.- Ottieni il nome ubicazione Satellite.
ibmcloud sat location ls ``` 2. Elencare gli host disponibili (non assegnati) nella propria ubicazione e annotare gli ID degli host per cui si desidera controllare le etichette. ```sh {: pre} ibmcloud sat host ls --location LOCATION_NAME_OR_ID | grep unassigned ``` 3. Per ogni host che vuoi controllare, ottieni i dettagli host e prendi nota delle **Etichette** nell'output. ```sh {: pre} ibmcloud sat host get --location LOCATION_NAME_OR_ID --host HOST_NAME_OR_ID ``` Output di esempio ```sh {: screen} ... Labels app webserver cpu 4 memory 3874564 os RHCOS ... ``` -
Aggiornare le etichette del proprio host disponibile in modo che corrispondano a tutte le etichette del pool di lavoro che si desidera che l'host sia disponibile per l'assegnazione automatica. Facoltativamente, è possibile specificare una zona per assicurarsi che l'host venga assegnato automaticamente solo a tale zona.
Le etichette
cpu,osememorysull'host vengono applicate automaticamente e non possono essere modificate.ibmcloud sat host update --location <location_name_or_ID> --host <host_name_or_ID> -hl <key=value> [-hl <key=value>] [--zone <zone1>]
Disabilitazione dell'assegnazione automatica dell'host
Le seguenti azioni disabilitano l'assegnazione automatica dell'host per un pool di lavoro. Successivamente, è possibile riabilitare l'assegnazione automatica dell'host.
Riabilita assegnazione automatica host
Se è stata disabilitata l'assegnazione automatica dell'host, è possibile riabilitare l'assegnazione automatica.
- Assicurati di avere host disponibili con etichette che corrispondono alle etichette host del pool di nodi di lavoro.
- Ridimensionare il pool di nodi di lavoro per impostare la dimensione richiesta per zona, ribilanciare il pool di nodi di lavoro e abilitare nuovamente l'assegnazione automatica.
Per i cluster “ Satellite ”, non utilizzare il comando “ ibmcloud oc worker-pool rebalance ” se hai assegnato manualmente i nodi di lavoro al tuo pool di worker. Il ribilanciamento di un pool con nodi di lavoro assegnati manualmente
comporta la rimozione di un numero di nodi di lavoro superiore a quello previsto.