#打卡不停更# Kubernetes 集群备份工具 velero 使用指南 原创 精华
简介
Velero 是一款可以安全的备份、恢复和迁移 Kubernetes 集群资源和持久卷等资源的备份恢复软件。
Velero 实现的 kubernetes 资源备份能力,可以轻松实现 Kubernetes 集群的数据备份和恢复、复制 kubernetes 集群资源到其他 kubernetes 集群或者快速复制生产环境到测试环境等功能,这种备份就类似于把资源的 yaml 文件进行整体备份,从而保障资源的完整性。
Velero 对存储的支持较好,可以支持很多种存储资源,比如 AWS S3、Azure Blob、Google Cloud Storage、Alibaba Cloud OSS、Swift、MinIO 等等
Storage-support
流程图
注意:本文档采用 MinIO 作为后端存储
Docker 部署 MinIO
因为我们要保证存储和集群隔离,这样能保证在集群出问题的时候,不影响备份,所以就将 MinIO 部署在其他服务器上,与 Kubernetes 环境隔离。避免因意外情况宕机的时候影响更多。
注意,mc 使用的是 api 端口,并不是 console 界面端口,所以 mc 在授权的时候需要使用 API 端口
然后浏览器通过配置的账号和 password 即可登录:
安装 velero 在 k8s master 上
下载 velero
https://github.com/vmware-tanzu/velero/releases/download/v1.9.0/velero-v1.9.0-linux-amd64.tar.gz
1.创建密钥并安装velero
2.K8s集群安装velero
安装时产生的日志
验证是否安装完毕
3.velero 命令
4.测试
velero 在安装包中有一个测试demo,我们可以利用测试demo来进行测试验证。
5.备份
登录 minio 查看,备份记录
6.恢复测试
删除 nginx-app
恢复 nginx
恢复会新建一个 restores 目录
注意:velero restore 恢复不会覆盖已有的资源,只恢复当前集群中不存在的资源。已有的资源不会回滚到之前的版本,如需要回滚,需在restore之前提前删除现有的资源。
备份所有命名空间
7.定时备份
比较推荐做定时全量备份,这个能保证我们是一直全量最新备份的状态
查看备份
看起来是很实用的备份工具