目前 EKS 已经支持在 Pod 中绑定 EIP ,只需在 template annotation 中说明即可。详情请参见 Annotation 说明 文档。
跟 EIP 有关的 Annotation 标识共有四个:
Annotation Key | Annotation Value 及描述 | 是否必填 |
---|---|---|
eks.tke.cloud.tencent.com/eip-attributes |
表明该 Workload 的 Pod 需要关联 EIP,值为 "" 时表明采用 EIP 默认配置创建。 "" 内可填写 EIP 云 API 参数 json,实现自定义配置。 |
如需绑定 EIP ,则此项为必填项 |
eks.tke.cloud.tencent.com/eip-claim-delete-policy |
Pod 删除后,EIP 是否自动回收,Never 不回收,默认回收。 | 否 |
eks.tke.cloud.tencent.com/eip-injection |
值为 "true" 时,表明会在 Pod 内暴露 EIP 的 IP 信息. 在 Pod 内使用 ip addr 命令可以查看到 EIP 的地址。 |
否 |
eks.tke.cloud.tencent.com/eip-id-list |
表明使用存量 EIP,仅支持 statefulset。默认销毁 Pod 不会回收 EIP。注意,statefulset pod 的数量最多只能为此 Annotation 中指定 eipId 的数量。 | 否 |
annotation
下,添加标识 eks.tke.cloud.tencent.com/eip-attributes: ""
。示例如下:metadata:
name: tf-cnn
annotations:
eks.tke.cloud.tencent.com/cpu: "8"
eks.tke.cloud.tencent.com/gpu-count: "1"
eks.tke.cloud.tencent.com/gpu-type: T4
eks.tke.cloud.tencent.com/mem: 32Gi
eks.tke.cloud.tencent.com/eip-attributes: "" #需求EIP,配置均为默认
kubectl describe pod [name]
可以发现多了两行跟 EIP 有关的事件,如下图所示,说明成功运行。
3. 查看 log 文件也发现能正常下载数据集。如下图所示:
注意:EIP 的申请每天有限额,不适用于需要多次运行的任务。
本页内容是否解决了您的问题?