Asignación automática de hosts con etiqueta de host
Los hosts disponibles se pueden asignar automáticamente a agrupaciones de nodos trabajadores en recursos de Satellite, como un clúster o un servicio de Satellitehabilitado para IBM Cloud cuando se utilizan etiquetas de host. Las etiquetas de host las utilizan las agrupaciones de nodos trabajadores para solicitar capacidad de cálculo a los hosts Satellite disponibles con etiquetas coincidentes. Puede habilitar e inhabilitar la asignación automática de hosts. Su anfitrión debe estar disponible antes de que pueda ser asignado.
La asignación automática de hosts no está disponible para el plano de control de ubicación de Satellite.
Etiquetas de host
La asignación automática de host funciona mediante la coincidencia de etiquetas de agrupaciones de trabajadores en clústeres de Satellite con las etiquetas de host y zona en los hosts Satellite disponibles.
Tenga en cuenta la siguiente información sobre las etiquetas de host que se utilizan para la asignación automática.
- Etiquetas de host predeterminadas
- Cuando conecta un host a una ubicación de Satellite , el host obtiene automáticamente etiquetas para
cpu
,os
ymemory
(en bytes). No puede eliminar estas etiquetas. Puede incluir etiquetas de host adicionales o actualizar los metadatos de host más adelante. Si el host no incluye la etiquetaos
, se asume automáticamente comoRHEL7
. - Los hosts pueden tener más etiquetas que las agrupaciones de trabajadores
- Por ejemplo, el host puede tener las etiquetas de host
cpu
,memory
yenv
, pero la agrupación de trabajadores solicitante sólo tiene una etiqueta de hostcpu
. La asignación automática de host coincide con las etiquetascpu
. Tenga en cuenta que lo contrario no funciona. Si una agrupación de trabajadores tiene más etiquetas que un host, el host no se puede asignar automáticamente a la agrupación de trabajadores. - La coincidencia es exacta
- Las etiquetas de host deben ser exactamente iguales (
=
). Aunque etiqueta de host sea un número, no se utilizan los operadores menor que (<
), mayor que (>
) u otros para hallar coincidencias.
Escenario de ejemplo para la asignación automática de host
Suponga que tiene un clúster de Satellite con una agrupación de trabajadores default
en us-east-1a
y las siguientes etiquetas de host.
cpu=4
env=prod
os=RHEL7
La ubicación de Satellite tiene hosts disponibles (no asignados) con las etiquetas de host que se indican a continuación.
- Host A:
cpu=4, memory=32, env=prod, zone=us-east-1b
os=rhel
- Host B:
cpu=4, memory=32, zone=us-east-1a
os=RHEL7
- Host C:
cpu=4, memory=64, env=prod
os=RHEL7
- Host D:
cpu=4, memory=64, env=prod
os=RHCOS
Si cambia el tamaño de la agrupación de nodos trabajadores default
para solicitar 3 nodos trabajadores más, solo se puede asignar automáticamente el host C, pero no el host A ni el host B.
- El host A cumple las solicitudes de etiqueta de CPU y
env=prod
, pero sólo se puede asignar enus-east-1b
. Puesto que la agrupación de trabajadoresdefault
sólo está enus-east-1a
, el Host A no se asigna. - El host B cumple las solicitudes de CPU y de zona. Sin embargo, el host no tiene la etiqueta
env=prod
y no se asigna. - El host C se asigna automáticamente porque coincide con las etiquetas de host
cpu=4
yenv=prod
y no tiene ninguna restricción de zona. La etiqueta de hostmemory=64
no se tiene en cuenta porque la agrupación de nodos trabajadores no solicita una etiquetamemory
. - El host D cumple las solicitudes de etiqueta de CPU, zona y
env=prod
, pero no cumple la solicitudos
deRHEL7
, por lo que no se asigna.
Los hosts se deben asignar como nodos trabajadores en cada zona de la agrupación de nodos trabajadores predeterminada del clúster. Si la agrupación de nodos trabajadores predeterminada abarca varias zonas, asegúrese de que tiene hosts con etiquetas coincidentes que se pueden asignar en cada zona.
Asignación automática de hosts
IBM Cloud Satellite puede asignar automáticamente hosts a agrupaciones de trabajadores en clústeres de Satellite que soliciten capacidad de cálculo utilizando etiquetas de host como, por ejemplo, cpu
.
Antes de empezar, asegúrese de que crea un clúster de Satellite. Si crea un clúster en la CLI, debe especificar la opción --workers
con el número de hosts que desea asignar automáticamente. A continuación, asegúrese de adjuntar hosts a la ubicación de Satellite, pero no asigne los hosts a ningún recurso.
-
Revise las etiquetas de host que utilizan las agrupaciones de nodos trabajadores para solicitar capacidad de cálculo. Tiene varias opciones.
- Crear una agrupación de trabajadores en un clúster de Satellite con las etiquetas de host que desea utilizar para la asignación automática.
- Revisar las agrupaciones de nodos trabajadores existentes para ver sus etiquetas de host. Tenga en cuenta que no puede actualizar las etiquetas de host que tiene una agrupación de nodos trabajadores. Puede revisar las Etiquetas de host ejecutando el mandato
ibmcloud oc worker-pool get -c <cluster> --worker-pool <worker_pool>
. - Revise las etiquetas de host que utiliza un clúster de servicio IBM Cloud habilitado para Satellitepara solicitar recursos de la consola de instancia de servicio IBM Cloud habilitada para Satellite.
-
Revise las etiquetas de host que tienen los hosts disponibles. Recuerde que los hosts obtienen automáticamente las etiquetas
cpu
ymemory
cuando conecta el host a la ubicación de Satellite.- Obtenga el nombre de la ubicación de Satellite.
ibmcloud sat location ls
- Obtenga una lista de los hosts disponibles (no asignados) de su ubicación y anote los ID de los hosts cuyas etiquetas desea comprobar.
ibmcloud sat host ls --location <location_name_or_ID> | grep unassigned
- Para cada host que desee comprobar, obtenga los detalles del host y anote las Etiquetas de la salida.
Salida de ejemploibmcloud sat host get --location <location_name_or_ID> --host <host_name_or_ID>
... Labels app webserver cpu 4 memory 3874564 os RHCOS ...
- Obtenga el nombre de la ubicación de Satellite.
-
Actualice las etiquetas del host disponible para que coincidan con todas las etiquetas de la agrupación de trabajadores para la que desea que el host esté disponible para la asignación automática. Si lo desea puede especificar una zona para asegurarse de que el host solo se asigna automáticamente a dicha zona.
Las etiquetas
cpu
,os
ymemory
en el host se aplican automáticamente y no se pueden editar.ibmcloud sat host update --location <location_name_or_ID> --host <host_name_or_ID> -hl <key=value> [-hl <key=value>] [--zone <zone1>]
Inhabilitar la asignación automática de hosts
Las acciones siguientes inhabilitan la asignación automática de hosts para una agrupación de trabajadores. Más tarde, puede volver a habilitar la asignación automática de hosts.
Volver a habilitar la asignación automática de hosts
Si ha inhabilitado la asignación automática de hosts, puede volver a habilitarla.
- Asegúrese de que tiene hosts disponibles con etiquetas que coincidan con las etiquetas de host de la agrupación de nodos trabajadores.
- Cambie el tamaño de la agrupación para establecer el tamaño solicitado por zona, reequilibrar la agrupación de trabajadores y habilitar de nuevo la asignación automática.
Para clústeres Satellite, no utilice el comando ibmcloud oc worker-pool rebalance
si ha asignado manualmente nodos de trabajador a su grupo de trabajadores. Reequilibrar un pool con nodos trabajadores asignados manualmente podría
eliminar más nodos trabajadores de los esperados.