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,也可以存储在一个持久卷中。
- 在 Rancher UI 中,进入Cluster Explorer。
- 单击 Apps。
- 单击
Rancher Backups
。 - 配置默认的存储位置。有关帮助,请参阅存储配置部分。
注意:使用 backup-restore-operator 执行还原后,Fleet 中会出现两个已知问题: Fleet agent 无法操作,并且 clientSecretName 和 HelmSecretName 不包括在 Fleet gitrepos 中。请参考这里了解解决方法。
步骤 2:执行备份
要执行备份,必须创建 Backup 类型的自定义资源。
- 在Cluster Explorer中,进入左上角的下拉菜单,单击Rancher Backups。
- 单击 Backup。
- 使用表单或 YAML 编辑器创建 Backup。
- 要使用该表单配置 Backup 详细信息,请单击Create,然后参考配置参考和范例。
要使用 YAML 编辑器,我们可以单击Create > Create from YAML,输入 Backup YAML。这个例子备份自定义资源将在 S3 中创建加密的定期备份。该应用程序使用
credentialSecretNamespace
值来确定在哪里寻找 S3 备份的密钥:apiVersion: resources.cattle.io/v1
kind: Backup
metadata:
name: s3-recurring-backup
spec:
storageLocation:
s3:
credentialSecretName: s3-creds
credentialSecretNamespace: default
bucketName: rancher-backups
folder: rancher
region: us-west-2
endpoint: s3.us-west-2.amazonaws.com
resourceSetName: rancher-resource-set
encryptionConfigSecretName: encryptionconfig
schedule: "@every 1h"
retentionCount: 10
:::note 注意 使用 YAML 编辑器创建备份资源时,
resourceSetName
必须设置为rancher-resource-set
。 ::::::important 重要
rancher-backup
operator 不保存 EncryptionConfiguration 文件。创建加密备份时必须保存 EncryptionConfiguration 文件的内容,从该备份中恢复时必须使用相同的文件。 :::单击 创建
结果:在 Backup 自定义资源中配置的存储位置中创建了备份文件。执行还原时使用该文件的名称。