基于velero和minio实现k8s数据的备份和恢复 您所在的位置:网站首页 nexus备份到minio 基于velero和minio实现k8s数据的备份和恢复

基于velero和minio实现k8s数据的备份和恢复

2024-07-11 19:25| 来源: 网络整理| 查看: 265

文章目录 Velero简介velero的特性velero的组件velero工作流程支持的对象存储 minio部署部署Velero下载velero配置velero认证环境配置velero访问minio配置velero访问k8s velero使用备份数据恢复数据

Velero简介

velero是一个有Vmware开源的工具,采用Go语言编写,用于安全的备份、恢复和迁移Kubernetes集群和持久卷。 velero官网:https://velero.io/ velero-github:https://github.com/vmware-tanzu/velero

velero的特性 备份可以按集群资源的子集,按命名空间、资源类型标签选择器进行过滤,从而为备份和恢复的内容提供高度的灵活性支持复制当前 Kubernetes 集群的资源到其它 Kubernetes 集群通过聚合 API 服务器公开的资源可以轻松备份和恢复,即使它们存储在单独的 etcd 数据库中 velero的组件

velero由一个客户端和一个服务端组成 客户端:运行在本地的命令行工具,只要配置好kubectl和kubeconfig认证文件就可使用,非常简单 服务端:运行在Kubernetes集群之上,负责执行具体的备份和恢复操作

velero工作流程

备份数据:

本地velero客户端发送备份命令,就会调用API Server创建Backup资源对象服务端收到通知有新的Backup对象创建并执行验证服务端开始执行备份过程,向API Server查询需要备份的数据服务端调用对象存储服务,将备份数据保存到对象对象存储上

恢复数据:

本地velero客户端发送恢复指令,就会调用API Server创建Restore资源对象服务端收到通知有新的Restore对象创建并执行验证服务端调用对象存储,将指定的备份文件下载下来服务端开始执行恢复过程,根据备份数据调用API Server重新创建相关资源对象 支持的对象存储

AWS S3 以及兼容 S3 的存储,比如: Minio ceph存储 Google Cloud 存储 Aliyun OSS 存储 …

minio部署

minio在这里是用来保存velero的备份数据,如果你有其它对象存储服务,也可以用它们来替换minio。

minio是一款高性能、分布式的对象存储系统,采用Go语言实现,兼容Amazon S3接口,客户端与存储服务器之间采用http/https通信协议。 minio官网:https://min.io/ minio中文网站:http://www.minio.org.cn/

minio支持单机部署和分布式部署,这里选择容器方式单机部署。

mkdir /data/minio #创建minio的数据目录 docker pull quay.io/minio/minio docker run \ -d --restart=always \ -p 9000:9000 \ -p 9090:9090 \ --name minio \ -v /data/minio/data:/data \ -e "MINIO_ROOT_USER=admin" \ #minio web界面的用户名 -e "MINIO_ROOT_PASSWORD=Passw0rd" \ #minio web界面的密码 quay.io/minio/minio server /data --console-address "0.0.0.0:9090"

访问minio界面 在这里插入图片描述

创建bucket 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

部署Velero 下载velero

在这里插入图片描述

wget https://github.com/vmware-tanzu/velero/releases/download/v1.9.0/velero-v1.9.0-linux-amd64.tar.gz tar xf velero-v1.9.0-linux-amd64.tar.gz cd velero-v1.9.0-linux-amd64/ cp velero /usr/bin/ echo 'source


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有