了解 Code Engine
IBM Cloud® Code Engine (或 " Code Engine ")由 IBM 开发,目标是帮助您创建现代化、以源为中心、容器化和无服务器的应用程序和作业。 Code Engine 将构建、部署和管理 Kubernetes 工作负载的操作负担抽象化,以便开发人员专注于最重要的事情:源代码。
Code Engine 的优点
查看 Code Engine 提供的用于运行工作负载的功能。
| 功能 | 描述 |
|---|---|
| 运行工作负载 | Code Engine 运行 HTTP 驱动的应用程序和运行到完成的批处理工作。 |
| 完全受管服务 | Code Engine 负责所有集群管理,包括供应,配置,缩放和管理服务器,因此您无需担心底层基础结构。 |
| 构建代码 | Code Engine 将提取源代码并为您创建容器映像。Code Engine 支持 Dockerfile 和 Cloud Native Buildpack。 |
| 专用工作负载 | 将源代码存储在专用存储库中,并将映像推送到专用注册表,Code Engine 可以访问这些注册表。 |
| 完全集成 | Code Engine 已完全集成到 IBM Cloud 中,以便您可以利用 IBM Cloud 服务的完整目录。 |
| 事件驱动的工作负载 | 使用来自事件生产者的消息 (事件) 扩展应用程序的功能。 然后,应用程序可以对这些事件作出反应,并根据这些事件执行操作。 |
| 自动缩放-甚至为零 | Code Engine 会自动向上和向下扩展工作负载,甚至在没有处于活动状态的请求时向下扩展为零。 您只需为所使用的资源付费。 |
| 控制访问权 | 在 IBM Cloud Identity and Access Management 中为您的项目分配平台和服务访问权限,以控制谁可以在您的 IBM Cloud 账户中提供和管理资源。 |
| 基于开源 | Code Engine 是基于一组开放式源代码技术 (例如 Kubernetes,Knative,Istio 和 Tekton) 构建的,可使应用程序和作业保持可移植。 |
| DDoS 保护 | Code Engine 为应用程序提供即时 DDoS 保护。Code Engine的 DDoS 保护由 Cloud Internet Services (CIS) 提供,无需额外费用。 DDoS 保护范围包括系统互连 (OSI) 第 3 层和第 4 层(TCP/IP)协议攻击,但不包括第 7 层( HTTP )攻击。 参见 DDoS 保护。 |
Code Engine 术语
通过查看以下关键术语,了解有关 Code Engine 的基本知识。
| 术语 | 描述 |
|---|---|
| 应用程序 | 应用程序或应用程序运行您的代码,为 HTTP 请求提供服务。 除了传统的 HTTP 请求外,IBM Cloud® Code Engine 还支持使用 WebSockets 作为通信协议的应用程序。 将根据入局请求和配置设置自动向上或向下扩展应用程序的运行实例数 (为零)。 应用程序包含一个或多个修订版。 修订版表示应用程序的配置属性的不可改变版本。 每次更新应用程序配置属性都会创建应用程序的新修订版。 |
| 构建 | 构建或映像构建是一种可用于从源代码创建容器映像的机制。Code Engine 支持从 Dockerfile 和 Cloud Native Buildpack 进行构建。 |
| 代码束 | 代码束是表示函数代码的文件的集合。 此代码束将注入到运行时容器中。 代码束由 Code Engine 创建,并存储在容器注册表中或与函数直接插入。 代码束不是开放式容器计划 (OCI) 标准容器映像。 |
| 代码存储库 | 代码库(如GitHub或GitLab,存储源代码。 通过 Code Engine,您可以添加对专用代码存储库的访问权,然后从构建引用该存储库。 |
| 配置映射 | configmap 提供了一种方法,用于将非敏感数据信息包含到部署中。 通过将 configmap 中的值作为环境变量引用,可以将特定信息与部署分离,并保持应用程序、作业或函数的可移植性。 configmap 包含键/值对中的信息。 |
| 容器映像注册表 | 容器注册表或注册表是存储容器映像的服务。 例如,IBM Cloud Container Registry 和 Docker Hub 是容器注册表。 容器注册表可以是公用或专用的。 公共容器注册表不需要凭证即可访问。 相反,访问专用注册表需要凭证。 |
| 功能 | 函数是一个无状态代码段,在 HTTP 请求调用时执行任务。 通过 IBM Code Engine 函数,您可以以可扩展和无服务器的方式运行业务逻辑。 IBM Code Engine 功能提供优化的运行环境,支持低延迟和快速扩展。 您的函数代码可以在托管运行时编写,托管运行时包括特定的 Node.js 或 Python 版本。 |
| 作业 | 作业并行运行可执行代码的一个或多个实例。 与处理 HTTP 请求的应用程序不同,作业只运行一次,然后退出。 创建作业时,可以指定每次运行作业时使用的工作负载配置信息。 |
| 车队 | 机群也称为无服务器机群,运行一个或多个用户代码实例来完成一组指定任务。 机群可处理大型计算密集型工作负载,允许控制机器配置文件,并可在 GPU 资源上运行。 机群是单一租户,实施动态任务队列,并提供对机器配置文件配置的全面控制。 此外,车队还可以连接到虚拟专用云(VPC),安全地访问用户数据和服务。 |
| 项目 | 项目是 Code Engine 实体 (例如应用程序,作业和构建) 的分组。 项目基于 Kubernetes 名称空间。 项目的名称在 IBM Cloud® 资源组,用户帐户和区域中必须唯一。 项目用于管理资源并提供对其实体的访问权。 项目提供以下项。 -提供实体名称的唯一名称空间。 -管理对项目资源的访问 (入站访问)。 -管理对支持服务,注册表和存储库的访问 (出站访问)。 -具有自动生成的传输层服务 (TLS) 证书。 |
| 私钥 | 秘密提供了一种在部署中包含敏感配置信息(如密码或 SSH 密钥)的方法。 通过引用私钥中的值,可以将敏感信息与部署分离,以保持应用程序,功能或作业可移植性。 有权访问您的项目的任何人也可以查看您的私钥; 请确保您知道可以与这些用户共享私钥信息。 私钥包含键/值对中的信息。 |
| 服务绑定 | 服务绑定提供对 IBM Cloud 服务的应用程序,作业和功能访问权。 |
| 预订 | 预订提供了一种注册以从特定事件生产者接收事件的方法。 有关不同类型的事件生产者以及如何预订这些生产者的更多信息,请参阅 预订事件生产者。 |