有两种支持的方法来安装Velero服务器组件: velero install CLI 命令 Helm Chart Velero使用存储提供程序插件与各种存储系统集成,以支持备份和快照操作。 Velero有一个插件系统,它允许任何人在不修改Velero代码库的情况下增加对其他备份和卷存储平台的兼容性。 /velero: created ClusterRoleBinding/velero: attempting to create resource ClusterRoleBinding/velero: 要从Kubernetes集群中完全卸载Velero: oc delete namespace/velero clusterrolebinding/velero oc delete crds -l component =velero 使用 - 集群迁移 使用 Backups 和 Restores 只要您将每个Velero实例指向相同的云对象存储位置,Velero就能帮助您将资源从一个群集移植到另一个群集。
Velero备份、恢复、迁移Kubernetes集群 Velero简介 Velero 地址:https://github.com/vmware-tanzu/velero Velero属于VMWare开源的 Velero组件 Velero 组件一共分两部分,分别是服务端和客户端。 --provider aws \ --plugins velero/velero-plugin-for-aws:v1.1.0 \ --bucket velero \ --secret-file /velero: created ServiceAccount/velero: attempting to create resource ServiceAccount/velero: created velero schedule get #查看定时备份 velero restore get #查看可恢复备份
在AWS上使用S3来安装Velero Server组件 为了配合使用Velero和Portworx,用户必须安装服务组件以及对象存储。 一旦配置完成了Amazon S3,你可以通过下面的命令来安装Velero,首先安装Velero,安装完成后我们会增加Portworx的插件。 $ velero install \ --provider aws \ --plugins velero/velero-plugin-for-aws:v1.0.1 \ --bucket $BUCKET $ velero plugin add portworx/velero-plugin:1.0.0 一旦以上的步骤都顺利完成,就可以继续进行下面的配置了。 我们已经使用Portworx和Velero成功创建了应用和数据的备份。
背景 velero 是备份和还原kubernetes集群资源的和持久卷的工具, 主要提供了以下功能: 备份还原集群 不同集群间进行迁移 集群复制 tke官方文档中以及有了velero的最佳实践(https Velero 工作原理图如下图所示(来源于 Velero 官网),当用户执行备份命令时,备份过程说明如下: 调用自定义资源 API 创建备份对象(1) BackupController 控制器检测到生成的备份对象时 velero Linux下安装: 1. 2. tar -xvf velero-v1.5.2-linux-amd64.tar.gz 3. mv velero-v1.5.2-linux-amd64/velero /usr/bin/ 部署velero Run velero restore describe cluster-b or velero restore logs cluster-b for more details.
Velero 1.9 升级到 Velero 1.10 版支持 FSB 备份前提条件安装 Velero v1.9.x在升级之前,请检查 Velero兼容性矩阵,以确保你的 Kubernetes 版本被新版本的 Velero 所支持。 按照此处的说明安装 Velero v1.10 命令行界面通过运行以下命令验证是否已正确安装它:You should see the following output:$ velero version - -ojson \| sed "s#\"image\"\: \"velero\/velero\:v[0-9]*.[0-9]*.[0-9]\"#\"image\"\: \"velero\/velero\: restic -ojson) \| sed "s#\"image\"\: \"velero\/velero\:v[0-9]*.[0-9]*.[0-9]\"#\"image\"\: \"velero\/
Velero(https://velero.io)(可以提供备份和还原 Kubernetes 集群资源和持久卷的能力,你可以在公有云或本地搭建的私有云环境安装 Velero,可以为你提供以下能力: 备份集群数据 服务端: ➜ ~ velero install \ --provider aws \ --bucket velero \ --image velero/velero :v1.6.3 \ --plugins velero/velero-plugin-for-aws:v1.2.1 \ --namespace velero \ --secret-file ⛵ Use 'kubectl logs deployment/velero -n velero' to view the status. ➜ ~ kubectl get pods -n velero 只要我们将每个 velero 实例指向相同的对象存储,velero 就能将资源从一个群集迁移到另一个群集。
使用velero可以对集群进行备份和恢复,降低集群DR造成的影响。velero的基本原理就是将集群的数据备份到对象存储中,在恢复的时候将数据从对象存储中拉取下来。 /acs/velero:latest。 install/01-velero.yaml 配置文件install/01-velero.yaml中使用的镜像是从gcr.io/heptio-images/velero:latest同步的,可以在官方 /acs/velero:latest 为了方便执行,可以下载velero命令行工具,拷贝到系统$PATH路径即可使用 velero的使用 ---- velero的使用推荐观看该视频,讲解的比较详细。 component=velero velero暴露Prometheus metrics 安装后的velero默认不会暴露Prometheus metrics。
Velero主要提供以下能力 • 备份Kubernetes 集群资源,并在资源丢失情况下进行还原 • 将集群资源迁移到其他集群 • 将生产集群复制到开发和测试集群 Velero 主要组件 • Velero 其它都是外部的插件实现,velero.io/plugins 就代表内部的插件实现,由Velero 或者第三方厂商来实现。 http://minio.velero.svc.cluster.local:9000 admin minio123 && mc --config-dir=/config mb -p velero/velero Velero客户端 在 Github (https://github.com/vmware-tanzu/velero/releases)下载指定的 velero 二进制客户端,解压放置$PATH路径 ➜ ➜~ velero install \ --provider aws \ --bucket velero \ --image nexus.cmss.com:8086/velero/velero:v1.8.1
用 Minio 启动 Velero 实现 Kubernetes资源备份Velero 简介https://github.com/vmware-tanzu/velero . Velero 的开发公司 Heptio,之前已被 VMware 收购,其创始人 2014 就职于 Google,当时被认为是 Kubernetes.Velero 是一种云原生的 Kubernetes 优化方法 velero 的基本原理就是将集群的数据备份到对象存储中,在恢复的时候将数据从对象存储中拉取下来.备份过程1 . 本地 Velero 客户端发送备份指令 2 . Velero 服务器$ velero install \ --provider aws \ --plugins velero/velero-plugin-for-aws:v1.2.1 \ --bucket velero-backups \ --secret-file /root/velero/credentials-velero \ --use-volume-snapshots
在排查这个问题发生的原因的同时,集群资源的灾备和恢复功能就提上日程了,这时 Velero 就出现了。 Velero Velero 是 VMWare 开源的 k8s 集群备份、迁移工具。 Velero 地址:https://github.com/vmware-tanzu/velero ACK 插件地址:https://github.com/AliyunContainerService/velero-plugin 下载 Velero 客户端 Velero 由客户端和服务端组成,服务器部署在目标 k8s 集群上,而客户端则是运行在本地的命令行工具。 修改 install/01-velero.yaml,将 OSS 配置填入: ? k8s 部署 Velero 服务 ? 测试 Velero 状态 ? 版本问题 截止发稿时,Velero 已经发布了 v1.2.0 版本,目前 ACK 的 Velero 的插件还未升级。
不想使用传统方式了想体验一下velero! -02 ~]# cd velero-v1.8.1-linux-amd64/ [root@sh-master-02 velero-v1.8.1-linux-amd64]# cp velero /usr/local /bin && chmod +x /usr/local/bin/velero [root@sh-master-02 velero-v1.8.1-linux-amd64]# velero version =<secret access key> 按照如下命令安装 velero 服务端: velero install --provider aws --plugins velero/velero-plugin-for-aws 备份集群1 kube-ops集群内应用 1. velero backup create命令直接创建 [root@sh-master-02 velero]# velero backup create kube-ops
velero-plugin Velero 架构 Velero 分为两部分: 服务端:部署在目标 k8s 集群中 客户端:运行在本地环境中,需要已配置好 kubectl 及集群 kubeconfig 的机器上 /AliyunContainerService/velero-plugin.git # 进入 velero-plugin 目录 $ cd velero-plugin 设置阿里云AK信息 把上面创建的 4、部署 velero # 部署 velero $ kubectl apply -f install/01-velero.yaml # 查看 velero $ kubectl get pods - get restores 查看 velero 插件 $ velero get plugins 删除 velero 备份 $ velero backup delete nginx-backup 创建集群所有 /velero $ kubectl delete crds -l component=velero 总结 Velero 作为一个免费的开源组件,其能力基本可以满足容器服务的灾备和迁移的场景,推荐用户将velero
更多关于 Velero 介绍,请参阅 Velero[1] 官网,本文将介绍使用 Velero 实现 TKE 集群间的无缝迁移复制集群资源的操作步骤。 迁移原理 在需要被迁移的集群和目标集群上都安装 Velero 实例,并且两个集群的 Velero 实例指向相同的腾讯云 COS 对象存储位置,使用 Velero 在需要被迁移的集群执行备份操作生成备份数据存储到腾讯云 集群 A 和 集群 B 都需要安装 Velero 实例(1.5版本以上),并且共用同一个腾讯云 COS 存储桶作为 Velero 后端存储,安装步骤请参阅 配置存储和安装 Velero [4]。 配置存储和安装 Velero [6]。 执行下面命令来备份集群中不包含 velero 命名空间(velero 安装的默认命名空间)资源的其他所有资源,如果想自定义需要备份的集群资源范围,可使用 velero create backup -h
使用对象存储 COS 作为 Velero 存储实现集群资源备份和还原[2] 和 在 TKE 中使用 Velero 迁移复制集群资源,本文将介绍如何使用 Velero 将自建或其他云平台 Kubernetes 集群 A 和 集群 B 都需要安装 Velero 实例(1.5 版本以上),并且共用同一个腾讯云 COS 存储桶作为 Velero 后端存储,安装步骤请参阅 配置存储和安装 Velero [4]。 Velero 备份/还原实用知识 velero 提供了许多非常实用的备份和还原策略,以下作简要梳理: 当不使用任何筛选选项时,Velero 会将所有对象包括在备份或还原操作中,在备份和还原时可以指定参数按需过滤资源 velero get podvolumerestores -l velero.io/restore-name=<YOUR_RESTORE_NAME> -o yaml 除了使用 Velero 命令执行备份操作 参考资料 [1] Velero: 【https://velero.io/】 [2] 使用对象存储 COS 作为 Velero 存储实现集群资源备份和还原: 【https://cloud.tencent.com
Velero 地址:https://github.com/vmware-tanzu/velero ACK 插件地址:https://github.com/AliyunContainerService/velero-plugin 下载Velero客户端 Velero 由客户端和服务端组成,服务器部署在目标 k8s 集群上,而客户端则是运行在本地的命令行工具。 subjects: - kind: ServiceAccount name: velero namespace: velero --- apiVersion: velero.io/v1 kind deploy: velero spec: serviceAccountName: velero containers: - name: velero # sync from velero/velero:v1.2.0 image: registry.cn-hangzhou.aliyuncs.com/acs/velero
Velero 完成备份和迁移。 /velero-plugin 下载 Velero 客户端 Velero 由客户端和服务端组成,服务器部署在目标 k8s 集群上,而客户端则是运行在本地的命令行工具。 执行 velero -h 测试 部署velero-plugin插件 拉取代码 git clone https://github.com/AliyunContainerService/velero-plugin subjects: - kind: ServiceAccount name: velero namespace: velero --- apiVersion: velero.io/v1 kind # sync from velero/velero:v1.2.0 image: registry.cn-hangzhou.aliyuncs.com/acs/velero
download velero curl -sSL -o velero-v1.3.1-darwin-amd64.tar.gz https://github.com/vmware-tanzu/velero /releases/download/v1.3.1/velero-v1.3.1-darwin-amd64.tar.gz 安装velero install velero . /velero install --provider aws --plugins velero/velero-plugin-for-aws:v1.0.0 --bucket eks-dev-velero /velero get backup B 上操作: Operation on B: 下载velero download velero 安装velero install velero 配置 aws s3 velero 卸载 velero uninstall 验证 check kubectl get pods --all-namespaces kubectl get service -n wangzi
Velero 组件 Velero 组件一共分两部分,分别是服务端和客户端。 Velero 架构 Velero 备份过程 ? 本地 Velero 客户端发送备份指令。 Kubernetes 集群内就会创建一个 Backup 对象。 更多 Systemd 服务管理可参考:https://blog.mallux.me/2017/02/13/systemd/ 安装 Velero 安装 Velero 客户端工具 下载最新版 Velero, .tar.gz $ tar xzvf velero-v1.1.0-linux-amd64.tar.gz $ cp velero-v1.1.0-linux-amd64\velero \usr\local\ $ velero completion bash 启动 Velero 服务端 2.1 准备 credentials-velero 文件 credentials-velero 文件内容为阿里云 OSS
list列出所有备份(Velero + S3),并自动对齐 date_tagdelete <tag>删除指定 date_tag 的 Velero + S3 备份部署前提部署前提:Velero 配置在使用 以下是部署 Velero 的参考脚本deploy_velero_with_chart_values_yaml.sh#! /bin/bashset -e# ======= 配置项 =======VELERO_NAMESPACE="velero"VELERO_RELEASE_NAME="velero"VELERO_BUCKET ${VELERO_REGION}initContainers: - name: velero-plugin-for-${VELERO_PROVIDER} image: images.onwalk.net settings: VELERO_NAMESPACE: "velero" # Velero 命名空间 VELERO_BUCKET: "k8s-resources-backup
1.Velero 基础概述 What: 什么是 Velero? 使用Minio服务进行管理存储备份在ETCD的数据、使用velero客户端进行备份和还原操作。 2.Velero 工作原理 描述: 一般得使用Velero主要是从以下三个方面入手。 官网: https://velero.io/ velero 手册: https://velero.io/docs/v1.6/ velero 供应商: https://velero.io/docs/v1.6 /velero /usr/bin/velero 2.验证 Velero Client velero version Client: Version: v1.6.2 Git install \ --image velero/velero:v1.6.2 \ --provider aws \ --bucket velero \ --namespace velero