配置 MongoDB 数据库备份
您可以使用 MongoDB 自定义资源,为 Kubernetes Operator 管理的 MongoDB 数据库配置持续自动化备份。
注意
如果已在 MongoDB 数据库资源部署期间为 MongoDB 资源配置备份,则无需完成以下过程。
注意事项
在配置 MongoDB 资源的备份之前,请参阅以下注意事项:
如果使用 Kubernetes Operator 设置分配标签,您在 Kubernetes 配置文件中为分配标签设置的值将覆盖 Ops Manager 用户界面中定义的值。您未使用 Kubernetes Operator 设置的分配标签继续使用 Ops Manager 用户界面中设置的值。
如果使用 Kubernetes Operator 设置快照字段,您在 Kubernetes 配置文件中为该字段设置的值将覆盖 Ops Manager 用户界面中定义的值。未使用 Kubernetes Operator 设置的快照计划字段继续使用 Ops Manager 用户界面中设置的值。
例子
您在 Kubernetes Operator 中设置
backup.snapshotSchedule.snapshotIntervalHours=6
。您在用户界面中设置以下值:
快照间隔: 10
快照保留天数:5
Ops Manager 在部署中使用以下值:
快照间隔: 6
快照保留天数:5
如果您使用 Kubernetes Operator 为 MongoDB 数据库部署启用备份,但未使用 Kubernetes Operator 设置快照计划,Ops Manager 将使用您在 Ops Manager 用户界面中设置的快照计划。
如果您为 MongoDB 部署启用了备份,但根本没有设置快照计划,则 Ops Manager 会使用默认快照计划。
先决条件
在为 MongoDB 资源配置持续备份之前,请完成以下任务:
为 Ops Manager 资源配置备份。在链接的过程中,请参阅配置备份的步骤。MongoDB 数据库持续备份要求您将 Ops Manager 资源规范中的
spec.backup.enabled
值设置为true
。
步骤
为 MongoDB 数据库部署启用备份。
将 spec.backup.mode
设置添加到 MongoDB 数据库部署的配置文件中,并将其值设置为 enabled
,如以下副本集示例所示:
1 2 apiVersion: mongodb.com/v1 3 kind: MongoDB 4 metadata: 5 name: <my-replica-set> 6 spec: 7 members: 3 8 version: "6.0.0-ent" 9 type: ReplicaSet 10 opsManager: 11 configMapRef: 12 name: <my-project> 13 credentials: <my-credentials> 14 backup: 15 # Sets labels for the Backup Daemon. 16 assignmentLabels: ["test1", "test2"] 17 mode: enabled
可选:设置快照计划。
将以下任何快照计划设置添加到部署规范文件中。 MongoDB Ops Manager要了解在未使用Kubernetes Operator 设置快照计划字段的情况下, 如何确定快照计划,请参阅 注意事项。
可选:设置备份分配标签。
将一个或多个spec.backup.assignmentLabels
添加到部署规范文件中。 使用分配标签来标识特定备份存储与特定项目的关联。 在Kubernetes Operator 中设置标签会覆盖您在MongoDB Ops Manager中设置的标签。 要了解详情,请参阅注意事项。
请参阅本过程前面带有分配标签的规范文件示例。