Accelerated Container Image 是一种基于块设备的容器镜像服务,由阿里巴巴开源,目前是containerd的子项目。
该项目的核心是overlaybd镜像格式,该镜像格式在阿里巴巴集团大量应用,支撑多年双11,支持阿里云多个serverless服务。overlaybd有别于传统基于文件系统的加速镜像格式,具有如下特性:
1、按需加载: 无需提前下载和解压镜像,容器启动时按需从远程加载数据。
2、高性能:基于块设备,实现更加简单高效,不存在copy up、hardlink等性能问题,性能高于基于fuse的镜像方案。
3、高可靠性:具备灾后恢复能力,fuse是难以实现的。
4、支持多种文件系统:用户可以根据自身业务需要,选择合适的文件系统。
除此之外,该方案还具备以下特性:
1、基于trace的数据预取,进一步加快容器启动时间。
2、多种缓存供选择。
3、支持镜像转换去重,避免重复转换。
4、支持通过buildkit构建镜像。
5、支持通过p2p链路下载数据。
项目地址:
1、accelerated-container-image
地址:https://github.com/containerd/accelerated-container-image
包含 containerd snapshotter、镜像转换工具等。
2、overlaybd
地址:https://github.com/containerd/overlaybd
是overlaybd镜像格式的实现,也是accelerated-container-image的后端存储。