Gestionar una flota

Sigue estos pasos para ejecutar una flota de Code Engine con la CLI o la consola.

Antes de empezar

Para gestionar con éxito una flota, asegúrese de haber seguido los pasos indicados en Preparación de su flota. También tienes la opción de utilizar Code Engine para crear la imagen a la que haces referencia al crear tu flota.

Ejecutar una flota utilizando la consola

Sigue estos pasos para ejecutar una flota en la consola de Code Engine.

  1. Abre la consola de Code Engine.
  2. Pulse Iniciar creación.
  3. Seleccione un proyecto de la lista de proyectos disponibles. También puede crear uno nuevo. Debe tener un proyecto seleccionado para ejecutar una flota.
  4. Seleccione la opción para crear una flota.
  5. Especifica un nombre para la flota. Asegúrese de que el nombre es único para todas las flotas del proyecto.
  6. Especifique una imagen de contenedor para su flota, por ejemplo, icr.io/codeengine/helloworld. Si tienes tu propio código fuente y quieres convertirlo en una imagen de contenedor, consulta Planificación de la compilación. Para obtener más información sobre el código utilizado en este ejemplo, consulta helloworld.
  7. Siga las instrucciones para configurar su flota. Para obtener más información sobre la importancia de los parámetros de escalado, consulta Configuración del escalado de flotas.
  8. En la sección Tareas, especifica si deseas añadir tareas iniciales para la flota o no. Para más información, consulte Especificación de tareas.
  9. En la sección Recursos y escalado, configure los recursos de su instancia y especifique cómo escalar sus instancias hacia arriba o hacia abajo.
  10. En la sección Colocación en red, haga clic en Seleccionar grupos de subredes.
    1. Cree un nuevo grupo de subredes para especificar la ubicación en la red de los trabajadores de esta flota. Consulte Trabajar con la conectividad del grupo de subredes en Code Engine para obtener más información.
    2. O seleccione uno o más grupos de subredes existentes para especificar la ubicación en red de los trabajadores de esta flota.
    3. Haz clic en Aplicar para confirmar tu selección.
  11. En las secciones Variables de entorno y Montajes de volumen, añada pares clave-valor opcionales, configmaps o archivos adicionales que puedan ser utilizados por su código en ejecución.
  12. Pulse Crear.

Especificación de tareas

Puedes crear una flota con o sin tareas iniciales, y añadir tareas en cualquier momento.

Especificación de tareas en la consola

Para crear una flota sin tareas iniciales, consulta Creación de una flota sin tareas iniciales mediante la consola. Para añadir tareas tras su creación, consulta Añadir tareas a una flota mediante la consola.

Puede especificar las tareas de una de las siguientes formas:

  • Número de tareas: Selecciona Número de tareas y especifica cualquier número entero positivo.
  • Índices de tareas: para especificar un rango de tareas, puede indicar un conjunto de índices de tareas que incluya una lista, separada por comas, de rangos y números enteros positivos, como por ejemplo 2-5,7-8,10. Selecciona los índices de tareas e introduce los intervalos.
  • Tareas del archivo: para que se ejecuten diferentes tareas con distintos comandos o argumentos, puede crear un archivo de especificación de tareas que anule la definición de la imagen. El campo opcional idx puede utilizarse para especificar un índice de tarea personalizado. Este archivo debe tener el formato JSONL. Seleccionar tareas del archivo. Sube un archivo local o indica la ruta de acceso a un archivo en IBM Cloud Object Storage. Consulta el siguiente ejemplo de líneas que se pueden añadir a un archivo de especificaciones de tareas.
    { "cmds": ["my", "multipart", "command"], "args": ["arg1", "arg2"] }
    { "cmds": ["other", "cmd"], "args": ["arg"], "idx": "foo" }
    { "args": ["argA", "argB", "argC"], "idx": "bar" }
    { "cmds": ["just", "another", "command"], "idx": "1234" }
    
  • Tareas de IBM Cloud Object Storage: especifica tareas basadas en los objetos de un almacén de datos persistente (depósito de Object Storage ). Cada objeto genera una tarea. Selecciona Tareas en Cloud Object Storage y crea o selecciona un almacén de datos persistente. Si lo desea, especifique una ruta secundaria.

Nombre del lote (opcional): Añade un nombre de lote para todas las tareas añadidas con esta acción. Un nombre de lote identifica y agrupa tareas relacionadas. No es necesario que los nombres de los lotes sean únicos, por lo que puede reutilizar el nombre original del lote al volver a intentar tareas que hayan fallado. Por ejemplo, los nombres de los lotes pueden contener fechas o nombres de clientes.

Especificación de tareas en la CLI

Para crear una flota sin tareas iniciales, consulta Creación de una flota sin tareas iniciales mediante la CLI. Para añadir tareas tras la creación, consulta Añadir tareas a una flota existente mediante la CLI. Para crear una flota con tareas iniciales, consulta Creación de una flota con tareas iniciales mediante la CLI.

Puede especificar las tareas de una de las siguientes formas.

  • Número de tareas: especifica cualquier número entero positivo. Utilice la opción --tasks para especificar el número de tareas que desea ejecutar. Para crear una flota sin tareas, omite la opción --tasks.
  • Índices de tareas: para especificar un rango de tareas, puede indicar un índice de tareas que incluya una lista, separada por comas, de rangos y números enteros positivos, como por ejemplo 2-5,7-8,10. Utiliza la opción --task-indexes.
  • Tareas del archivo: para que se ejecuten diferentes tareas con distintos comandos o argumentos, puede crear un archivo de especificación de tareas que anule la definición de la imagen. El campo opcional idx puede utilizarse para especificar un índice de tarea personalizado. Este archivo debe tener el formato JSONL. Especifica el archivo con la opción --tasks-from-cos-object o --tasks-from-local-file. Consulta el siguiente ejemplo de líneas que se pueden añadir a un archivo de especificaciones de tareas.
    { "cmds": ["my", "multipart", "command"], "args": ["arg1", "arg2"] }
    { "cmds": ["other", "cmd"], "args": ["arg"], "idx": "foo" }
    { "args": ["argA", "argB", "argC"], "idx": "bar" }
    { "cmds": ["just", "another", "command"], "idx": "1234" }
    
  • Tareas de IBM Cloud Object Storage: especifica tareas basadas en los objetos de un almacén de datos persistente (depósito de Object Storage ). Cada objeto genera una tarea. Utiliza la opción --tasks-from-cos-bucket para especificar un depósito de Object Storage s y una subruta opcional.

Creación de una flota sin tareas iniciales mediante la consola

Puedes crear una flota sin especificar ninguna tarea. Si el número de espacios mínimos para contenedores o de espacios de reserva para contenedores es distinto de cero, los trabajadores se aprovisionan de inmediato. De lo contrario, no se crearán trabajadores hasta que se añadan las primeras tareas.

Utiliza este enfoque cuando la flota sea un recurso compartido y de larga duración que reciba tareas de múltiples fuentes o según una programación.

Para crear una flota sin tareas iniciales, sigue los pasos que se indican en Ejecutar una flota mediante la consola. En el paso 8, establezca Especificar tareas iniciales en No.

Copiar una flota para crear una nueva flota

Puede crear una nueva flota copiando la configuración de una flota existente mediante la consola de Code Engine. La función Crear copia duplica todos los ajustes de configuración de la flota de origen —incluidas la referencia de la imagen del contenedor, la asignación de recursos, las variables de entorno y los ajustes de escalado— en una nueva flota que luego se puede personalizar de forma independiente. Las tareas no se copian.

La nueva flota se comporta como una carga de trabajo independiente. La flota de origen no se ve afectada por ningún cambio en la nueva flota, y viceversa.

Antes de empezar, asegúrate de que ya se haya creado una flota en tu proyecto.

  1. Accede a la página de proyectos Code Engine.
  2. Haz clic en el nombre de tu proyecto para abrir la página de información general.
  3. Haz clic en Flotas para abrir una lista de tus flotas.
  4. Accede a la opción Crear copia de una de las siguientes formas:
    • Haz clic en el nombre de la flota que quieras copiar para abrir su página. A continuación, haz clic en el menú Acciones situado en la esquina superior derecha de la página y selecciona Crear copia.
    • En la lista de flotas, haz clic en el icono de acciones de fila (⋮) de la flota que quieras copiar y selecciona Crear copia.
  5. En la página Crear flota, la configuración de la flota de origen aparece ya rellenada. Introduce un nombre único para la nueva flota. Utilice un nombre que sea exclusivo dentro del proyecto.
  6. Revisa y, si lo consideras oportuno, modifica cualquier parámetro de configuración de la nueva flota, como la imagen del contenedor, la asignación de recursos, las variables de entorno o los ajustes de escalabilidad.
  7. Haz clic en Crear para crear la nueva flota.

Añadir tareas a una flota mediante la consola

Puedes añadir tareas a una flota en cualquier momento —tanto si la flota se encuentra en estado Pendiente, En ejecución o En espera — utilizando el botón Añadir tareas.

De forma asíncrona, Code Engine crea los registros de tareas y, si es necesario, asigna trabajadores adicionales.

Sigue estos pasos para añadir tareas a una flota existente en la consola de Code Engine.

  1. Accede a la página de proyectos Code Engine.
  2. Haz clic en el nombre de tu proyecto para abrir la página de información general.
  3. Haz clic en Flotas para abrir una lista de tus flotas. Haz clic en el nombre de tu flota para abrir la página de detalles.
  4. Haz clic en Añadir tareas.
  5. Especifica un conjunto de tareas para añadir a la flota. Véase también Especificaciones de la tarea.
  6. Si lo deseas, añade un nombre significativo al lote.
  7. Pulse Añadir.

Creación de una flota sin tareas iniciales mediante la CLI

Utiliza el siguiente comando de ejemplo para ejecutar una flota sin una tarea inicial. Este comando permite opciones adicionales. Para obtener una lista completa de todas las opciones comando disponibles, consulta la referencia de la CLI.

ibmcloud ce fleet run --name my-fleet --image icr.io/codeengine/helloworld --subnetpool-name my-pool --tasks-state-store mytaskstore
--name
El nombre de la flota. Este valor debe ser único para todas las flotas de un mismo proyecto. Si no se especifica el nombre de la flota, se genera uno aleatorio.
--image
La referencia a la imagen de contenedor que se utiliza para procesar las tareas. Este valor es obligatorio.
--subnetpool-name o --subnetpool-id
El nombre de la agrupación de subredes que se utilizará para la ubicación de la red de la flota.
El ID de la agrupación de subredes que se utilizará para la ubicación de la red de la flota.

Debes especificar o --subnetpool-name --subnetpool-id.

--tasks-state-store
Especifique el almacén de datos persistente que almacena el estado de las tareas de la flota. Este valor es obligatorio.

Salida de ejemplo:

Successfully created fleet with name 'my-fleet' and ID '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e'
Run 'ibmcloud ce fleet get --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to check the fleet status.
Run 'ibmcloud ce fleet worker list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of provisioned workers.
OK

Añadir tareas a una flota existente mediante la CLI

Utilice el siguiente comando de ejemplo para añadir tareas a una flota existente. Este comando permite opciones adicionales. Para obtener una lista completa de todas las opciones comando disponibles, consulta la referencia de la CLI.

También puedes utilizar el comando ibmcloud ce fleet task create.

Ejemplo

ibmcloud ce fleet task add --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e --tasks 1 --batch-name transactions-2026-09-04

Salida de ejemplo

Successfully added tasks to fleet with name 'fleet-0123456789' and ID '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e'
Run 'ibmcloud ce fleet get --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to check the fleet status.
Run 'ibmcloud ce fleet worker list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of provisioned workers.
Run 'ibmcloud ce fleet task list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of tasks.
OK
--fleet-id
El UUID de la flota a la que pertenece la tarea. Este valor es obligatorio.
--tasks
Especifique el número de tareas que la flota debe procesar. Este valor es obligatorio.
--batch-name
El nombre del lote utilizado para todas las tareas añadidas en la llamada actual. Se puede utilizar para identificar y agrupar tareas relacionadas. No es necesario que los nombres de los lotes sean únicos, por lo que puede reutilizar el nombre original del lote al volver a intentar tareas que hayan fallado. Por ejemplo, los nombres de los lotes pueden contener fechas o nombres de clientes.
Este valor es opcional. Si no se especifica, default se utiliza el nombre del lote.

Creación de una flota con tareas iniciales mediante la CLI

Utiliza el siguiente comando de ejemplo para ejecutar una flota con tareas iniciales. Este comando permite opciones adicionales. Para obtener una lista completa de todas las opciones comando disponibles, consulta la referencia de la CLI.

Cuando se han procesado todas las tareas disponibles, la flota pasa al estado de espera. Los trabajadores que ya no son necesarios para proporcionar el número mínimo de ranuras de contenedor se reducen hasta que se añadan nuevas tareas.

ibmcloud ce fleet run --name my-fleet --image icr.io/codeengine/helloworld --subnetpool-name my-pool --tasks-state-store mytaskstore --tasks 1
--name
El nombre de la flota. Este valor debe ser único para todas las flotas de un mismo proyecto. Si no se especifica el nombre de la flota, se genera uno aleatorio.
--image
La referencia a la imagen de contenedor que se utiliza para procesar las tareas. Este valor es obligatorio.
--subnetpool-name o --subnetpool-id
El nombre de la agrupación de subredes que se utilizará para la ubicación de la red de la flota.
El ID de la agrupación de subredes que se utilizará para la ubicación de la red de la flota.

Debes especificar o --subnetpool-name --subnetpool-id.

--tasks-state-store
Especifique el almacén de datos persistente que almacena el estado de las tareas de la flota. Este valor es obligatorio.
--tasks
El número de tareas a ejecutar.

Salida de ejemplo:

Successfully created fleet with name 'my-fleet' and ID '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e'
Run 'ibmcloud ce fleet get --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to check the fleet status.
Run 'ibmcloud ce fleet worker list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of provisioned workers.
Run 'ibmcloud ce fleet task list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of tasks.
OK