创建DataCache(数据缓存)后,您可以使用DataCache创建Pod,将缓存好的数据直接挂载到Pod中,免去拉取数据的等待时间,加速业务启动。本文介绍如何使用DataCache创建Pod。
前提条件
已创建DataCache。具体操作,请参见创建和管理DataCache。
配置说明
DataCache是Cluster级别的资源,因此在不同的Namespace下创建ECI Pod时均可以使用DataCache来提前拉取数据。
使用DataCache创建Pod时,您需要添加Annotation来指定DataCache的Bucket,并通过挂载HostPath的方式挂载DataCache的数据存储路径。
使用DataCache时,系统会自动创建并挂载一块按量付费的云盘。该云盘的容量等于数据缓存大小,随Pod一起创建和释放。
相关Annotation如下:
配置项 | 示例值 | 说明 |
k8s.aliyun.com/eci-data-cache-bucket | default | 指定DataCache的Bucket。使用DataCache创建Pod时必须配置。 |
k8s.aliyun.com/eci-data-cache-pl | PL1 | 基于DataCache创建的云盘的性能等级。默认使用ESSD云盘,性能等级默认为PL1。 |
k8s.aliyun.com/eci-data-cache-provisionedIops | "40000" | ESSD AutoPL云盘预配置的读写IOPS。取值范围:0~min{50000, 1000 * 容量-基准性能}。基准性能=min{1800+50 * 容量, 50000}。更多信息,请参见ESSD AutoPL云盘。 如果添加了该Annotation,则基于DataCache创建的云盘类型为ESSD AutoPL云盘。 |
k8s.aliyun.com/eci-data-cache-burstingEnabled | "true" | ESSD AutoPL云盘是否开启Burst(性能突发)。更多信息,请参见ESSD AutoPL云盘。 如果添加了该Annotation,则基于DataCache创建的云盘类型为ESSD AutoPL云盘。 |
仅支持在创建ECI Pod时添加ECI相关Annotation来生效ECI功能,更新ECI Pod时添加或者修改ECI相关Annotation均不会生效。
YAML示例如下:
apiVersion: v1
kind: Pod
metadata:
name: test
labels:
alibabacloud.com/eci: "true"
annotations:
k8s.aliyun.com/eci-data-cache-bucket: "default" #指定数据缓存Bucket
spec:
containers:
- name: modelscope
image: registry.cn-hangzhou.aliyuncs.com/modelscope-repo/modelscope:ubuntu20.04-py38-torch1.11.0-tf1.15.5-1.6.1
command: ["sleep", "999999"]
volumeMounts:
- name: "model"
mountPath: "/model"
volumes:
- name: "model"
hostPath:
path: "/model/ms/" #挂载数据存储的路径