Uso de grupos de hosts informáticos para aprovisionar nodos gestionados

Descubra cómo utilizar grupos de hosts informáticos para controlar dónde crea Kubernetes Engine instancias de nodos de trabajador gestionados, incluido el uso de grupos de hosts informáticos configurados para el reciclaje rápido.

Un grupo de hosts informáticos es un recurso de servicio informático que agrupa hosts en un compartimento y un dominio de disponibilidad. En el motor de Kubernetes, puede seleccionar un grupo de hosts informáticos como tipo de capacidad para una configuración de colocación de pools de nodos gestionados. Cuando Kubernetes Engine crea instancias de nodo de trabajador para esa configuración de ubicación, el servicio de recursos informáticos coloca las instancias en hosts del grupo de hosts de recursos informáticos seleccionado.

Utilice grupos de hosts informáticos para controlar dónde Kubernetes Engine crea instancias de nodo de trabajador para un pool de nodos gestionado. Esto resulta útil para pools de nodos que utilizan unidades con hardware dedicado y que requieren la colocación de hosts dedicados o un comportamiento de reciclaje rápido.

El reciclaje rápido es una capacidad de grupo de hosts informáticos que puede hacer que un host esté disponible para su reutilización más rápidamente después de terminar la instancia de nodo de trabajador en el host. El reciclaje rápido solo está disponible con unidades soportadas. Para Kubernetes Engine, esto significa que cuando se termina una instancia de nodo de trabajador, el host puede estar disponible antes para una instancia de nodo de trabajador de sustitución, según la configuración del grupo de hosts de recursos informáticos.

Kubernetes Engine no crea grupos de hosts informáticos, asocia hosts a grupos de hosts informáticos ni configura niveles de reciclaje de grupos de hosts. Cree y configure el grupo de hosts informáticos en la CLI o la API del servicio Compute antes de seleccionarlo en Kubernetes Engine. Para obtener más información sobre la creación y configuración de grupos de hosts informáticos, consulte la Referencia de API de ComputeHostGroup y la referencia de CLI de Compute-host-group en la documentación del servicio Compute.

El cambio del grupo de hosts informáticos para una configuración de ubicación afecta a las nuevas instancias de nodo de trabajador. Las instancias de nodo de trabajador existentes no se mueven automáticamente. Para utilizar el grupo de hosts informáticos actualizado para los nodos existentes, finalice y sustituya las instancias de nodos de trabajador existentes para que el servicio Compute coloque las instancias de sustitución en los hosts del grupo de hosts informáticos actualizado. Para obtener más información, consulte Cese y sustitución de nodos de trabajador.

Antes de utilizar un grupo de hosts informáticos con un pool de nodos gestionado, tenga en cuenta lo siguiente:

  • Cree y configure el grupo de hosts informáticos en el servicio Compute.
  • Asegúrese de que el estado del ciclo de vida del grupo de hosts informáticos sea ACTIVE.
  • Asegúrese de que el grupo de hosts de cálculo esté en el mismo dominio de disponibilidad que la configuración de colocación del pool de nodos.
  • Asegúrese de que la unidad del pool de nodos coincida con la unidad del grupo de hosts informáticos.
  • Para el reciclaje rápido, utilice una unidad que soporte el reciclaje rápido y configure el nivel de reciclaje del grupo de hosts informáticos en el servicio Compute antes de seleccionar el grupo de hosts informáticos en Kubernetes Engine.
  • Agregue la política de IAM necesaria para que Kubernetes Engine pueda utilizar el grupo de hosts informáticos al iniciar instancias de nodo de trabajador.

Política de IAM necesaria

Para permitir que un pool de nodos utilice un grupo de hosts de cálculo, debe existir una política que permita a la entidad de recurso del pool de nodos utilizar el grupo de hosts de cálculo. Por ejemplo:

allow any-user to {HOST_GROUP_LAUNCH_INSTANCE} in compartment <compartment_name> where request.principal.type = 'nodepool' and target.resource.id = '<host_group_OCID>'

donde:

  • <compartment_name> es el nombre del compartimento que contiene el grupo de hosts informáticos.
  • <host_group_OCID> es el OCID del grupo de hosts informáticos.

Uso de la consola

Puede especificar un grupo de hosts informáticos al crear un cluster con un pool de nodos gestionado, crear un pool de nodos gestionado o actualizar un pool de nodos gestionado existente.

Creación de un cluster y especificación de un grupo de hosts de cálculo para un pool de nodos gestionado

  1. Siga las instrucciones para crear un cluster mediante el flujo de trabajo "Creación personalizada". Consulte Uso de la consola para crear un cluster con valores definidos explícitamente en el flujo de trabajo "Creación personalizada".
  2. Al especificar la configuración de ubicación de nodos para un pool de nodos gestionado en el cluster:
    1. Especifique el primer dominio de disponibilidad y subred:
      • Dominio de disponibilidad: seleccione el dominio de disponibilidad en el que se crearán los nodos de trabajador. Cuando selecciona un grupo de hosts informáticos, el grupo de hosts informáticos debe estar en el mismo dominio de disponibilidad.
      • Compartimento de subred de nodo de trabajador: seleccione el compartimento en el que reside la subred de nodo de trabajador.
      • Subred de nodo de trabajador: seleccione una subred regional (recomendado) o una subred específica de dominio de disponibilidad configurada para alojar nodos de trabajador, de la lista de subredes del compartimento especificado.
      • Dominios de errores: (opcional) uno o más dominios de errores en el dominio de disponibilidad en el que colocar los nodos de trabajador.
    2. Seleccione Opciones avanzadas y especifique el grupo de hosts informáticos que desea utilizar:

      • Tipo de capacidad: seleccione Grupo de hosts.
      • Compartimento: seleccione el compartimento que contiene el grupo de hosts informáticos.
      • Grupo de hosts: seleccione el grupo de hosts de recursos informáticos que desea utilizar en la lista. El grupo de hosts informáticos debe estar en el mismo dominio de disponibilidad que la configuración de ubicación.

    3. Opcionalmente, seleccione Agregar fila para agregar dominios de disponibilidad, subredes y grupos de hosts informáticos adicionales a la configuración de ubicación. Si especifica varios dominios de disponibilidad en la configuración de ubicación de un pool de nodos, puede especificar un grupo de hosts informáticos diferente para cada dominio de disponibilidad.
  3. Cree el cluster.

Kubernetes Engine crea el cluster y el pool de nodos gestionados. Para cada configuración de ubicación que especifica un grupo de hosts informáticos, el servicio Compute coloca las instancias de nodo de trabajador en los hosts del grupo de hosts informáticos seleccionado.

Creación de un pool de nodos gestionado y especificación de un grupo de hosts de cálculo

  1. En la página de lista Clusters, seleccione el nombre del cluster en el que desea crear un nuevo pool de nodos. Si necesita ayuda para buscar la página de lista o el cluster, consulte Listing Clusters.
  2. En el separador Pools de nodos de la página de detalles del cluster, seleccione Agregar pool de nodo para crear un nuevo pool de nodo gestionado y especificar las propiedades requeridas para sus nodos del trabajador.
  3. Al especificar la configuración de ubicación de nodos para un pool de nodos gestionado en el cluster:
    1. Especifique el primer dominio de disponibilidad y subred:
      • Dominio de disponibilidad: seleccione el dominio de disponibilidad en el que se crearán los nodos de trabajador. Cuando selecciona un grupo de hosts informáticos, el grupo de hosts informáticos debe estar en el mismo dominio de disponibilidad.
      • Compartimento de subred de nodo de trabajador: seleccione el compartimento en el que reside la subred de nodo de trabajador.
      • Subred de nodo de trabajador: seleccione una subred regional (recomendado) o una subred específica de dominio de disponibilidad configurada para alojar nodos de trabajador, de la lista de subredes del compartimento especificado.
      • Dominios de errores: (opcional) uno o más dominios de errores en el dominio de disponibilidad en el que colocar los nodos de trabajador.
    2. Seleccione Opciones avanzadas y especifique el grupo de hosts informáticos que desea utilizar:

      • Tipo de capacidad: seleccione Grupo de hosts.
      • Compartimento: seleccione el compartimento que contiene el grupo de hosts informáticos.
      • Grupo de hosts: seleccione el grupo de hosts de recursos informáticos que desea utilizar en la lista. El grupo de hosts informáticos debe estar en el mismo dominio de disponibilidad que la configuración de ubicación.

    3. Opcionalmente, seleccione Agregar fila para agregar dominios de disponibilidad, subredes y grupos de hosts informáticos adicionales a la configuración de ubicación. Si especifica varios dominios de disponibilidad en la configuración de ubicación de un pool de nodos, puede especificar un grupo de hosts informáticos diferente para cada dominio de disponibilidad.
  4. Cree el pool de nodos.

Kubernetes Engine crea el pool de nodos gestionado. Para cada configuración de ubicación que especifica un grupo de hosts informáticos, el servicio Compute coloca las instancias de nodo de trabajador en los hosts del grupo de hosts informáticos seleccionado.

Actualización del grupo de hosts informáticos para un pool de nodos gestionado

  1. En la página de lista Clusters, seleccione el nombre del cluster que desea modificar. Si necesita ayuda para buscar la página de lista o el cluster, consulte Listing Clusters.
  2. En el separador Pools de nodos de la página de detalles del cluster, seleccione el nombre del pool de nodos gestionado que desea modificar.
  3. Seleccione Editar en el menú Acciones.
  4. En Configuración de colocación de nodos, seleccione Opciones avanzadas y actualice el tipo de capacidad o el grupo de hosts informáticos seleccionado según sea necesario.
  5. Guarde los cambios.

El grupo de hosts informáticos actualizado se utiliza para las nuevas instancias de nodo de trabajador. Las instancias de nodo de trabajador existentes no se mueven automáticamente.

Para utilizar el grupo de hosts informáticos actualizado para los nodos existentes, finalice y sustituya las instancias de nodos de trabajador existentes para que el servicio Compute coloque las instancias de sustitución en los hosts del grupo de hosts informáticos actualizado. Para obtener más información, consulte Cese y sustitución de nodos de trabajador.

Uso de la CLI

Creación de un pool de nodos gestionado que utiliza un grupo de hosts de cálculo

Para utilizar la CLI para crear un pool de nodos gestionados que utilice un grupo de hosts informáticos para aprovisionar nodos gestionados, incluya el par clave/valor hostGroupId en la matriz placementConfigs en el parámetro --node-config-details con el formato:

oci ce node-pool create \
  --cluster-id <cluster_OCID> \
  --compartment-id <compartment_OCID> \
  --name <node_pool_name> \
  --kubernetes-version <kubernetes_version> \
  --node-shape <shape> \
  --node-config-details '{
    "size": 3,
    "placementConfigs": [
      {
        "availabilityDomain": "<availability_domain>",
        "subnetId": "<subnet_OCID>",
        "hostGroupId": "<host_group_OCID>"
      }
    ]
  }'

El grupo de hosts de recursos informáticos debe estar en el mismo dominio de disponibilidad que la configuración de ubicación y la unidad del pool de nodos debe coincidir con la unidad del grupo de hosts de recursos informáticos.

Actualización del grupo de hosts informáticos para un pool de nodos gestionado

Para utilizar la CLI para actualizar un pool de nodos gestionados que utiliza un grupo de hosts informáticos para aprovisionar nodos gestionados, incluya el par clave/valor hostGroupId en la matriz placementConfigs en el parámetro --node-config-details con el formato:

oci ce node-pool update \
  --node-pool-id <node_pool_OCID> \
  --node-config-details '{
    "placementConfigs": [
      {
        "availabilityDomain": "<availability_domain>",
        "subnetId": "<subnet_OCID>",
        "hostGroupId": "<host_group_OCID>"
      }
    ]
  }'

La actualización de hostGroupId afecta a las nuevas instancias de nodo de trabajador. Las instancias de nodo de trabajador existentes no se mueven automáticamente. Para utilizar el grupo de hosts informáticos actualizado para los nodos existentes, finalice y sustituya las instancias de nodos de trabajador existentes para que el servicio Compute coloque las instancias de sustitución en los hosts del grupo de hosts informáticos actualizado. Para obtener más información, consulte Cese y sustitución de nodos de trabajador.

Uso de la API

Al crear o actualizar un pool de nodos gestionado, especifique hostGroupId en cada configuración de ubicación que utilice un grupo de hosts informáticos.

Para crear solicitudes de pool de nodos, especifique:

CreateNodePoolDetails.createNodePoolNodeConfigDetails.placementConfigs[].hostGroupId

Para actualizar solicitudes de pool de nodos, especifique:

UpdateNodePoolDetails.updateNodePoolNodeConfigDetails.placementConfigs[].hostGroupId

Solución de problemas

Utilice la siguiente información para solucionar problemas con grupos de hosts de cálculo en pools de nodos gestionados.

El grupo de hosts informáticos no está disponible en la lista

Compruebe lo siguiente:

  • Ha seleccionado el compartimento correcto.
  • El grupo de hosts informáticos está en el mismo dominio de disponibilidad que la configuración de ubicación.
  • El grupo de hosts informáticos está activo.
  • Tiene permiso para ver o utilizar el grupo de hosts informáticos.

Fallo al crear o actualizar el pool de nodos

Compruebe lo siguiente:

  • La unidad del pool de nodos coincide con la unidad del grupo de hosts informáticos.
  • Existe la política de IAM necesaria.
  • El grupo de hosts informáticos seleccionado no se ha suprimido ni está inactivo.
  • El grupo de hosts informáticos seleccionado está en el mismo dominio de disponibilidad que la configuración de ubicación.

Los nodos existentes no se han movido al grupo de hosts informáticos actualizado

El cambio del grupo de hosts informáticos afecta a las nuevas instancias de nodos de trabajador. Las instancias de nodo de trabajador existentes no se mueven automáticamente.

Para utilizar el grupo de hosts informáticos actualizado para los nodos existentes, finalice y sustituya las instancias de nodos de trabajador existentes para que el servicio Compute coloque las instancias de sustitución en los hosts del grupo de hosts informáticos actualizado. Para obtener más información, consulte Cese y sustitución de nodos de trabajador.