Límites y cuotas de Code Engine

En las secciones siguientes se proporcionan detalles sobre la limitación y los valores de cuota de IBM Cloud® Code Engine.

¿Cómo afecta la asignación de recursos a las cuotas de mi proyecto y a la facturación?

Desde la consola, puede ver información sobre la asignación de recursos de Code Engine actual desde la página de visión general del proyecto. Si deseas ver información sobre la memoria asignada y los valores de « vCPU » (Tamaño de la memoria de trabajo) según lo que hayas configurado para cada aplicación o trabajo concreto, consulta la lista de tus aplicaciones o trabajos en tu proyecto. Con la CLI, también puede obtener información sobre el uso actual de la asignación de recursos para el proyecto con el mandato project get.

Con « Code Engine », solo pagas por los recursos que utilizas, en función de la memoria configurada y de vCPU que consuman tus cargas de trabajo, así como de las llamadas entrantes a HTTP. Si tu aplicación se reduce a cero o tu tarea o compilación no se está ejecutando, no estás consumiendo recursos y, por lo tanto, no se te cobrará nada. Para alojar todas las aplicaciones y trabajos, Code Engine despliega y gestiona la infraestructura que necesita. Sin embargo, aunque no se le facture por esta infraestructura, sí cuenta para las cuotas del proyecto. Para obtener más información sobre las cuotas, consulte las tablas siguientes.

El uso del almacenamiento efímero está ahora limitado por la memoria. El almacenamiento efímero en Code Engine no puede superar el valor por defecto de 0.4 GB (400 MB) o el valor configurado para la memoria. Si necesitas más que el predeterminado para el almacenamiento efímero, debes aumentar la memoria de acuerdo con las combinaciones válidas de vCPU y memoria.

Consulte Combinaciones de memoria y CPU compatibles para obtener más información sobre la relación entre el almacenamiento efímero y la memoria.

Límites y valores predeterminados de aplicación

En la tabla siguiente se muestran los límites de las aplicaciones.

Límites de aplicación
Categoría Valor predeterminado Valor máximo ¿Necesita ampliar el máximo?
CPU 1.0 12.0 Póngase en contacto con el soporte de IBM.
Almacenamiento efímero 400 M 48 G
(limitado por la memoria)
Póngase en contacto con el soporte de IBM.
Escala máxima 10 250 Póngase en contacto con el soporte de IBM.
Memoria 4 G 48 G Póngase en contacto con el soporte de IBM.
Escala mínima 0 250 Póngase en contacto con el soporte de IBM.
Simultaneidad 100 1000 Póngase en contacto con el soporte de IBM.
Tiempo de espera 300 segundos 600 segundos Póngase en contacto con el soporte de IBM.

Para obtener información adicional sobre las combinaciones de CPU y memoria soportadas, consulte Combinaciones de memoria y CPU soportadas.

Code Engine tiene límites para las aplicaciones dentro de un proyecto.

  • El límite es de 40 aplicaciones por proyecto.
  • Tienes un límite de 120 revisiones en total para todas las aplicaciones de cada proyecto.

Code Engine no permite comprometer recursos de aplicaciones por encima de la capacidad. Por lo tanto, si crea una aplicación utilizando la API o con kubectl apply -f <yaml>, los valores de Resource.Requests y Resource.Limits para CPU, Memory y Ephemeral Storage deben especificarse y deben ser los mismos.

Límites y valores predeterminados de trabajo

En la tabla siguiente se muestran los límites de los trabajos.

Límites de trabajo
Categoría Valor predeterminado Valor máximo ¿Necesita ampliar el máximo?
Índices de matriz 0 9999999 Póngase en contacto con el soporte de IBM.
Tamaño de matriz 1 1000 N/D
CPU 1.0 12.0 Póngase en contacto con el soporte de IBM.
Almacenamiento efímero 400 M 48 G
(limitado por la memoria)
Póngase en contacto con el soporte de IBM.
Memoria 4 G 48 G Póngase en contacto con el soporte de IBM.
Reintentos 3 5 Póngase en contacto con el soporte de IBM.
Tiempo de espera 7200 segundos (2 horas) 86400 segundos (24 horas) Póngase en contacto con el soporte de IBM.

Los índices de las matrices son listas separadas por comas o un rango de índices separados por guiones, que especifican las instancias del trabajo que se van a ejecutar; por ejemplo, 1,3,6,9 o 1-5,7-8,10.

El tamaño de la matriz es el número de instancias del trabajo que se ejecutarán en paralelo.

Para obtener información adicional sobre las combinaciones de CPU y memoria soportadas, consulte Combinaciones de memoria y CPU soportadas.

Code Engine está limitado a 100 trabajo por proyecto. Una vez iniciadas 100 ejecuciones de tareas, asegúrate de eliminar las ejecuciones más antiguas antes de iniciar otras nuevas.

Límite de tamaño de trabajo

Code Engine limita el tamaño de trabajos y las ejecuciones de trabajo con un máximo de 10 KiB. Al crear o actualizar trabajos y ejecuciones de trabajos con la consola, la CLI o la API, Code Engine comprueba el tamaño del trabajo o de la ejecución de trabajo. Si la operación supera el límite, se produce un error de límite de tamaño excedido. Si aparece este error, intenta reducir el tamaño del trabajo o de la ejecución del mismo de alguna de las siguientes formas.

  • Si utiliza mandatos y argumentos, trate de reducir su uso, hágalos más cortos o trasládelos a la imagen del contenedor que es utilizado por su trabajo o ejecución de trabajo.

  • Si utiliza variables de entorno, trate de utilizar menos variables de entorno o hágalas más cortas. Puede utilizar secretos o mapas de configuración para definir variables de entorno e importarlas al trabajo utilizando las opciones --env-from-secret o --env-from-configmap con los mandatos job create, job update, jobrun submit y jobrun resubmit.

Para obtener más información sobre la resolución de problemas relacionados con los trabajos, consulta « Resolución de problemas: ¿Por qué no puedo enviar un trabajo? ».

Límites funcionales

En la siguiente tabla se indican los límites de las funciones.

Límites funcionales
Categoría Máximo
Duración de la ejecución 120 segundos
Memoria 48 000 MB
Tamaño del cuerpo de la solicitud y del cuerpo de la respuesta 5 MB
Tamaño del código (en línea) 100 KB, incluidos los gastos generales de base64
Tamaño del código (fuente local) 200 MB comprimidos
Tamaño del código (API) 100 KB, incluidos los gastos generales de base64

Límites de suscripción de temporizador periódico (cron)

La siguiente tabla enumera los límites para la suscripción periódica al temporizador.

Límites del temporizador periódico
Categoría Máximo ¿Necesita ampliar el máximo?
Tamaño de los datos 4096 bytes Póngase en contacto con el soporte de IBM.

Code Engine limita el tamaño de los datos para los sucesos de temporizador periódico (cron) con un máximo de 4096 bytes. Al crear o actualizar sucesos de temporizador periódico (cron), Code Engine comprueba el tamaño de los datos de sucesos de cron. Si los datos de sucesos de temporizador periódico (cron) superan el límite, se produce un error de límite de tamaño superado. Si recibe este error, intente reducir el tamaño de los datos de sucesos de cron a menos de 4096 bytes.

Para obtener información adicional sobre la resolución de problemas con las suscripciones, consulte Depuración de suscripciones.

Límites de proyecto

En la siguiente tabla se indican los límites para los proyectos.

Límites de proyecto
Categoría Máximo ¿Necesita ampliar el máximo?
Proyecto por región 20 Póngase en contacto con el soporte de IBM.

El número máximo de proyectos incluye los proyectos que están activos y los proyectos que no se han suprimido de forma permanente. Cuando eliminas un proyecto, este se elimina temporalmente y puede recuperarse en un plazo de 7 días antes de que se elimine definitivamente. Utilice la consola o la CLI para visualizar los proyectos suprimidos de forma blanda. Para obtener más información, consulte supresión de un proyecto.

Cuotas de proyecto

La tabla siguiente contiene las cuotas de los proyectos.

Tenga en cuenta que los límites se aplican independientemente unos de otros dentro de un proyecto. Si se alcanza un límite, como el límite de 512 GB de memoria, este límite de cuota puede afectar a la capacidad de ejecutar una carga de trabajo, aunque no se haya alcanzado otro límite, como el de 250 instancias de aplicaciones o trabajos.

Cuotas de proyecto
Categoría Descripción
Aplicaciones El límite es de 40 aplicaciones por proyecto.
Revisiones de aplicaciones Tienes un límite de 120 revisiones en total para todas las aplicaciones de cada proyecto.
Compilaciones Está limitado a 100 configuraciones de compilación por proyecto.
Ejecuciones de compilación Está limitado a 100 ejecuciones de compilación por proyecto antes de tener que eliminar o limpiar las antiguas.
Mapas de configuración Está limitado a 100 mapas de configuración por proyecto.
CPU La combinación total de todas las instancias de aplicación, instancias de trabajo en ejecución e instancias de compilación en ejecución no puede superar 128 vCPU.
Asignación de dominios (personalizada) Está limitado a 80 asignaciones de dominio personalizadas por proyecto.
Almacenamiento efímero La combinación total de todas las instancias de aplicación, instancias de trabajo en ejecución e instancias de compilación en ejecución no puede superar los 512 G de almacenamiento efímero.
Flotas El límite es de 1000 flotas por proyecto.
Funciones El límite es de 20 funciones por proyecto.
Instancias (activas) El número de instancias de aplicaciones, instancias de funciones, instancias de trabajos en ejecución e instancias de compilación en ejecución no puede superar las 250.
Instancias (total) El número de instancias activas y el número de instancias de trabajo y compilación completadas no puede superar 2500.
Trabajos Está limitado a 100 trabajos por proyecto.
Ejecuciones de trabajos Está limitado a 100 ejecuciones de trabajo por proyecto antes de tener que eliminar o limpiar las antiguas.
Memoria La combinación total de todas las instancias de aplicación, instancias de trabajo en ejecución e instancias de compilación en ejecución no puede superar los 512 G de memoria.
Secretos Está limitado a 100 secretos por proyecto.
Suscripciones (IBM Cloud Object Storage) Está limitado a 100 (Object Storage) suscripciones por proyecto.
Agrupaciones de subredes Está limitado a 1000 grupos de subredes por proyecto.
Suscripciones ( Kafka / IBM® Event Streams for IBM Cloud® ) El número de suscripciones a « Kafka » está limitado a 100 por proyecto.
Suscripciones (temporizador periódico (cron)) Está limitado a 100 suscripciones de temporizador periódico (cron) por proyecto.

Por ejemplo, está limitado a 128 vCPU o 250 instancias activas de una aplicación o trabajo. Dado que cada límite se aplica independientemente de otros límites, supongamos que desea escalar una aplicación a 250 instancias con 0.125 VCPU. Estos valores dan como resultado unos 32 vCPU, que funciona ya que este resultado es inferior al máximo de 128 vCPU. Sin embargo, no puede utilizar 512 instancias con 0.125 vCPU,, que seguiría cumpliendo el máximo de 128 vCPU, pero violaría el límite de un máximo de 250 instancias.

Aumento de límites

Los valores límite son fijos, pero puede ponerse en contacto con el soporte de IBM y crear un caso de soporte para aumentarlos.