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

本文最后更新于:2023年5月6日 上午

概述

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

  • velero
  • AWS S3 插件

不安装:

  • CSI
  • VolumeSnapshot
  • Restic

安装 CLI

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

  2. 提取压缩包:

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

卷插件

📝 Notes:

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

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

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

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

1
2
3
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 上安装失败,所以先禁用。

可以改为如下:

1
2
3
4
5
6
kubectl:
image:
repository: docker.io/rancher/kubectl
tag: v1.21.9

upgradeCRDs: false

系列文章

📚️参考文档


Velero 系列文章(二):使用 Helm 安装 Velero
https://ewhisper.cn/posts/59035/
作者
东风微鸣
发布于
2022年5月25日
许可协议