ECI在运行容器前,需要先拉取用户指定的容器镜像,而因网络和容器镜像大小等因素,镜像拉取耗时往往成了ECI实例启动的主要耗时,用户可以通过镜像缓存技术来解决这个问题。
镜像缓存使用步骤:
- 创建镜像缓存。
- 查询镜像缓存信息。
- 使用镜像缓存创建ECI。
费用说明
您使用镜像缓存,包括创建费用和使用费用。
创建费用
在您提交镜像缓存创建申请后,阿里云会使用2C4G的ECI资源进行镜像缓存的创建,在创建过程中,包括的费用包括:
您可以在ECI控制台,查看对应的镜像缓存创建实例。
使用费用
您在创建ECI实例过程中,若指定使用镜像缓存特性,会为每个ECI实例挂载一块基于镜像缓存快照生成的云盘,费用请参见计费概述。
以华北2地域为例,您为每个实例使用一个20GB的镜像缓存盘(ESSD PL1 20GB),每小时实例费用增加0.04元。
创建镜像缓存
- 镜像缓存默认使用 2C4G 规格的 ECI 进行制作,制作过程中会产生一定的费用。
- 目前单个镜像缓存最多支持包含20个镜像,镜像缓存大小可自定义,默认为20G。
- 镜像缓存支持设置保留时长,过期后自动删除,该功能默认不启用,如需使用请设置保留时长。
- 如果选择了私有镜像(非阿里云容器镜像服务托管的镜像),则需要提供私有镜像仓库的地址、用户名和密码,ECI 需要用来拉取镜像。
- 如果所选镜像需要通过公网拉取(如 Docker官方镜像),则 ECI 需要具备外网访问。
通过控制台创建
在 ECI 控制台 方便的创建镜像缓存。
通过 OpenAPI 创建
可以在 OpenAPI Explorer 上方便的查看和调试镜像缓存的创建接口。
相关参数说明如下:
ImageCacheName=normalimage(镜像缓存名称)
Image.1=registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:1.15.10
Image.2=registry-vpc.cn-beijing.aliyuncs.com/eci_open/node:11
Image.3=registry-vpc.cn-beijing.aliyuncs.com/eci_open/mysql:5.6
RetentionDays=30(保留时长,取值范围1~65536,单位天)
ImageCacheSize=20(镜像缓存大小,默认为20,取值范围20~500,单位GiB)
查询镜像缓存信息
可以在 OpenAPI Explorer 上方便的查看和调试镜像缓存的查询接口。
接口返回的信息如下:
{
"ImageCaches": [
{
"CreationTime": "2019-12-18T03:18:02Z",
"Status": "Ready",
"ContainerGroupId": "eci-2zehl84ra0em1rzvku1f",
"ImageCacheId": "imc-2zehl84ra0em1rzvku1f",(镜像缓存ID)
"ImageCacheName": "normalimage",
"Events": [...
],
"SnapshotId": "s-2ze10h8c369eb7spa2oe",
"Images": [
"registry-vpc.cn-beijing.aliyuncs.com/eci_open/nginx:1.15.10",
"registry-vpc.cn-beijing.aliyuncs.com/eci_open/node:11",
"registry-vpc.cn-beijing.aliyuncs.com/eci_open/mysql:5.6"
],
"ExpireDateTime": "2020-01-17T20:49:47Z",(保留时间)
"Progress": "100%"(创建进度)
}
],
"RequestId": "1ABEBF6E-6780-49CA-8C34-EEC6017F3012"
}
使用镜像缓存创建ECI
使用镜像缓存创建ECI支持两种策略:
- 指定具体的镜像缓存。
- 开启自动匹配,由 ECI 来自动匹配和使用最佳的镜像缓存。
可以在 OpenAPI Explorer 上方便的查看和调试ECI实例创建接口。
注意 使用镜像缓存创建 ECI 时,需将容器的 ImagePullPolicy 参数设置为 IfNotPresent,否者效果将大打折扣。
指定具体的镜像缓存
ImageSnapshotId=imc-2zehl84ra0em1rzvku1f
开启自动匹配
AutoMatchImageCache=true
使用效果
在ECI控制台查看实例事件:
镜像已经存在于实例中,不再需要从远程拉取,镜像拉取耗时降低为0。
在阿里云容器服务中使用ECI镜像缓存,请参见使用镜像缓存 CRD 加速创建 Pod。
在文档使用中是否遇到以下问题
更多建议
匿名提交