kubeadm安装的Kubernetes etcd备份恢复

作者: ygqygq2 分类: 云计算/虚拟化,数据库,系统/运维 发布时间: 2018-09-18 10:49

kubeadm安装的Kubernetes etcd备份恢复

1. 事件由来

2018年9月16日台风过后,我的一套kuernetes测试系统,etcd启动失败,经过半天的抢救,仍然无果(3台master都是如下错误)。无奈再花半天时间把环境重新弄了起来。即使是etcd集群,备份也是必须的,因为数据没了,就都没了。好在问题出现得早,要是正式生产出现这种情况,估计要卷铺盖走人了。因此,研究下kubernetes备份。

2. 环境说明

kubeadm安装的kubernetes1.11

3. etcd集群查看

4. etcd数据备份

  • 备份 /etc/kubernetes/ 目录下的所有文件(证书,manifest文件)
  • /var/lib/kubelet/ 目录下所有文件(plugins容器连接认证)
  • etcd V3版api数据

将脚本添加到计划任务,每日备份。

5. etcd数据恢复

注意
数据恢复操作,会停止全部应用状态和访问!!!

首先需要分别停掉三台Master机器的kube-apiserver,确保kube-apiserver已经停止了。

etcd集群用同一份snapshot恢复。

在lab1上执行:

在lab2上执行:

在lab3上执行:

全部恢复完成后,三台Master机器恢复manifests。

最后确认:

进相应的安装程序确认,数据全部正常。

6. 小结

不管是二进制还是kubeadm安装的Kubernetes,其备份主要是通过etcd的备份完成的。而恢复时,主要考虑的是整个顺序:停止kube-apiserver,停止etcd,恢复数据,启动etcd,启动kube-apiserver。

参考资料:
[1] https://yq.aliyun.com/articles/561894

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.