AtlasBackupSchedule自定义资源配置一个备份安排,您可以应用 AtlasDeployment自定义资源。 当您创建AtlasBackupSchedule自定义资源时, Atlas Kubernetes Operator会尝试创建或更新备份安排。
重要
自定义资源不再默认删除对象
Atlas Kubernetes Operator使用自定义资源配置文件来管理Atlas配置,但从Atlas Kubernetes Operator2.0 开始,您在Kubernetes中删除的自定义资源不再(默认)在Atlas中删除。相反, Atlas Kubernetes Operator只是停止管理Atlas中的这些资源。
AtlasProject示例,如果您在Kubernetes中删除 自定义资源,默认默认, Atlas Kubernetes Operator不再自动从Atlas中删除相应的项目。这种行为更改旨在帮助防止意外删除。 要学习;了解详情,包括如何将此行为恢复为在Atlas Kubernetes Operator.2 0之前使用的默认,请参阅新默认值: Atlas Kubernetes2 Operator.0 中的删除保护。同样,如果您使用Atlas Kubernetes Operator从Kubernetes中的Atlas项目中删除团队,则Atlas Kubernetes Operator不会从Atlas中删除团队。
显式定义所需的配置详细信息,以避免隐式使用默认Atlas配置值。 在某些情况下,继承Atlas默认值可能会导致协调循环,从而阻止自定义资源实现
READY状态。 示例,在AtlasDeployment自定义资源中显式定义所需的自动伸缩行为(如所包含的示例所示)可确保自定义资源中的静态实例大小不会重复应用于已启用自动伸缩的Atlas部署。autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
Atlas Kubernetes Operator 使用 Atlas Cloud Backup Schedule API 资源执行以下操作之一:
创建新的备份安排。
更新现有的备份安排。
如果您从 Kubernetes 集群中删除AtlasBackupSchedule资源,Atlas 将停止为集群创建备份。
注意
要备份集群,必须执行以下所有操作:
创建备份策略
创建备份安排,并将 spec.policy.name字段设立为已配置备份策略的名称。
将
AtlasDeployment自定义资源中的 spec.backupRef.name字段设置为已配置备份安排的名称。
要了解更多信息,请参阅备份 Atlas 集群。
您可以为每个集群指定一个备份计划,但也可以为多个集群使用相同的备份计划。
例子
以下示例显示了一个AtlasBackupSchedule自定义资源,该资源配置为在 10:10 UTC 拍摄快照并最多两天进行恢复:
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
参数
AtlasBackupSchedule
AtlasBackupSchedule 是 atlasbackupschedules API的模式。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | atlas.mongodb.com/v1 | true |
| 字符串 |
| true |
| 对象 | 有关 | true |
| 对象 |
| false |
| 对象 |
| false |
AtlasBackupSchedule.spec
AtlasBackupScheduleSpec 定义了 AtlasBackupSchedule 的目标状态。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 对象 | 所需更新备份策略中备份 | true |
| 布尔 | 指定 true 以启用将云备份快照自动导出到 | false |
| []对象 | 将备份复制到其他区域,以提高弹性并加快恢复速度。 | false |
| 对象 | 自动将云备份快照导出到 | false |
| 整型 |
| false |
| 整型 |
| false |
| 整型 | 使用“持续云备份”精度可以恢复到的时间倒回天数。必须是非零的正整数。仅适用于连续云备份。格式:int64 默认值:1 | false |
| 布尔 | 指定 true 以将更新的备份策略中的保留更改应用Atlas之前拍摄的快照。 | false |
| 布尔 | 指定 true 可在Atlas完成快照导出后上传到 | false |
AtlasBackupSchedule.spec.policy
所需更新备份策略中备份策略的引用(名称和命名空间)。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | Kubernetes资源名称 | true |
| 字符串 | Kubernetes资源的命名空间 | false |
AtlasBackupSchedule.spec.copySettings
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 枚举 | 标识存储快照副本的云提供商。枚举: | false |
| []string | 描述要复制的快照类型的列表。 | false |
| 字符串 | 要将属于 | false |
| 布尔 | 指示是否将 oplog 复制到目标地区的标志。 | false |
AtlasBackupSchedule.spec.export
用于将云备份快照自动导出到 AWS 存储桶的导出策略。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | 被授予访问权限备份访问快照的 | true |
| 枚举 | 人类可读标签,指示导出策略项的发生率。枚举:每月 默认值:每月 | true |
AtlasBackupSchedule.status
BackupScheduleStatus 定义了 AtlasBackupSchedule 的观察到的状态。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| []对象 | 条件是显示Atlas自定义资源当前状态的状态列表 | true |
| []string | 利用此备份安排的所有部署的人类可读名称列表。 | false |
| 整型 |
| false |
AtlasBackupSchedule.status.conditions
条件描述了Atlas自定义资源在某一点的状态。
Name | 类型 | 说明 | 必需 |
|---|---|---|---|
| 字符串 | 条件的状态; True、False、未知之一。 | true |
| 字符串 | Atlas自定义资源条件的类型。 | true |
| 字符串 | 上次条件从一种状态转换为另一种状态的时间。以 | false |
| 字符串 | 提供有关转换的详细信息的 | false |
| 字符串 | 条件的最后一次转换的 | false |