Container Instances 常见问题解答

常见问题解答主题

一般问题

何时使用 OCI Container Instances,何时使用 OCI Container Engine for Kubernetes (OKE)?

Container Instances 非常适合运行不需要容器编排平台(例如 Kubernetes)的隔离容器,适用于 API、Web 应用、CI/CD 作业、自动化任务、数据/介质处理、开发/测试等使用场景。但是,它无法代替容器编排平台。在需要容器编排的使用场景下,请使用 OKE。

在 OCI Container Instances 上运行容器与在标准虚拟机上运行容器有何区别?

在 Container Instances 上运行容器时,您无需自行供应和管理任何 VM 或服务器。您只需指定容器映像、启动配置,然后就可以在 Container Instances 上运行容器了。另外,容器实例赖以运行的底层计算资源由 OCI 管理。如果在虚拟机上运行容器,那么您不仅要管理服务器,还要在虚拟机上安装和维护容器运行时。

OCI Container Instances 是如何定价的?

使用 OCI Container Instances,您只需为容器实例使用的基础设施资源付费。容器实例的 OCPU 和内存资源的定价与所选配置的 OCI Compute 实例相同。除此之外,您无需额外支付任何费用。使用 OCPU 和内存 (GB) 不足一小时的部分按部分小时数计费(最低一分钟),总使用量按秒数计算。默认情况下,每个容器实例免费提供 15 GB 临时存储。如需了解更多信息,请参阅 Container Instances 定价页面

我可以为容器实例分配多少核心和内存?

您可以在创建容器实例时选择底层计算配置,最多为容器实例分配该配置提供的最大核心和内存资源。x86 (AMD) 配置的常规核心限制为 8 个,ARM (Ampere) 配置的常规核心限制为 16 个。您可以为要求严苛的工作负载分配更多的核心。例如,如果选择 AMD E4 或 E3 Flex 配置,您最多可以为容器实例分配 64 个核心(128 个 vCPU)和 1024 GB 内存。与不带扩展核心的容器实例相比,创建带扩展核心的容器实例可能需要更长的时间。

是否可以在一个容器实例上运行多个容器?

可以。在创建容器实例时,您可以指定一个或多个容器和容器映像。您还可以为每个容器指定环境变量、资源限制、启动选项等等。

容器实例通常只运行单个应用。但是,您的应用程序容器可能需要支持性容器,例如日志采集 Sidecar 或数据库容器。对此,您可以在一个容器实例上为同一应用运行多个容器。另外,在同一容器实例上运行的容器将共享 CPU/内存资源、本地网络和临时存储,您可以在容器层面上实施 CPU/内存资源限制,界定每个容器使用的资源数量。

OCI Container Instances 支持哪些类型的容器注册表?

OCI Container Instances 支持所有符合开放容器计划标准的容器注册表,包括 OCI Container Registry。

是否可以使用 Container Instances 在基于 ARM 的处理器上运行应用?

可以。借助基于 ARM 的处理器,您能够以更低的成本运行现有工作负载,构建具有出色性价比的新应用。通过 OCI Container Instances,您可以在基于 ARM 的处理器上运行容器化应用,也就是在设置容器实例并为应用使用 ARM 兼容或多架构容器映像时选择 Ampere 配置(例如 CI.Standard.A1.Flex)。如果使用 Ampere A1 Flex 配置,您还可以获得 3000 OCPU 小时和 18000 GB 小时的免费套餐使用量。此免费套餐使用量可在裸金属、VM 和容器实例之间共享,

Container Instances 有哪些存储选项?

每个容器实例默认拥有 15 GB 临时存储。可用于各种用途,例如存储容器映像并支持每个容器的根覆盖文件系统。如果每个容器实例的任意容器映像大小超过 7.5 GB,则容器实例创建可能会失败。因此建议您使用外部数据库来存储需要独立于容器实例生命周期并且需要持久保存的应用数据。Oracle 将会发布基于 OCI Block Storage 和 OCI File Storage 的持久化存储卷选项。

容器实例的生命周期有多长?

当容器实例中的所有容器停止运行且未启用启动策略时,容器实例就会进入非活动状态。换言之,供临时工作负载使用的容器实例(如 CI/CD 管道、云操作相关的自动化任务、数据/媒体处理等)将在工作负载执行完毕后停止运行。系统只在作业期间计费。

对于需要保持运行状态的容器实例(如用于 Web 应用的容器实例),您可以配置重新启动策略,它将在发生故障后重新启动容器实例中的容器,确保应用始终正常运行。为了实现此类应用的高可用性,建议在给定区域中的两个可用性域或容错域中创建多个容器实例。

注:为免疑义,本网页所用以下术语专指以下含义:

  1. Oracle专指Oracle境外公司而非甲骨文中国。
  2. 相关Cloud或云术语均指代Oracle境外公司提供的云技术或其解决方案。