备份 Atlas 集群
注意
此功能不适用于以下任何部署:
M0
集群M2/M5
集群Flex 集群
注意
无服务器实例自动备份
Atlas会自动为无服务器实例启用备份,并每六个小时创建一次快照。您应用无服务器实例的任何Atlas Kubernetes Operator备份自定义资源都不会覆盖自动设置。
要学习;了解有关无服务器实例备份的更多信息,请参阅 无服务器实例备份。
Atlas Kubernetes Operator 支持 Atlas 集群的云备份。 云备份使用云提供商的原生快照功能来支持全副本快照和本地化快照存储。
要使用 Atlas Kubernetes Operator 托管云备份,您可以指定和更新以下自定义资源:
自定义资源 | 用途 |
---|---|
定义备份策略,包括备份频率和快照保留时长。 | |
定义备份安排,包括 Atlas 备份数据库部署的时间、可以恢复的时间倒回天数以及备份策略。 | |
定义集群的特征。 您必须将 此外,要配置连续备份,必须将 |
每次更改任何支持的资源时,Atlas Kubernetes Operator都会创建或更新相应的 Atlas 配置。
Considerations
查看以下注意事项:
您可以为每个备份计划指定一个备份策略。
您可以为每个集群指定一个备份计划,但也可以为多个集群使用相同的备份计划。
Atlas 会根据您的集群配置来确定创建快照的节点顺序。 要了解更多信息,请参阅云备份。
Atlas Kubernetes Operator 支持自动快照分发。 您可以使用
AtlasBackupSchedule
自定义资源中的spec.copySetting
字段进行配置。
注意
如果启用了备份合规性策略,则无法将单个集群的备份策略修改为低于备份合规性策略中设立的最低要求。 您可以随时修改集群级备份策略。 Atlas增强了任何先前存在的集群级策略,以满足备份合规性策略的最低要求。 所有新集群都使用备份合规策略。 如果降低备份安排的频率,则更改仅适用于未来的备份。 任何现有的oplog都会保留在原始窗口中。 备份合规策略的最低要求应用。 您可以配置额外的快照保留。 您还可以查看所有M10+
专用集群的备份详细信息,包括保留有快照的已删除集群。 要学习;了解更多信息,请参阅查看专用集群的备份详细信息。
限制
云备份存在某些限制。 要了解更多信息,请参阅备份集群。
先决条件
要为 Atlas Kubernetes Operator 托管的集群启用云备份,您必须:
拥有一个正在运行的 Kubernetes 集群,其中部署了 Atlas Kubernetes Operator。
确保您的 IP地址在组织的API访问列表中。
步骤
请按照以下步骤为 Atlas Kubernetes 操作符托管的集群启用云备份:
创建备份策略。
要了解有关备份策略参数的更多信息,请参阅AtlasBackupPolicy
自定义资源。
示例:
cat <<EOF | kubectl apply -f - apiVersion: atlas.mongodb.com/v1 kind: AtlasBackupPolicy metadata: name: "atlas-default-backuppolicy" spec: items: frequencyType: "weekly" frequencyInterval: 1 retentionUnit: "days" retentionValue: 7 EOF
创建备份安排。
在spec.policy.name
字段中,指定AtlasBackupPolicy
自定义资源中的metadata.name
以应用备份策略。
要了解有关备份安排的其他参数的详情,请参阅AtlasBackupSchedule
自定义资源。
示例:
cat <<EOF | kubectl apply -f - apiVersion: atlas.mongodb.com/v1 kind: AtlasBackupSchedule metadata: name: "atlas-default-backupschedule" spec: autoExportEnabled: true copySettings: - cloudProvider: AWS frequencies: - HOURLY regionName: US_EAST_1 shouldCopyOplogs: true referenceHourOfDay: 10 referenceMinuteOfHour: 10 restoreWindowDays: 2 policy: name: atlas-default-backuppolicy namespace: mongodb-atlas-system EOF
将备份安排应用于集群。
spec.backupRef.name
AtlasDeployment
在 资源 metadata.name
的 字段中,指定 资源AtlasBackupSchedule
中的 ,以将备份安排应用于集群。
示例:
cat <<EOF | kubectl apply -f - apiVersion: atlas.mongodb.com/v1 kind: AtlasDeployment metadata: name: my-atlas-cluster spec: backupRef: name: atlas-default-backupschedule namespace: mongodb-atlas-system EOF