概述
本文是通过 Helm 3 来安装 Velero, 只做最基本的安装。并计划将 YAML (只备份 YAML, 不备份 Volume) 备份到腾讯云的 COS(兼容 S3, 所以可以通过 AWS S3 插件来实现)
需要安装:
- velero
- AWS S3 插件
不安装:
- CSI
- VolumeSnapshot
- Restic
安装 CLI
为您的客户端平台下载 最新版本 的压缩包。
-
提取压缩包:
tar -xvf <RELEASE-TARBALL-NAME>.tar.gz
将提取的二进制文件
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)
本次场景中,需要修改的值有:
-
initContainers
使用velero-plugin-for-aws
-
metrics
: (用于监控)podAnnotations
-
serviceMonitor
对于已安装 Prometheus Operator 的,需要enabled: true
-
configuration
provider: aws
bucket
prefix
default
-
config.s3Url: cos.ap-shanghai.myqcloud.com
(根据腾讯云官网进行修改:对象存储 使用 AWS S3 SDK 访问 COS-最佳实践-文档中心-腾讯云-腾讯云 (tencent.com))
credentials.secretContents
snapshotsEnabled: false
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 编写.