前言
上回对 Clusterfile 进行了详细对讲解,想必大家对 sealer 有更进一步的了解了,那么这篇文章我们聊聊集群备份扩缩容相关的知识。
1.扩缩容
1.1 ALI_CLOUD 模式扩缩容
ALI_CLOUD 模式就是,provider: ALI_CLOUD
1.1.1 Clusterfile 配置扩缩容
比如下面这个配置文件是你当前运行的集群 .sealer/my-cluster/ 路径下的 clusterfile 文件(当然你也可以重新写一个文件,然后覆盖运行中的文件):
我们可以看到 master 节点上的 count 有3个,如果此时你想扩展节点,把 count 的节点数改成4;如果你想缩小节点,把 count 的节点数改成2,然后使用 apply 命令生效 clusterfile
1 | yaml复制代码apiVersion: sealer.aliyun.com/v1alpha1 |
1.1.2 join 命令配置扩容,delete 缩容
当然在这个模式下,你也可以用 join 命令扩缩容
1 | css复制代码# 扩容 |
1.2 BAREMETAL 模式扩缩容
BAREMETAL 模式就是,provider: BAREMETAL
1.2.1 Clusterfile配置扩缩容
比如下面这个配置文件是你当前运行的集群 .sealer/my-cluster/ 路径下的 clusterfile 文件(当然你也可以重新写一个文件,然后覆盖运行中的文件):
我们可以看到 master 节点上的 ipList 有三个,如果要缩小则删掉其中一个 ip,如果要增加,则加上一个ip,然后 apply 命令让 clusterfile 生效一下。
1 | yaml复制代码apiVersion: sealer.aliyun.com/v1alpha1 |
1.2.2 join命令扩容,delete命令缩容
当然,这个模式下也可以使用 join 命令进行扩容,delete 命令进行缩容
1 | css复制代码# 扩容 |
二.备份恢复
备份利用的是插件机制,kind:Plugin,如下例子 如果你的 yaml 中写了 oss 地址,那么会将你的备份文件上传到oss上去, 如果没有呢,默认是放到 $(rootfs)/plugin/ETCD_BACKUP file 路径下。
1 | yaml复制代码--- |
三.升级
升级集群镜像使用如下命令
1 | 复制代码sealer upgrade |
upgrade命令的工作流程可以概括如下:
解析命令的参数 -> 执行 Apply() 函数 -> 执行 diff() 函数得到 todoList -> 执行 todoList 中的函数 -> 升级成功 -> 更新当前集群的Image变量值。
源码分析参考官方文档sealer upgrade 命令的原理与实现
结语
好了,各位铁汁们,关于Clusterfile的详细内容,就介绍到这,更多信息请到sealer官方git地址上去了解。创作不易,请点个赞,点个关注,后续将分享更多有用信息。
推荐阅读
微信公众号
本文转载自: 掘金