注意:以下文档只适用于TOP接口,请谨慎使用!

文档中心 > 聚石塔

镜像缓存使用说明

更新时间:2022/01/18 访问次数:600

背景

在普通的 ECS 节点上,启动的 pod,都会首先检查本地是否存在相应的镜像,存在则直接使用,不存在在会通过网络 IO 进行下载,并在之后需要时,直接提供。

由于每一次启动 ECI,实际上都是新启动了一台 ECS,并在其基础上启动了一个 pod,因此导致 ECI 每次启动的时候都需要通过网络 IO 进行镜像下载,所以 ECI 的启动时间与镜像大小正相关,1G左右的镜像需要100s左右的时间进行下载,严重影响启动时间。

解决方案原理简介

为了解决上述问题,我们提供了一套镜像缓存的解决方案,主要的原理是:

1.提前准备镜像缓存:通过一台 1C2G 的 ECI,以及一块固定大小的磁盘(目前默认为 20G 的 ESSD),将指定的镜像镜像下载至硬盘上,并将其制作为硬盘快照

2.ECI启动时挂载:ECI 启动前会首先根据快照生成相应的 ESSD 磁盘,并挂在到 ECI 上,在 ECI 正式启动时,会首先检查本地是否存在镜像,存在则直接使用

使用流程

1、制作镜像缓存

通过 运维中心 - 镜像缓存 进入镜像缓存列表页,如下图所示

image.png

点击 新建镜像缓存 ,如下图

image.png

参数说明

基本信息:

名称:用于区分镜像名称,可以使用英文、数字、中划线

集群:会使用指定集群的安全组,公网带宽,秘钥等配置

(镜像缓存是全局有效的,生成的镜像缓存快照在主账号下所有集群都是共享的,与该出选择的集群无关)

官方镜像/自定义镜像:

选择相应镜像与指定版本,可以同时配置多个官方镜像与自定义镜像

2、允许应用使用镜像缓存

由于ECI使用镜像缓存使需要挂载磁盘,因此需要花费额外费用(例如 20G ESSD 磁盘,每小时大约 0.04 元),所以需要设置其允许使用 镜像缓存 后,ECI 才会使用。

通过 运维中心 - 集群管理 - 资源分配策略 找到对应条目,点击管理进入如下页面

image.png

首先需要在 调度到虚拟节点 处选择 可以,接着会看到 镜像缓存 选项,选择使用后,重新部署,该应用会在使用 ECI 时自动选择匹配度最高的镜像缓存镜像挂载。

3、检查镜像缓存是否生效

首先找到刚启动 ECI (最长不要超过1个小时,否则实时日志中的事件将被清楚),如下图所示

image.png

接着前往 应用日志 - 实时日志 查找该实例所对应的事件,如下图所示

a.未匹配成功

image.png

如果出现上图所示事件,说明未能匹配到 镜像缓存,请检查该实例所需镜像与版本是否被制作为 镜像缓存

image.png

通过上图可以看出拉取镜像时间为 36s 左右

b.匹配成功

image.png

如果出现上图所示事件,说明已匹配到 镜像缓存,其中 s-8vb6y5jaf9msx7fm4gz2 表示快照 id(后面会优化为镜像 id )

image.png

通过上图可以看出拉取镜像时间为 1s 左右(时间消耗为镜像检查时间)

费用

创建费用

  • ECI:1C2G的ECI资源费用,镜像缓存创建完成后停止计费。ECI实例计费参见计费概述
  • ESSD:申明的镜像快照盘费用,默认使用ESSD PL1云盘,20G大小。云盘计费参见这里
  • 快照:您每创建一次镜像缓存,会提交一份云盘快照,快照的计费参见快照计费方式

使用费用

ESSD:创建ECI实例过程中,若指定使用镜像缓存特性,会为每个ECI实例挂载一块基于镜像缓存快照生成的云盘,费用请参见计费概述

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

FAQ

关于此文档暂时还没有FAQ
返回
顶部