Sincronización de nodos de un pool de nodos de OKE

En Compute Cloud@Customer, al actualizar un pool de nodos, solo los nodos nuevos que se agreguen durante esta actualización o que se agreguen más tarde recibirán las actualizaciones. Para sustituir nodos existentes por nodos nuevos que utilicen valores actualizados, active la opción de sincronización de nodos.

La sincronización de nodos realiza una actualización in situ de todos los nodos existentes en el pool de nodos a la última configuración especificada. Se crean nuevos nodos, las cargas de trabajo se mueven a ellos desde los nodos existentes, se aplican las actualizaciones del pool de nodos actual y se terminan los nodos originales.

Puede definir el número máximo de nodos que se inician o terminan en un momento concreto.

  • Puntuación máxima. Número máximo de nodos nuevos que se pueden iniciar en cualquier momento durante esta operación de actualización. Defina este valor para evitar agregar demasiados nodos nuevos antes de que se terminen los nodos existentes, lo que podría generar un costo excesivo. El valor por defecto es 1. El valor máximo es 5.

  • Máximo de no disponibles. Número máximo de nodos existentes que se pueden terminar en cualquier momento durante esta operación de actualización. Defina este valor para asegurarse de que quedan suficientes nodos para manejar la carga de trabajo. El valor por defecto es 0. El valor máximo es 7.

Uno de estos valores debe ser mayor que 0.

Ambos valores se pueden definir en un número (de 0 al número configurado de nodos en el pool de nodos, pero no mayor que el máximo citado anteriormente) o en un porcentaje (de 0% a 100%, pero no en un porcentaje que resulte en un número mayor que el máximo citado anteriormente). Estos valores pueden tener un máximo de cuatro caracteres.

Ambos valores deben ser un número de nodos o ambos valores deben ser un porcentaje. No puede especificar uno de estos valores como un número de nodos y el otro como un porcentaje.

Si define cualquiera de estas propiedades en un valor de porcentaje que exceda el número máximo permitido de nodos, el mensaje de error indica el valor de porcentaje máximo permitido para este pool de nodos.

Nota

Si falla la operación de sincronización del nodo (por ejemplo, se agota el tiempo de espera de la operación), intente volver a ejecutar la operación. Es posible que necesite ejecutar la operación de sincronización de nodos varias veces si el sistema está cargado y en ejecución a escala.

  • Siga el procedimiento que se describe en Updating an OKE Node Pool para actualizar la configuración del pool de nodos.

    1. En la página de detalles del pool de nodos, seleccione el botón Sincronizar nodos.

    2. En el cuadro de diálogo Cycle Nodes, introduzca valores para las propiedades Maximum Surge y Maximum Unavailable.

      Consulte las reglas al principio de este tema.

    3. Seleccione el botón Sincronizar nodos del cuadro de diálogo para iniciar la operación de actualización del pool de nodos.

      Para supervisar el progreso de la operación de actualización, consulte el estado de la solicitud de trabajo asociada.

  • Utilice el comando oci ce node-pool update y los parámetros necesarios para actualizar un pool de nodos.

    oci ce node-pool update [OPTIONS]

    Para obtener una lista completa de los comandos, los indicadores y las opciones de la CLI, consulte la Referencia de la línea de comandos.

    Procedimiento

    1. Cree un comando para actualizar la configuración del pool de nodos como se describe en Updating an OKE Node Pool en el separador CLI.

    2. En ese mismo comando (no más tarde) incluya la opción --node-pool-cycling-details.

      Además de definir maximumUnavailable y maximumSurge, active la sincronización de nodos definiendo isNodeCyclingEnabled en true. Por defecto, isNodeCyclingEnabled es false y la sincronización de nodos no se realiza independientemente de la configuración de otras variables de sincronización de nodos.

      $ oci ce node-pool update --node-pool-id ocid1.nodepool.unique_ID \
      new_configuration_settings \
      --node-pool-cycling-details '{"isNodeCyclingEnabled":true,"maximumUnavailable":"value","maximumSurge":"value"}'

      Consulte el principio de este tema para conocer los posibles valores.

      En el siguiente ejemplo, la imagen se actualiza para todos los nodos del pool de nodos:

      $ oci ce node-pool update --node-pool-id ocid1.nodepool.unique_ID \
      --node-source-details '{"imageId":"ocid1.image.unique_ID","sourceType":"IMAGE"}' \
      --node-pool-cycling-details '{"isNodeCyclingEnabled":true,"maximumUnavailable":"5%","maximumSurge":"5%"}'

      Para supervisar el progreso de la operación de actualización, consulte el estado de la solicitud de trabajo asociada.

      Busque el OCID de la solicitud de trabajo:

      oci ce work-request list --compartment-id ocid1.compartment.unique_ID \
      --resource-id ocid1.nodepool.unique_ID

      Muestre el estado actual de la solicitud de trabajo:

      oci ce work-request get --work-request-id ocid1.workrequest.unique_ID
  • Utilice la operación UpdateNodePool para actualizar un pool de nodos.

    Si realiza cambios que agregan nuevos nodos de trabajador, tenga en cuenta los siguientes pasos:

    1. Configure los registros o repositorios que necesitan los nodos de trabajador. Asegúrese de tener acceso a un registro de contenedor de intranet o público autogestionado para utilizarlo con el servicio OKE y las imágenes de la aplicación.

    2. Cree un servicio para exponer las aplicaciones en contenedores fuera de Compute Cloud@Customer. Consulte Exposición de aplicaciones en contenedores.

    3. Cree un almacenamiento persistente para que lo utilicen las aplicaciones. Consulte Adición de almacenamiento para aplicaciones en contenedores.

    Para cambiar las propiedades de los nodos existentes, puede crear un nuevo pool de nodos con la nueva configuración y mover el trabajo a los nuevos nodos.

    Para obtener más información sobre el uso de la API y la firma de solicitudes, consulte API de REST y Credenciales de seguridad. Para obtener información sobre los SDK, consulte Software development kits e interfaz de línea de comandos.