开发者社区> 问答> 正文

如何实现镜像缓存?

如何实现镜像缓存?

展开
收起
小天使爱美 2020-03-20 16:32:07 1133 0
1 条回答
写回答
取消 提交回答
  • ECI 在运行容器前,需要先拉取用户指定的容器镜像,而因网络和容器镜像大小等因素,镜像拉取耗时往往成了 ECI 实例启动的主要耗时,用户可以通过镜像缓存技术来解决这个问题。

    镜像缓存使用步骤:

    创建镜像缓存 查询镜像缓存信息 使用镜像缓存创建 ECI 费用说明 您使用镜像缓存,包括创建费用和使用费用。

    创建费用 在您提交镜像缓存创建申请后,阿里云会使用1C2G的ECI资源进行镜像缓存的创建,在创建过程中,包括的费用包括:

    1C2G的ECI资源费用,镜像缓存创建完成后停止计费。ECI实例计费参考这里。 申明的镜像快照盘费用,默认使用ESSD PL1云盘,20G大小,您可以自定义指定盘的大小(最小20GB)。云盘计费参考这里。 您每创建一次镜像缓存,会提交一份云盘快照,快照的计费参考这里。 您可以在ECI控制台,查看对应的镜像缓存创建实例。

    使用费用 您在创建ECI实例过程中,若指定使用镜像缓存特性,会为每个ECI实例挂载一块基于镜像缓存快照生成的云盘,费用请参考 ESSD磁盘价格(PL1)。

    以华北2地域为例,您为每个实例使用一个20GB的镜像缓存盘(ESSD PL1 20GB),每小时实例费用增加0.04元。

    创建镜像缓存 镜像缓存默认使用 1C2G 规格的 ECI 进行制作,制作过程中会产生一定的费用。 目前单个镜像缓存最多支持包含20个镜像,镜像缓存大小可自定义,默认为20G。 镜像缓存支持设置保留时长,过期后自动删除,该功能默认不启用,如需使用请设置保留时长。 如果选择了私有镜像(非阿里云容器镜像服务托管的镜像),则需要提供私有镜像仓库的地址、用户名和密码,ECI 需要用来拉取镜像。 如果所选镜像需要通过公网拉取(如 Docker官方镜像),则 ECI 需要具备外网访问能力 通过控制台创建 在 ECI 控制台 方便的创建镜像缓存

    create

    通过 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 控制台查看实例事件:

    event

    镜像已经存在于实例中,不再需要从远程拉取,镜像拉取耗时降低为0。

    在阿里云容器服务中使用 ECI 镜像缓存,请参阅 使用镜像缓存 CRD 加速创建 Pod

    2020-03-20 20:49:19
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
基于英特尔 SSD 的虚拟机缓存解决SSD 立即下载
用户态高速块缓存方案 立即下载
高性能Web架构之缓存体系 立即下载