Velero 系列文章(二):使用 Helm 安装 Velero

velero,系列,文章,使用,helm,安装 · 浏览次数 : 293

小编点评

本文介绍如何通过 Helm 3 来安装 Velero,并计划将 YAML 备份到腾讯云的 COS(兼容 S3,所以可以通过 AWS S3 插件来实现)。 **安装 Velero 的步骤:** 1. 下载 Velero 的 Helm Charts 2. 安装 Velero 3. 配置 Velero 4. 创建 Velero 的 namespace 5. 配置 AWS S3 插件 **创建 Velero 的 namespace:** ``` helm create namespace velero ``` **配置 Velero:** 1. 创建 values.yaml 文件,其中包含 Velero 的配置 2. 运行以下命令来启动 Velero: ``` helm install vmware-tanzu/velero --namespace velero -f values.yaml --generate-name --create-namespace# ``` **配置 AWS S3 插件:** 1. 获取腾讯云的 COS 存储空间的 URL 2. 在 values.yaml 中设置 `credentials.secretContentssnapshotsEnabled` 为 `false` 3. 设置其他必要的参数,如 `podAnnotationsserviceMonitor` 和 `initContainers` **注意:** * 本文仅展示了最基本的安装步骤,实际操作中可能需要根据您的环境进行调整。 * 请确保您已安装了 Helm 3。 * 请确保您已创建了腾讯云账户并获取了其 COS 存储空间的 URL。

正文

概述

本文是通过 Helm 3 来安装 Velero, 只做最基本的安装。并计划将 YAML (只备份 YAML, 不备份 Volume) 备份到腾讯云的 COS(兼容 S3, 所以可以通过 AWS S3 插件来实现)
需要安装:

  • velero
  • AWS S3 插件

不安装:

  • CSI
  • VolumeSnapshot
  • Restic

安装 CLI

  1. 为您的客户端平台下载 最新版本 的压缩包。

  2. 提取压缩包:

    tar -xvf <RELEASE-TARBALL-NAME>.tar.gz
    
  3. 将提取的二进制文件velero移动到您的某个$PATH位置(对于大多数用户/usr/local/bin)。

卷插件

📝 Notes:

腾讯云的 COS 可以直接使用 Velero 的 AWS Object Store plugin

通过 Helm 安装和配置服务器组件

helm repo add vmware-tanzu https://vmware-tanzu.github.io/helm-charts

通过更改值添加/更新必要的值。然后运行:

helm install vmware-tanzu/velero --namespace velero -f values.yaml --generate-name --create-namespace
# 或
helm upgrade --install velero-xxxxxxx vmware-tanzu/velero --namespace velero -f values.yaml

📝Notes:

完整的 values.yaml 见这里:
helm-charts/values.yaml at main · vmware-tanzu/helm-charts (github.com)

本次场景中,需要修改的值有:

  1. initContainers 使用 velero-plugin-for-aws
  2. metrics : (用于监控)
    1. podAnnotations
    2. serviceMonitor 对于已安装 Prometheus Operator 的,需要enabled: true
  3. configuration
    1. provider: aws
    2. bucket
    3. prefix
    4. default
    5. config.s3Url: cos.ap-shanghai.myqcloud.com (根据腾讯云官网进行修改:对象存储 使用 AWS S3 SDK 访问 COS-最佳实践-文档中心-腾讯云-腾讯云 (tencent.com))
  4. credentials.secretContents
  5. snapshotsEnabled: false
  6. deployRestic: false

🐾Warning:

如果是 arm64 架构(如树莓派 4B), 那么kubectl 那个镜像也不能用 bitnami 的,因为 bitnami 没有 arm64 镜像。
另外 upgradeCRD 也会导致在 arm64 上安装失败,所以先禁用。

可以改为如下:

kubectl:
  image:
    repository: docker.io/rancher/kubectl
    tag: v1.21.9

upgradeCRDs: false

系列文章

📚️参考文档

三人行, 必有我师; 知识共享, 天下为公. 本文由东风微鸣技术博客 EWhisper.cn 编写.

与Velero 系列文章(二):使用 Helm 安装 Velero相似的内容:

Velero 系列文章(二):使用 Helm 安装 Velero

概述 本文是通过 Helm 3 来安装 Velero, 只做最基本的安装。并计划将 YAML (只备份 YAML, 不备份 Volume) 备份到腾讯云的 COS(兼容 S3, 所以可以通过 AWS S3 插件来实现) 需要安装: velero AWS S3 插件 不安装: CSI VolumeSn

Velero系列文章(四):使用Velero进行生产迁移实战

概述 目的 通过 velero 工具, 实现以下整体目标: 特定 namespace 在B A两个集群间做迁移; 具体目标为: 在B A集群上创建 velero (包括 restic ) 备份 B集群 特定 namespace : caseycui2020: 备份resources - 如deplo

Velero 系列文章(一):基础

概述 Velero 是一个开源工具,可以安全地备份和还原,执行灾难恢复以及迁移 Kubernetes 集群资源和持久卷。 灾难恢复 Velero 可以在基础架构丢失,数据损坏和/或服务中断的情况下,减少恢复时间。 数据迁移 Velero 通过轻松地将 Kubernetes 资源从一个集群迁移到另一个

Velero系列文章(五):基于 Velero 的 Kubernetes 集群备份容灾生产最佳实践

| 考量维度 | 基于CSI 快照 | 基于Restic 文件复制 | | | | | | 应用性能影响 | 低,CSI 接口调用存储系统快照 | 取决于数据量,占用额外资源 | | 数据可用性 | 依赖于存储系统 | 对象存储和生产环境隔离,独立可用性,支持跨站点可用性 | | 数据一致性 | 支