互联网技术 / 互联网资讯 · 2024年1月8日 0

将Kubernetes集群封装为镜像的工具

SealeR是一款分布式应用打包交付运行的解决方案,通过把分布式应用及其数据库中间件等依赖一起打包以解决复杂应用的交付问题。

SealeR 构建出来的产物我们称之为集群镜像, 集群镜像里内嵌了一个kubeRnetes, 解决了分布式应用的交付一致性问题。集群镜像可以push到Registry中共享给其他用户使用,也可以在官方仓库中找到非常通用的分布式软件直接使用。

将Kubernetes集群封装为镜像的工具

Docker可以把一个操作系统的Rootfs+应用build成一个容器镜像,SealeR把kubeRnetes看成操作系统,在这个更高的抽象纬度上做出来的镜像就是集群镜像。实现整个集群的Build Share Run !!!

有了集群镜像用户实践云原生生态技术将变得极其简单,如:

1.安装一个kubeRnetes集群

2.安装ProMetheus集群

将Kubernetes集群封装为镜像的工具

还没完,SealeR最出色的地方是可以非常方便的让用户自定义一个集群的镜像,通过像Dockerfile一样的文件来描述和build,也就是Kubefile:

使用下面的SealeR build命令就可以构建集群镜像:

然后一个包含dashboard的集群镜像就被制作出来了,可以运行或者分享给别人。

把制作好的集群镜像推送到镜像仓库,集群镜像仓库兼容docker镜像仓库标准,可以把集群镜像推送到docker hub、阿里ACR、或者Harbor中

场景 1. 往已经存在的服务器上去安装,Provider类型为BAREMETAL

Clusterfile内容:

执行如下所示命令:

场景 2. 自动申请阿里云服务器进行安装, Provider: ALI_CLOUD

Clusterfile:

准备好阿里云的ak sk

基础设置的一些源信息会被写入到Clusterfile中,存储在/Root/.SealeR/[cluster-name]/Clusterfile中, 所以可以这样释放集群:

制作一个自定义的集群镜像, 这里以制作一个dashboard镜像为例

创建一个带有dashboard的自定义集群, 操作同上,替换掉Clusterfile中的image字段即可:

把制作好的集群镜像推送到镜像仓库:

就可以把镜像复用给别人进行使用。

仓库地址:https://Github.coM/alibaba/SealeR