Precios para Code Engine
IBM Cloud® Code Engine es diferente de las tecnologías de computación en la nube tradicionales, el usuario solo paga los recursos que utiliza. Se le factura en función de la memoria y la vCPU que consumen sus cargas de trabajo, así como las llamadas HTTP entrantes. Si la app se escale hasta cero o si no se ejecuta el trabajo o la compilación, no se consumen recursos y, por lo tanto, no se le cobrará nada.
Code Engine incluye un nivel libre, lo que significa que el usuario puede experimentar con Code Engine antes de confirmar.
Se le factura en función de lo siguiente:
Las entidades de tipo proyectos no conllevan cargos, sino que sirven de carpeta para sus entidades. Las entidades de tipo secretos, enlaces o suscripciones no conllevan cargos pero afectan a los límites generales del proyecto. Para obtener más información, consulte Límites y cuotas de Code Engine.
Los costes que se proporcionan en este tema son orientativos y no representan los costes reales. Representan un punto de partida para las estimaciones de costes inmersos en entornos con una configuración similar. Los costes reales pueden variar según la ubicación geográfica. Para conocer los precios más actualizados, consulte Code Engine pricing.
Establecimiento de precios de aplicaciones
Cuando se despliega una aplicación, se aplican cargos por las solicitudes HTTP y por los recursos de CPU y memoria que consumen las instancias en ejecución de la aplicación. Las llamadas HTTP se facturan por número de llamadas HTTP que recibe la aplicación. Por ejemplo, si la app sirve 100 llamadas, se le facturarán 100 llamadas HTTP. El tráfico HTTP interno dentro de un proyecto entre cargas de trabajo queda excluido del total de llamadas HTTP facturables.
Por ejemplo:
- Si se crea una app de Code Engine con una memoria de
2GB (gigabytes) y con1CPU virtual, con una escala mínima y máxima de instancia de1, pasada una hora, se le cargará1hora de vCPU y2horas de GB. - Si se selecciona después una escala máxima de instancia de
2y la aplicación recibe suficientes solicitudes para realizar el escalado hasta 2, se le facturará (number of instances) x (number of virtual CPUs) =2vCPU y4GB por hora.
Para obtener las combinaciones de CPU y memoria válidas, consulte Combinaciones de memoria y CPU soportadas.
Tenga en cuenta que el tiempo que se tarda en extraer la imagen o en crearla a partir del código de origen se incluye en el tiempo facturable.
Establecimiento de precios de trabajos
Cuando se ejecuta un trabajo, se aplican cargos por los recursos de CPU y memoria que consume en trabajo cuando se ejecuta. No se le cobrará por la configuración del trabajo.
Por ejemplo:
- Si se crea un trabajo para procesar información a partir de IBM Cloud Object Storage con una instancia de trabajo y que se ejecute durante una hora y que utilice
4GB de memoria, se le facturará1hora de CPU y4horas de GB. - Si escala el mismo trabajo a
4instancias y se completa en 15 minutos, se le cobrarán4vCPU y16GB por.25horas.
Para obtener las combinaciones de CPU y memoria válidas, consulte Combinaciones de memoria y CPU soportadas.
Tenga en cuenta que el tiempo que se tarda en extraer la imagen o en crearla a partir del código de origen se incluye en el tiempo facturable.
Precios de función
Al desplegar una función, se aplican cargos por las solicitudes de HTTP y por los recursos de CPU y memoria que consumen las instancias en ejecución de la función. Las llamadas entrantes de HTTP se facturan por el número de llamadas de HTTP que recibe su función. Por ejemplo:
- Si su función atiende 100 llamadas, se le facturarán 100 llamadas a HTTP. El tráfico interno de HTTP dentro de un proyecto de Code Engine entre sus cargas de trabajo se excluye del total de llamadas facturables de HTTP.
- Si crea una función Code Engine con 2 GB de memoria y 0.5 de CPU virtual, después de 600 invocaciones (suponiendo que cada una requiera 6 segundos para completar el resultado), se le facturará por 0.5 vCPU hora y 2 GB horas.
Para obtener las combinaciones de CPU y memoria válidas, consulte Combinaciones de memoria y CPU soportadas.
El tiempo que se tarda en extraer el paquete de código o en construirlo a partir del código fuente se incluye en el tiempo facturable.
Precios de las flotas
Cuando se ejecuta una flota, sólo se cobran los recursos de CPU, memoria y, potencialmente, los recursos de GPU que se consumen mientras se ejecuta la flota.
Para cada flota que ejecute, puede optar por permitir que Code Engine despliegue nodos de trabajador para satisfacer los requisitos de recursos de la flota, o puede optar por desplegar un perfil de nodo de trabajador específico que usted especifique. A continuación se exponen los costes de ambas opciones.
Si deja que Code Engine aprovisione automáticamente los nodos trabajadores
Cuando ejecuta su flota, especifica la cantidad de recursos necesarios para ejecutar una instancia de su código para completar una tarea, y el número máximo de instancias que se ejecutarán simultáneamente. Code Engine despliega nodos trabajadores de varios perfiles potenciales para satisfacer estos requisitos de recursos de la manera más eficiente. En este escenario, el coste se basa en los nodos trabajadores desplegados, pero puede aproximarse utilizando los requisitos de recursos de instancia que especifique, el número de tareas y el tiempo medio de ejecución de la instancia. La fórmula para aproximar el coste de una flota a partir de estos valores es:
[ (total cost of vCPU seconds) + (total cost of GB seconds) ] x (# of tasks) x (average runtime of each task in seconds)
Por ejemplo, si una instancia de tu código requiere 2 vCPU y 4 GB, ejecutas 100 tareas, y el tiempo medio de ejecución de cada tarea es de 0.5 segundos, la fórmula para aproximar el coste total es:
[ 2 x (cost of 1 vCPU second) + 4 x (cost of 1 GB second) ] x (100) x (0.5)
El coste total de funcionamiento de la flota es la acumulación de los costes de cada nodo trabajador utilizado durante el tiempo de funcionamiento de la flota. Además, las instancias infructuosas pueden ver incrementado su tiempo de ejecución por reintentos, lo que puede aumentar el coste de la flota. Puede configurar los ajustes de reintento cuando cree la flota.
Code Engine no despliega automáticamente GPUs para flotas. Para desplegar GPUs para su flota, debe elegir desplegar un perfil de trabajador específico o una familia de GPUs.
Si elige un perfil de trabajador específico
Si eliges desplegar un perfil o familia de nodo trabajador específico para tu flota, sólo se desplegará ese tipo de nodo trabajador para tu flota. El coste total de funcionamiento de la flota es el coste acumulado de funcionamiento de cada nodo trabajador desplegado. También puedes elegir perfiles de trabajador con GPU.
Esta opción sólo está disponible actualmente en la CLI.
Tenga en cuenta que ésta puede no ser la forma más eficiente de gestionar su flota y que puede suponer un coste más elevado si los recursos de trabajadores desplegados superan los recursos necesarios.
Perfiles de trabajadores sin GPU
Si no utilizas GPUs, el coste de ejecutar un trabajador puede aproximarse con la siguiente fórmula:
[ (total cost of worker VPU seconds) + (total cost of worker GB seconds) ] x (average worker runtime in seconds)
Por ejemplo, si eliges un perfil de trabajador de 16 vCPU y 64 GB, y tu flota funciona durante 10 segundos, la fórmula para aproximar el coste total es:
[ 16 x (cost of 1 vCPU second) + 64 x (cost of 1 GB second) ] x (10)
El coste total de funcionamiento de la flota es el coste acumulado de funcionamiento de cada nodo trabajador que se despliega. Por ejemplo, si se despliegan 2 nodos de trabajador, se multiplicarían las fórmulas anteriores por
2 para aproximar el coste total. Tenga en cuenta que el número de nodos trabajadores depende de los recursos de instancias necesarios y del número máximo de instancias concurrentes.
Perfiles de los trabajadores de la GPU
Cada trabajador de GPU incurre en un cargo adicional por segundos de GPU. Puede aproximar el coste de funcionamiento de un trabajador GPU con la siguiente fórmula:
[ (total cost of GPU-seconds) + (Total cost of vCPU seconds) + (total cost of 1 GB second) ] x (average worker runtime in seconds)
Por ejemplo, consideremos el perfil del nodo trabajador gx3-24x120x2l40s. Puede utilizar los valores del perfil del nodo trabajador para aproximar el coste de utilización del trabajador. El perfil se compone de estas partes
- El primer valor
gx3es la categoría del nodo trabajador. - El segundo valor,
24es el vCPU - El tercer valor
120es el GB de memoria - El cuarto valor
2 L40s, representa el número de núcleos de la GPU L40s.
El coste aproximado por segundo de utilizar un nodo trabajador con este perfil es:
[ 24 x (cost of 1 vCPU second) + 120 x (cost of 1 GB second) + 2 x (cost of 1 L40 GPU-second) ] x (average worker runtime in seconds)
El coste total de funcionamiento de la flota es el coste acumulado de funcionamiento de cada nodo trabajador que se despliega. Por ejemplo, si se despliegan 2 GPU workers, se multiplicarían las fórmulas anteriores por 2 para aproximar el coste total. Tenga en cuenta que el número de nodos trabajadores depende de los recursos de instancia necesarios y del número máximo de instancias concurrentes.
Generar precios
Cuando se crea una imagen a partir del código fuente para desplegarla como app o ejecutarla como un trabajo, se le facturará por el tiempo de uso de memoria y de vCPU que consume la creación. Sin embargo, este cargo es independiente de los cargos que puedan producirse por la utilización de la imagen resultante en una ejecución de aplicación o de trabajo. No se le cobrará por la configuración de la compilación.
Las construcciones se clasifican en los tamaños small, medium, large, xlarge y xxlarge. El tamaño de la compilación define cómo se asignan los núcleos de CPU, la memoria y el espacio
de disco en la compilación cuando se ésta se ejecuta. Una compilación más pequeña es menos costosa, pero normalmente también es más lenta debido al menor número de núcleos de CPU. Además, los requisitos de memoria y de disco de una compilación
pueden hacer que la compilación falle si se elige un tamaño demasiado pequeño. Para obtener información sobre el tamaño de la compilación, consulte Determinación del tamaño de la compilación.
Tenga en cuenta que el tiempo que se tarda en extraer el código fuente y en enviar la imagen compilada se incluye en el tiempo facturable.