Información sobre Code Engine

IBM Cloud® Code Engine (o "Code Engine") ha sido desarrollado por IBM con el objetivo de ayudarle a crear apps y trabajos modernos, centrados en orígenes y sin servidor. La plataforma está diseñada para atender las necesidades de los desarrolladores que solo quieren que su código se ejecute. Code Engine abstrae la carga operativa de crear, desplegar y gestionar cargas de trabajo en Kubernetes para que los desarrolladores puedan centrarse en lo que más les importa: el código fuente.

Ventajas de Code Engine

Revise las prestaciones que ofrece Code Engine para ejecutar cargas de trabajo.

Code Engine beneficios
Prestación Descripción
Ejecuciones de cargas de trabajo Code Engine ejecuta las aplicaciones basadas en HTTP y los trabajos por lotes de ejecución completa.
Servicio plenamente gestionado Code Engine se ocupa de toda la gestión del clúster, incluido el suministro, la configuración, el escalado y la gestión de servidores, por lo que no es necesario que se preocupe por la infraestructura subyacente.
Compilaciones del código Code Engine extrae el código fuente y crea la imagen de contenedor por usted. Code Engine admite Dockerfile y a Cloud Native Buildpack.
Cargas de trabajo privadas Almacene el código fuente en repositorios privados y envíe las imágenes a registros privados y Code Engine podrá acceder a las mismas.
completamente integrado Code Engine está totalmente integrado en IBM Cloud para que pueda aprovechar el catálogo completo de los servicios de IBM Cloud.
Cargas de trabajo basadas en sucesos Amplíe la funcionalidad de las aplicaciones con mensajes (sucesos) procedentes de los productores de sucesos. A continuación, la aplicación puede reaccionar ante estos sucesos y realizar acciones en función de los mismos.
Escalado automático - nivelar a cero Code Engine aumenta y disminuye automáticamente las cargas de trabajo, incluso hasta cero cuando no hay solicitudes activas. Solo debe pagar por los recursos que consume.
Control de acceso Asigne permisos de acceso a plataforma y de servicios a sus proyectos de IBM Cloud Identity and Access Management para controlar quién puede suministrar y gestionar recursos en su cuenta de IBM Cloud.
Basado en código abierto Code Engine se basa en un conjunto de tecnologías de código abierto como Kubernetes, Knative, Istio y Tekton, manteniendo la portabilidad de las apps y de los trabajos.
Protección DDoS Code Engine proporciona protección inmediata DDoS para su aplicación. Code Engine la protección de DDoS la proporciona Cloud Internet Services (CIS) sin coste adicional para usted. DDoS la protección cubre los ataques a los protocolos de Capa 3 y Capa 4 (TCP/IP) de Interconexión de Sistemas (OSI), pero no los ataques a la Capa 7 ( HTTP ). Véase DDoS protection.

Terminología de Code Engine

Conozca los conceptos básicos sobre Code Engine mediante la revisión de los siguientes términos clave.

Code Engine Términos
term Descripción
Aplicación Una aplicación, o app, ejecuta el código para servir solicitudes HTTP. Además de las solicitudes HTTP tradicionales, IBM Cloud® Code Engine también da soporte a aplicaciones que utilizan WebSockets como protocolo de comunicaciones. El número de instancias en ejecución de una aplicación se amplía o reduce automáticamente (hasta cero) en función de las solicitudes entrantes y de los ajustes de configuración. Una app contiene una o varias revisiones. Una revisión representa una versión inmutable de las propiedades de configuración de la app. Cada actualización de una propiedad de configuración de la app crea una nueva revisión de la app.
Crear Una compilación o una compilación de imagen es un mecanismo que puede utilizar para crear una imagen de contenedor a partir del código fuente. Code Engine permite compilar desde un archivo Docker y desde Cloud Native Buildpacks.
Paquete de código Un paquete de códigos es una colección de archivos que representa el código de función. Este paquete de código se inyecta en el contenedor de tiempo de ejecución. El paquete de código lo crea Code Engine y se almacena en el registro de contenedor o en línea con la función. Un paquete de códigos no es una imagen de contenedor estándar de Open Container Initiative (OCI).
Repositorio de código Un repositorio de código, como GitHub o GitLab, almacena el código fuente. Con Code Engine, puede añadir acceso a un repositorio de código privado y, a continuación, hacer referencia a dicho repositorio desde la compilación.
Configmap Un mapa de configuración proporciona un método para incluir información de datos no confidenciales en el despliegue. Al hacer referencia a los valores de su configmap como variables de entorno, puede desacoplar la información específica de su implementación y mantener su aplicación, trabajo o función portátil. Un mapa de configuración contiene información en pares de clave-valor.
Registro de imágenes de contenedor Un registro de contenedor, o registro, es un servicio que almacena imágenes de contenedor. Por ejemplo, IBM Cloud Container Registry y Docker Hub son registros de contenedor. Un registro de contenedor puede ser público o privado. Para acceder a un registro de contenedor público no se requieren credenciales. En cambio, el acceso a un registro privado requiere credenciales.
Función Una función es un fragmento de código sin estado que realiza tareas a medida que es invocado por las peticiones de HTTP. Con las funciones de IBM Code Engine, puede ejecutar su lógica empresarial de forma escalable y sin servidor. IBM Code Engine proporcionan un entorno de ejecución optimizado para soportar escenarios de baja latencia y escalabilidad rápida. Su código de función puede escribirse en un tiempo de ejecución gestionado que incluya versiones específicas de Node.js o Python.
Trabajo Un trabajo ejecuta una o más instancias de su código ejecutable en paralelo. A diferencia de las aplicaciones, que gestionan solicitudes HTTP, los trabajos se han diseñado para que se ejecuten una vez y se salga. Cuando crea un trabajo, puede especificar la información de configuración de carga de trabajo que se utiliza cada vez que se ejecuta el trabajo.
Flota Una flota, también llamada flota sin servidor, ejecuta una o más instancias de código de usuario para completar un conjunto de tareas específicas. Las flotas pueden procesar grandes cargas de trabajo de cálculo intensivo, permiten controlar los perfiles de las máquinas y pueden funcionar con recursos de GPU. Las flotas son de inquilino único, implementan colas de tareas dinámicas y proporcionan un control total sobre la configuración del perfil de la máquina. Además, las flotas pueden conectarse a nubes privadas virtuales (VPC) para acceder de forma segura a los datos y servicios de los usuarios.
Proyecto

Un proyecto es una agrupación de entidades de Code Engine, como aplicaciones, trabajos y compilaciones. Un proyecto se basa en un espacio de nombres de Kubernetes. El nombre del proyecto debe ser exclusivo en el grupo de recursos, la cuenta de usuario y la región de IBM Cloud®. Los proyectos se utilizan para gestionar recursos y proporcionar acceso a sus entidades. Un proyecto proporciona los siguientes elementos.

  • Proporciona un espacio de nombres exclusivo para los nombres de entidad.
  • Gestiona el acceso a los recursos del proyecto (acceso de entrada).
  • Gestiona el acceso a los servicios de respaldo, registros y repositorios (acceso de salida).
  • Tiene un certificado generado automáticamente para TLS (Transport Layer Service).
Secreto Un secreto proporciona un método para incluir información de configuración confidencial, como contraseñas o claves SSH, en el despliegue. Al hacer referencia a los valores de su secreto, puede desacoplar la información confidencial de su despliegue para mantener su aplicación, función o trabajo portátil. Cualquiera que tenga autorización sobre su proyecto también puede ver sus secretos; asegúrese de que se puede compartir la información secreta con dichos usuarios. Los secretos contienen información en pares de clave-valor.
Enlaces de servicio Los enlaces de servicio proporcionan acceso de aplicaciones, trabajos y funciones a los servicios de IBM Cloud.
Suscripción Una suscripción proporciona una forma de registrarse para recibir sucesos de un productor de sucesos determinado. Para obtener más información sobre los distintos tipos de generadores de sucesos y sobre cómo suscribirse a los mismos, consulte Suscripción a productores de sucesos.