Uso de reservas de capacidad para aprovisionar nodos gestionados

Descubra cómo reservar capacidad informática para clusters que ha creado mediante Container Engine for Kubernetes (OKE).

El servicio Compute permite crear reservas de capacidad para garantizar que la capacidad informática esté disponible para las cargas de trabajo cuando sea necesario durante eventos críticos, como la recuperación ante desastres o picos de carga de trabajo inesperados. Para obtener más información sobre cómo el servicio Compute asigna capacidad, cuánta capacidad se reserva y cómo se aplican los límites y las cuotas, consulte Reservas de capacidad.

Después de crear una reserva de capacidad en el servicio Compute, puede especificar esa reserva de capacidad al utilizar Container Engine for Kubernetes para definir la configuración de ubicación de un pool de nodos gestionado. La especificación de la reserva de capacidad garantiza que los nodos gestionados del pool de nodos se creen mediante instancias informáticas a partir de la capacidad reservada.

Tenga en cuenta lo siguiente:

  • Para poder especificar una reserva de capacidad en la configuración de ubicación de un pool de nodos, la reserva de capacidad ya debe existir. Para conocer los pasos para crear una reserva de capacidad, consulte Gestión de reservas de capacidad.
  • Asegúrese de que la unidad de nodo, el dominio de disponibilidad y el dominio de errores de la configuración de ubicación del pool de nodos coinciden con el tipo de instancia, el dominio de disponibilidad y el dominio de errores de la reserva de capacidad, respectivamente.
  • Si especifica varios dominios de disponibilidad en la configuración de ubicación de un pool de nodos, puede especificar una reserva de capacidad diferente para cada dominio de disponibilidad.
  • Cualquier cambio que realice en las propiedades del nodo de trabajador solo se aplica a los nuevos nodos de trabajador. La actualización de la reserva de capacidad asociada a un pool de nodos no afecta a las propiedades de los nodos de trabajador existentes.

Políticas de IAM necesarias para utilizar reservas de capacidad

Para utilizar una reserva de capacidad al definir la configuración de colocación de un pool de nodos, debe pertenecer a un grupo al que se le haya otorgado permiso para utilizar reservas de capacidad. Para otorgar este permiso, cree la siguiente política:

Allow group <group-name> to use compute-capacity-reservations in <location>

Tenga en cuenta que si un grupo no está en el dominio de identidad por defecto, agregue un prefijo al nombre de grupo con el nombre de dominio de identidad, con el formato group '<identity-domain-name>'/'group-name'. También puede especificar un grupo mediante su OCID, con el formato group id <group-ocid>.

Para aprovisionar nodos gestionados desde una reserva de capacidad, debe otorgar permiso a Container Engine for Kubernetes para iniciar instancias mediante reservas de capacidad. Para otorgar este permiso, cree la siguiente política:

Allow service oke to use compute-capacity-reservations in tenancy

Para obtener más información, consulte Política de IAM necesaria.

Reservas de capacidad por defecto

Container Engine for Kubernetes soporta el uso de reservas de capacidad por defecto al iniciar nodos gestionados. Con las reservas de capacidad por defecto, puede asegurarse de que se utiliza la misma reserva de capacidad cada vez que se inicia una instancia en el dominio de disponibilidad y el arrendamiento asociados a la reserva. Una vez creada una reserva de capacidad por defecto, todas las instancias (incluidos los nodos gestionados) iniciadas en ese dominio de disponibilidad y arrendamiento utilizan capacidad de la reserva de capacidad por defecto siempre que sea posible. Para obtener más información, consulte Default Capacity Reservations.

Puede haber ocasiones en las que no desee aprovisionar nodos de trabajador desde una reserva de capacidad por defecto. Puede seleccionar una reserva de capacidad alternativa o elegir no usar ninguna reserva de capacidad.

Uso de la consola

Creación de un cluster y especificación de reservas de capacidad

  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 una configuración definida explícitamente en el flujo de trabajo "Creación personalizada.
  2. Al especificar la configuración de ubicación 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 asociado a la reserva de capacidad que desea utilizar.
      • Dominio de errores: (opcional) uno o más dominios de errores en el dominio de disponibilidad en el que colocar los nodos de trabajador.
      • Subred: seleccione la subred asociada a la reserva de capacidad que desea utilizar.
    2. Haga clic en Mostrar opciones avanzadas y especifique la reserva de capacidad que desea utilizar:

      • Tipo de capacidad: seleccione Reserva de capacidad.
      • Reserva de capacidad: seleccione la reserva de capacidad que desea utilizar en la lista. Si no selecciona explícitamente una reserva de capacidad y se ha creado una reserva de capacidad por defecto para el dominio de disponibilidad, se utiliza la reserva de capacidad por defecto. Si no desea utilizar la reserva de capacidad por defecto o cualquier otra reserva de capacidad, seleccione Excluir de reserva por defecto.

    3. También puede hacer clic en Otra fila para agregar dominios de disponibilidad, subredes y reservas de capacidad 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 una reserva de capacidad diferente para cada dominio de disponibilidad.

Creación de un pool de nodos gestionados y especificación de reservas de capacidad

  1. Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Contenedores y artefactos, haga clic en Clusters de Kubernetes (OKE).
  2. Seleccione un compartimento en el que tenga permiso para trabajar.
  3. En la página Lista de clusters, haga clic en el nombre del cluster en el que desea crear un nuevo pool de nodos.
  4. En la página Cluster, consulte el separador Pools de nodos y, a continuación, haga clic en Agregar grupo de nodos para crear un nuevo grupo de nodos gestionados y especificar las propiedades requeridas para sus nodos de trabajador.
  5. Al especificar la configuración de ubicación 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 asociado a la reserva de capacidad que desea utilizar.
      • Dominio de errores: (opcional) uno o más dominios de errores en el dominio de disponibilidad en el que colocar los nodos de trabajador.
      • Subred: seleccione la subred asociada a la reserva de capacidad que desea utilizar.
    2. Haga clic en Mostrar opciones avanzadas y especifique la reserva de capacidad que desea utilizar:

      • Tipo de capacidad: seleccione Reserva de capacidad.
      • Reserva de capacidad: seleccione la reserva de capacidad que desea utilizar en la lista. Si no selecciona explícitamente una reserva de capacidad y se ha creado una reserva de capacidad por defecto para el dominio de disponibilidad, se utiliza la reserva de capacidad por defecto. Si no desea utilizar la reserva de capacidad por defecto o cualquier otra reserva de capacidad, seleccione Excluir de reserva por defecto.

    3. También puede hacer clic en Otra fila para agregar dominios de disponibilidad, subredes y reservas de capacidad 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 una reserva de capacidad diferente para cada dominio de disponibilidad.

Actualización de un pool de nodos gestionado y especificación de reservas de capacidad

  1. Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Contenedores y artefactos, haga clic en Clusters de Kubernetes (OKE).
  2. Seleccione un compartimento en el que tenga permiso para trabajar.
  3. En la página Lista de clusters, haga clic en el nombre del cluster que desea modificar.
  4. Haga clic en Pools de nodos en Recursos y haga clic en el nombre del pool de nodos gestionados que desea modificar.
  5. En la página Detalles de pool de nodos, haga clic en Editar.
  6. Al especificar la configuración de ubicación 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 asociado a la reserva de capacidad que desea utilizar.
      • Dominio de errores: (opcional) uno o más dominios de errores en el dominio de disponibilidad en el que colocar los nodos de trabajador.
      • Subred: seleccione la subred asociada a la reserva de capacidad que desea utilizar.
    2. Haga clic en Mostrar opciones avanzadas y especifique la reserva de capacidad que desea utilizar:

      • Tipo de capacidad: seleccione Reserva de capacidad.
      • Reserva de capacidad: seleccione la reserva de capacidad que desea utilizar en la lista. Si no selecciona explícitamente una reserva de capacidad y se ha creado una reserva de capacidad por defecto para el dominio de disponibilidad, se utiliza la reserva de capacidad por defecto. Si no desea utilizar la reserva de capacidad por defecto o cualquier otra reserva de capacidad, seleccione Excluir de reserva por defecto.

    3. También puede hacer clic en Otra fila para agregar dominios de disponibilidad, subredes y reservas de capacidad 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 una reserva de capacidad diferente para cada dominio de disponibilidad.
  7. Guarde los cambios.

Uso de la CLI

Para obtener información sobre el uso de la CLI, consulte Interfaz de línea de comandos (CLI). Para obtener una lista completa de los indicadores y las opciones disponibles para los comandos de la CLI, consulte Referencia de la línea de comandos.

Creación de un pool de nodos gestionados y especificación de reservas de capacidad

Para utilizar la CLI para crear un pool de nodos gestionados que utilice una reserva de capacidad para aprovisionar nodos gestionados, incluya el par de clave/valor capacityReservationId en el parámetro --placement-configs.

Por ejemplo:

oci ce node-pool create \
--cluster-id ocid1.cluster.oc1.iad.aaaaaaaaaf______jrd \
--name test-node \
--node-image-id ocid1.image.oc1.iad.aaaaaaaa6______nha \
--compartment-id oocid1.compartment.oc1..aaaaaaaay______t6q \
--kubernetes-version v1.21.5 \
--node-shape VM.Standard2.1 \
--placement-configs "[{\"availability-domain\":\"IqDk:US-ASHBURN-AD-2\", \"capacityReservationId\":\"ocid1.capacityreservation.oc1.iad.anuwcljt2ah______yeq\", \"subnet-id\":\"ocid1.subnet.oc1.iad.aaaaaaaa2xpk______zva\", \"faultDomains\":[\"FAULT-DOMAIN-3\", \"FAULT-DOMAIN-1\"]}, {\"availability-domain\":\"IqDk:US-ASHBURN-AD-1\", \"subnet-id\":\"ocid1.subnet.oc1.iad.aaaaaaaauhls______bpq\", \"faultDomains\": [\"FAULT-DOMAIN-1\", \"FAULT-DOMAIN-2\"]}]" \
--size 1 \
--region=us-ashburn-1 \

Si se ha creado una reserva de capacidad por defecto para el dominio de disponibilidad en el que está creando el pool de nodos, esa reserva de capacidad se utiliza por defecto. Si no desea utilizar la reserva de capacidad por defecto o cualquier otra reserva de capacidad, defina el valor de la clave capacityReservationId como una cadena vacía entre comillas dobles, es decir, \"capacityReservationId\":\"".

Si especifica varios dominios de disponibilidad en la configuración de ubicación de un pool de nodos, puede especificar una reserva de capacidad diferente para cada dominio de disponibilidad.

Uso de la API

Para obtener más información sobre el uso de la API y la firma de solicitudes, consulte la documentación de la API de REST y Credenciales de seguridad. Para obtener información sobre los SDK, consulte Los SDK y la CLI.

Utilice el atributo placementConfigs del objeto nodeConfigDetails para especificar reservas de capacidad al crear o actualizar pools de nodos gestionados.

Si se ha creado una reserva de capacidad por defecto para el dominio de disponibilidad en el que está creando el pool de nodos gestionado, esa reserva de capacidad se utiliza por defecto. Si no desea utilizar la reserva de capacidad por defecto o cualquier otra reserva de capacidad, defina el valor del campo capacityReservationId como una cadena vacía entre comillas dobles, es decir, "capacityReservationId":"".

Si especifica varios dominios de disponibilidad en la configuración de ubicación de un pool de nodos, puede especificar una reserva de capacidad diferente para cada dominio de disponibilidad.