Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >启用 Velero API group version 功能来帮助缓解兼容性问题

启用 Velero API group version 功能来帮助缓解兼容性问题

原创
作者头像
philentso
发布于 2022-12-14 06:49:08
发布于 2022-12-14 06:49:08
54200
代码可运行
举报
文章被收录于专栏:philentsophilentso
运行总次数:0
代码可运行

启用 Velero API group version 功能来帮助缓解兼容性问题

默认情况下,Kubernetes 允许在集群之间更改 API group version ,只要升级是单个版本(例如 v1 -> v2beta1), 跳转到多个版本(例如 v1 -> v3)不是现成的, 这就是 Velero 启用 API group version 功能可以在升级期间提供帮助的地方.

目前启用 API group version 功能处于测试阶段,启用可以通过安装 Velero 带有功能标志,--features=EnableAPIGroupVersions.

有关 Kubernetes API 版本兼容性的最新信息,在开始升级、迁移或还原之前,应始终查看源集群版本和目标集群版本的 Kubernetes release notes, 如果 Kubernetes API 版本之间存在差异,使用启用 API group version 功能来帮助缓解兼容性问题.

本示例环境

注,在使用此功能时注意检查 Kubernetes 与 velero 兼用性

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// Kubernetes version
$ kubectl get no
NAME     STATUS   ROLES           AGE    VERSION
ubuntu   Ready    control-plane   138d   v1.24.3
// Velero version
$ velero version
Client:
        Version: v1.10.0
        Git commit: 367f563072659f0bcd809bc33507fd75cd722344
Server:
        Version: v1.10.0

定制版本优先级 && 启用 APIGroupVersions 的高级步骤

Install velero (前一节的基础上可安装)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ 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=false \
    --features=EnableAPIGroupVersions \
    --backup-location-config region=minio,s3ForcePathStyle="true",s3Url=http://192.168.86.129:32001 

CustomResourceDefinition/backuprepositories.velero.io: attempting to create resource
CustomResourceDefinition/backuprepositories.velero.io: attempting to create resource client
CustomResourceDefinition/backuprepositories.velero.io: already exists, proceeding
CustomResourceDefinition/backuprepositories.velero.io: created
CustomResourceDefinition/backups.velero.io: attempting to create resource
CustomResourceDefinition/backups.velero.io: attempting to create resource client
CustomResourceDefinition/backups.velero.io: already exists, proceeding
CustomResourceDefinition/backups.velero.io: created
CustomResourceDefinition/backupstoragelocations.velero.io: attempting to create resource
CustomResourceDefinition/backupstoragelocations.velero.io: attempting to create resource client
CustomResourceDefinition/backupstoragelocations.velero.io: already exists, proceeding
CustomResourceDefinition/backupstoragelocations.velero.io: created
CustomResourceDefinition/deletebackuprequests.velero.io: attempting to create resource
CustomResourceDefinition/deletebackuprequests.velero.io: attempting to create resource client
CustomResourceDefinition/deletebackuprequests.velero.io: already exists, proceeding
CustomResourceDefinition/deletebackuprequests.velero.io: created
CustomResourceDefinition/downloadrequests.velero.io: attempting to create resource
...
DaemonSet/node-agent: already exists, proceeding
DaemonSet/node-agent: created
Velero is installed! ⛵ Use 'kubectl logs deployment/velero -n velero' to view the status.

以上命名完成 Velero 安装并启用加入 API 组版本功能

创建一个名为 restoreResourcesVersionPriority 的文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ vim ./restoreResourcesVersionPriority
rockbands.music.example.io=v2beta1,v2beta2
orchestras.music.example.io=v2,v3alpha1
subscriptions.operators.coreos.com=v2,v1

Apply config map with

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# kubectl create configmap enableapigroupversions --from-file=/root/velero/restoreResourcesVersionPriority -n velero
configmap/enableapigroupversions created

检查配置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ kubectl get configmap enableapigroupversions -n velero
NAME                     DATA   AGE
enableapigroupversions   1      56s

$ kubectl describe configmap enableapigroupversions -n velero
Name:         enableapigroupversions
Namespace:    velero
Labels:       <none>
Annotations:  <none>

Data
====
restoreResourcesVersionPriority:
----
rockbands.music.example.io=v2beta1,v2beta2
orchestras.music.example.io=v2,v3alpha1
subscriptions.operators.coreos.com=v2,v1


BinaryData
====

Events:  <none>

以上已完成对 Velero 组版本功能的配置!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
用 Minio 快速启动 Velero 实现 Kubernetes资源备份
. Velero 属于 VMWare 开源的 Kubernetes 集群备份、恢复、迁移工具.
philentso
2022/12/12
8320
Kubernetes的Group、Version、Resource学习小记
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 关于Group、Version、Resource 开篇先提重点:Group、Version、Resource十分重要,它们会贯穿《client-go实战》、《kubebuilder实战》、《Kubernetes官方java客户端》等系列文章的始终; Kubernetes是以资源为中心的系统,在学习client-go时,Group、Version、Resource
程序员欣宸
2022/05/09
9150
Kubernetes的Group、Version、Resource学习小记
部署 Prometheus Operator 监控 Kubernetes 集群
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/aixiaoyang168/article/details/81661459
哎_小羊
2019/05/25
1.6K0
使用Velero实现K8S集群资源备份到对象存储COS
开源工具 Velero(旧版本名称为 Heptio Ark)可以安全地备份和还原、执行灾难恢复以及迁移 Kubernetes 集群资源和持久卷。在容器服务 TKE 集群或自建 Kubenetes 集群中部署 Velero 可以实现以下功能:
Lcry
2022/11/29
1.7K0
使用Velero实现K8S集群资源备份到对象存储COS
部署 Prometheus Operator 监控 Kubernetes 集群
我们知道 Prometheus 是一套开源的系统监控、报警、时间序列数据库的组合,而 Prometheus Operator 是 CoreOS 开源的一套用于管理在 Kubernetes 集群上的 Prometheus 控制器,它是为了简化在 Kubernetes 上部署、管理和运行 Prometheus 和 Alertmanager 集群。
kubernetes中文社区
2019/06/24
2.5K0
部署 Prometheus Operator 监控 Kubernetes 集群
k8s-apiserver工作原理
kube-apiserver 是 Kubernetes 最重要的核心组件之一,主要提供以下的功能
SY小站
2020/06/19
1.8K0
k8s-apiserver工作原理
将 Velero 1.9 升级到 Velero 1.10 版支持 FSB 备份
在升级之前,请检查 Velero兼容性矩阵,以确保你的 Kubernetes 版本被新版本的 Velero 所支持。
philentso
2022/12/13
8080
kubernetes备份恢复之velero
Velero 地址:https://github.com/vmware-tanzu/velero Velero属于VMWare开源的Kubernetes集群备份、恢复、迁移工具. 可以提供Kubernetes 备份功能更,在Kubernetes集群出现问题之后,能够快速的恢复. 并且也提供了集群迁移功能,可以将Kubernetes资源迁移到其他集群. Velero 将备份的信息在对象存储中,默认情况下可以使用 AWS、Azure、GCP 的对象存储. 对于K8s集群数据的备份和恢复,以及复制当前集群数据到其他集群等都非常方便。可以在两个集群间克隆应用和命名空间,来创建一个临时性的开发环境。
iginkgo18
2021/01/29
6.3K0
使用 Velero 备份还原 Kubernetes 集群资源
作者:仇明,中国移动云能力中心软件研发工程师,专注于云原生、微服务、算力网络等领域。 简介 Velero前身是Heptio Ark ,是由GO语言编写的一款用于灾难恢复和迁移工具,可以安全地备份、恢复和迁移Kubernetes集群资源和持久卷。 Velero主要提供以下能力 • 备份Kubernetes 集群资源,并在资源丢失情况下进行还原 • 将集群资源迁移到其他集群 • 将生产集群复制到开发和测试集群 Velero 主要组件 • Velero 组件主要包括服务器端和客户端两部分 • 服务端:运行在你Ku
博文视点Broadview
2023/04/12
1.5K0
使用 Velero 备份还原 Kubernetes 集群资源
Velero 学习笔记
Velero是一个开源工具,可以安全地备份和还原,执行灾难恢复以及迁移Kubernetes集群资源和持久卷。
东风微鸣
2022/04/21
1.7K0
Velero 学习笔记
初识 Kubernetes API 的组织结构
话说自己入坑云原生也有好几年了,但是对 kubernetes 基础认识却不够深,导致写代码的时候经常需要打开 godoc 或者 kubernetes 源码查看某个接口或者方法的定义。这种快餐式的消费代码方式可以解决常见的问题,但有时候却会被一个简单的问题困扰很久。究其原因,还是没有对 kubernetes 有比较系统的学习,特别对于 kubernetes API 的设计与原理没有较为深入的认识,这也是我们平时扩展 kubernetes 功能绕不开的话题。与此同时,这也是很难讲清楚的一个话题,是因为 kubernetes 经过多个版本的迭代功能已经趋于成熟与复杂,这一点也可以从 Github 平台 kubernetes 组织下的多个仓库也可以看得出来,相信很多人和我一样,看到 kubernetes、client-go、api、apimachinery 等仓库就不知道如何下手。事实上,从 API 入手是比较简单的做法,特别是我们对于 kubernetes 核心组件的功能有了一定的了解之后。
米开朗基杨
2021/03/16
1.6K0
Velero 是怎样对 Kubernetes 资源实现备份还原的?
每个 Velero 操作——按需备份、定时备份、还原——都是一个自定义资源,用 Kubernetes 自定义资源定义(CRD)定义并存储在 etcd 中。Velero 还包括处理自定义资源以执行备份、还原和所有相关操作的控制器.
philentso
2022/12/16
1.1K0
深入玩转K8S之使用kubeadm安装Kubernetes v1.10以及常见问题解答
Kubernetes是Google开源的容器集群管理系统。它构建于docker技术之上,为容器化的应用提供资源调度、部署运行、服务发现、扩 容缩容等整一套功能,本质上可看作是基于容器技术的mini-PaaS平台。
DevinGeng
2019/04/09
1K0
kubernetes自定义资源对象高级功能
kubernetes自定义资源对象再极大程度提高了API Server的可扩展性,让企业能够根据业务需求通过CRD编写controller或者operator来实现生产中各种特殊场景。随着k8s的版本升级,CRD的功能也越来越完善,下面对其中几点进行说明。
我的小碗汤
2019/05/28
1.2K0
使用 Velero 备份还原 Kubernetes 集群
Velero(https://velero.io)(可以提供备份和还原 Kubernetes 集群资源和持久卷的能力,你可以在公有云或本地搭建的私有云环境安装 Velero,可以为你提供以下能力:
我是阳明
2021/10/08
1.2K1
使用velero进行kubernetes灾备
使用velero可以对集群进行备份和恢复,降低集群DR造成的影响。velero的基本原理就是将集群的数据备份到对象存储中,在恢复的时候将数据从对象存储中拉取下来。可以从官方文档查看可接收的对象存储,本地存储可以使用Minio。下面演示使用velero将openstack上的openshift集群备份恢复到阿里云的openshift上。
charlieroro
2020/03/24
4.1K1
你有快速备份和迁移 Kubernetes 集群应用以及持久化数据的需求吗,Velero 助你秒实现!
Heptio Velero ( 以前的名字为 ARK) 是一款用于 Kubernetes 集群资源和持久存储卷(PV)的备份、迁移以及灾难恢复等的开源工具。
iMike
2019/11/07
4.1K0
你有快速备份和迁移 Kubernetes 集群应用以及持久化数据的需求吗,Velero 助你秒实现!
Kubernetes(k8s)中dashboard的部署。
1、k8s的dashboard的安装部署,首先需要将压缩包下载下来,然后进行解压缩操作。
别先生
2020/06/24
1.1K0
Kubernetes(k8s)中dashboard的部署。
Portworx Essentials + Velero:备份Kubernetes应用
Portworx近期发布了免费的Essentials版本。(https://portworx.com/announcing-portworx-essentials/)。Essentias)。
Portworx
2020/05/08
1.3K0
Centos上快速部署kubernetes(kubeadm)
因为使用yum安装的Kubectl使用的--cgroups-drive=systemd,而docker在安装的时候默认使用的是cgroup,因此需要将kubectl的cgroup-drive修改成cgroup
公众号: 云原生生态圈
2021/11/15
4250
Centos上快速部署kubernetes(kubeadm)
推荐阅读
相关推荐
用 Minio 快速启动 Velero 实现 Kubernetes资源备份
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验