什么是集群镜像
顾名思义,和操作系统.iso镜像或Docker镜像类似,集群镜像是用一定的技术手段把整个集群的所有文件以一定格式打成的一个资源包。
对比单机和集群会发现一些的有趣现象:
单机有计算、存储、网络等驱动;集群有CNI/CSI/CRI实现像是集群的驱动。单机有ubuntucentos操作系统;集群中可以把Kubernetes看成云操作系统。单机上可以运行docker容器或虚拟机;相当于一个运行的实例,集群上也有运行着K8s的实例。单机上有虚拟机镜像,docker镜像;随着云计算技术的发展,集群上也会抽象出类似的镜像技术。
以基于Kubernetes的集群镜像为例,里面包含了除操作系统以外的所有文件:
docker依赖的二进制与systemd配置、dockerd配置,以及一个私有的容器镜像仓库。Kubernetes核心组件二进制、容器镜像、kubeletsystem配置等。应用需要用到的yaml配置或helmchart,以及应用的容器镜像。其它脚本、配置与二进制工具等应用运行需要的所有依赖。
同样,集群镜像运行时肯定不是起一个容器或者装在一台机器上,而是这个镜像可以直接安装到多台服务器上或者直接对接到公有云的基础设施上。
sealer介绍
sealer是阿里巴巴开源的集群镜像的一个实现方式,项目