title: 备份 Rancher description: 在本节中,你将学习如何备份运行在任何 Kubernetes 集群上的 Rancher。 keywords:

  • rancher
  • rancher中文
  • rancher中文文档
  • rancher官网
  • rancher文档
  • Rancher
  • rancher 中文
  • rancher 中文文档
  • rancher cn
  • 备份和恢复
  • rancher 2.5
  • 备份 Rancher

在本节中,你将学习如何备份运行在任何 Kubernetes 集群上的 Rancher。要备份通过 Docker 安装的 Rancher,请参考单节点备份的说明。

backup-restore operator 需要安装在 local 集群中,并且只备份 Rancher 应用。备份和恢复操作只在 local Kubernetes 集群中执行。

请注意,1.x.x 版本的 rancher-backup operator 是针对 Rancher v2.5.x 的。

当把备份恢复到一个新的 Rancher 设置中时,新设置的版本应该与备份的版本相同。在恢复备份时还应考虑 Kubernetes 的版本,因为集群中支持的 apiVersion 和备份文件中的 apiVersion 可能不同。

先决条件

Rancher 版本必须是 v2.5.0 及以上。

步骤 1:安装 rancher-backup operator

备份存储位置是 operator 级别的设置,所以需要在安装或升级 rancher-backup 时进行配置。

备份创建为 .tar.gz 文件。这些文件可以推送到 S3 或 Minio,也可以存储在一个持久卷中。

  1. 在 Rancher UI 中,进入Cluster Explorer
  2. 单击 Apps
  3. 单击 Rancher Backups
  4. 配置默认的存储位置。有关帮助,请参阅存储配置部分

注意:使用 backup-restore-operator 执行还原后,Fleet 中会出现两个已知问题: Fleet agent 无法操作,并且 clientSecretName 和 HelmSecretName 不包括在 Fleet gitrepos 中。请参考这里了解解决方法。

步骤 2:执行备份

要执行备份,必须创建 Backup 类型的自定义资源。

  1. Cluster Explorer中,进入左上角的下拉菜单,单击Rancher Backups
  2. 单击 Backup
  3. 使用表单或 YAML 编辑器创建 Backup。
  4. 要使用该表单配置 Backup 详细信息,请单击Create,然后参考配置参考范例
  5. 要使用 YAML 编辑器,我们可以单击Create > Create from YAML,输入 Backup YAML。这个例子备份自定义资源将在 S3 中创建加密的定期备份。该应用程序使用credentialSecretNamespace值来确定在哪里寻找 S3 备份的密钥:

    1. apiVersion: resources.cattle.io/v1
    2. kind: Backup
    3. metadata:
    4. name: s3-recurring-backup
    5. spec:
    6. storageLocation:
    7. s3:
    8. credentialSecretName: s3-creds
    9. credentialSecretNamespace: default
    10. bucketName: rancher-backups
    11. folder: rancher
    12. region: us-west-2
    13. endpoint: s3.us-west-2.amazonaws.com
    14. resourceSetName: rancher-resource-set
    15. encryptionConfigSecretName: encryptionconfig
    16. schedule: "@every 1h"
    17. retentionCount: 10

    :::note 注意 使用 YAML 编辑器创建备份资源时,resourceSetName 必须设置为 rancher-resource-set。 :::

    有关配置 Backup 的帮助,请参阅配置参考示例

    :::important 重要 rancher-backup operator 不保存 EncryptionConfiguration 文件。创建加密备份时必须保存 EncryptionConfiguration 文件的内容,从该备份中恢复时必须使用相同的文件。 :::

  6. 单击 创建

结果:在 Backup 自定义资源中配置的存储位置中创建了备份文件。执行还原时使用该文件的名称。