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 的对象存储作为存储位置。

posted @ 2022-03-13 16:12  Varden  阅读(331)  评论(0)    收藏  举报