Rancher 备份配置
通过 Backup Create 页面,您可以配置计划、启用加密和指定备份的存储位置。
定时调度
选择第一个选项可执行一次性备份,或选择第二个选项可安排定期备份。选择定期备份可让您配置以下两个字段:
- 定时调度: 该字段接受
- 标准 cron 表达式, 如 "0 * * * *"
- 描述符,如 "@midnight" 或 "@every 1h30m"
- 备份保留数量: 指定必须保留多少个备份文件。如果文件超过给定的 retentionCount,最旧的文件将被删除。默认值为 10。
加密
rancher-backup 通过调用 kube-apiserver 来收集资源。apiserver 返回的对象会被解密,所以即使启用了加密静止状态,备份收集的加密对象也会是明文。
为避免以明文形式存储它们,您可以使用静态加密的相同 encryptionConfig 文件,对备份中的某些资源进行加密。
重要: 你必须保存 encryptionConfig 文件,因为它不会被 rancher-backup operator 保存。执行还原时需要使用相同的加密文件。
Operator 将这个 encryptionConfig 用作 Kubernetes Secret,Secret 必须在 operator 的命名空间中。Rancher 在 cattle-resources-system 命名空间中安装了 rancher-backup operator,所以在该命名空间中创建这个 encryptionConfig secret。
对于 EncryptionConfiguration,你可以使用Kubernetes 文档中提供的示例文件( https://kubernetes.io/docs/tasks/administer-cluster/encrypt-data/#understanding-the-encryption-at-rest-configuration )。
要创建 Secret,加密配置文件必须命名为encryption-provider-config.yaml,并且必须使用--from-file标志来创建这个 secret。
将 EncryptionConfiguration 保存在名为 encryption-provider-config.yaml 的文件中,并运行此命令:
kubectl create secret generic encryptionconfig \
--from-file=./encryption-provider-config.yaml \
-n cattle-resources-system
这将确保 secret 中包含一个名为encryption-provider-config.yaml的密钥,operator 将使用这个密钥来获取加密配置。
加密配置秘钥 下拉菜单将过滤出并仅列出那些拥有此确切密钥的 secrets。
在上面的示例命令中,encryptionconfig 这个名字可以改成任何东西。
存储位置
如果在备份中指定了存储位置,operator 将从特定的 S3 桶中检索备份位置。如果没有指定,operator 将尝试在默认的 operator 级别的 S3 存储和 operator 级别的 PVC 存储中找到这个文件。默认的存储位置是在部署rancher-backup operator 时配置的。
选择第一个选项可以将备份存储在安装 rancher-backup chart 时配置的存储位置。第二个选项可以让您配置不同的兼容 s3 的对象存储作为存储位置。