弹性容器实例支持指定 VCI 规格来创建 VCI 实例。本文主要介绍指定 VCI 规格创建 通用型 实例的方法。
spec.resource
)时,按照指定的规格创建 Pod。若指定 VCI 规格的同时设置了容器的规格,按照本文下方 Pod 规格计算方式 中说明的方法,计算 Pod 规格。创建 Pod 或者工作负载(包括 Deployment、StatefulSet、Job、CronJob)时,通过添加 Annotation,指定 VCI 规格创建实例。
Annotation 说明,如下所示。
Annotation Key | Annotation Value 示例值 | 说明 | 是否必填 |
---|---|---|---|
vci.vke.volcengine.com/preferred-instance-types | vci.u1.2c-4gi | 通用型 中的实例规格。 说明
| 本场景必填 |
以创建无状态负载(Deployment)为例,完整的示例代码如下所示:
apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: annotations: vke.volcengine.com/burst-to-vci: enforce #强制使用 VCI。 vci.vke.volcengine.com/preferred-instance-types: vci.u1.2c-4gi #指定通用型实例规格。 labels: app: nginx spec: containers: - image: cr-cn-beijing.volces.com/tw/nginx:1.0 # 容器镜像的地址和版本,请配置为您自己的镜像地址。若使用公网镜像,请确保您的集群能够访问公网。 imagePullPolicy: Always name: nginx resources: requests: #指定容器的 vCPU、内存、GPU。 cpu: "2" memory: "4096Mi" limits: cpu: "4" memory: "8192Mi"
在 VCI 业务集群中 创建工作负载 时,配置以下参数:
指定的 VCI 规格与容器的 vCPU 和内存设置冲突时,系统按如下方式处理:
合计数值 | 计算方法 |
---|---|
CPU 合计数值 = 0 | 使用 Annotation 指定的 VCI 规格。 |
CPU 合计数值 = 0;内存合计数值 != 0 | 匹配非 0 项:
|
CPU 合计数值 != 0 内存合计数值 != 0 |
|
合计值 说明:
说明
如果某个 Init/应用容器没有配置 CPU 上限,则该容器按 CPU 请求值计算。
说明
如果某个 Init/应用容器没有配置内存上限,则该容器按内存请求值计算。