22. containerd使用Devmapper snapshotter讲解

最近一直在跟进的工程是想打造k8e的serverless服务,也就是用VMM虚拟机来跑容器。其中对镜像存储的驱动不再是overlay,需要采用Device-mapper功能来驱动虚拟机的存储、运行。

Devmapper是一个containerd snapshotter插件,它将快照存储在Device-mapper thin-pool中的文件系统图像中。 Devmapper插件利用Device-mapper功能,如设备快照支持。

默认k8e是没有增加devmapper驱动的,我通过增加初始化定义解决了这个问题。

接下来就要配置插件:在默认目录

/var/lib/k8e/agent/containerd

下,复制config.toml为config.toml.tmpl

[plugins."io.containerd.snapshotter.v1.devmapper"]
    root_path = "/var/lib/k8e/agent/containerd"
    pool_name = "devpool"
    base_image_size = "8192MB"
    discard_blocks = true

参数解释:

  • root_path是元数据可用的目录(如果为空,将使用containerd插件的默认位置),
  • pool_name是用于Device-mapper thin-pool的名称。池名称应与/ dev / mapper /目录中的名称相同,
  • base_image_size定义

你可能感兴趣的:(Kubernetes,实践入门指南,kubernetes)