The AtlasBackupPolicy custom resource configures a backup policy
that applies to the AtlasBackupSchedule Custom Resource that you
can apply to your AtlasDeployment Custom Resource. When you
create the AtlasBackupPolicy custom resource, Atlas Kubernetes Operator tries to
create or update a backup policy.
Important
Custom Resources No Longer Delete Objects by Default
Atlas Kubernetes Operator uses custom resource configuration files to manage your Atlas configuration, but as of Atlas Kubernetes Operator 2.0, custom resources you delete in Kubernetes are no longer (by default) deleted in Atlas. Instead, Atlas Kubernetes Operator simply stops managing those resources in Atlas. For example, if you delete an
AtlasProjectCustom Resource in Kubernetes, by default the Atlas Kubernetes Operator no longer automatically deletes the corresponding project from Atlas. This change in behavior is intended to help prevent accidental or unexpected deletions. To learn more, including how to revert this behavior to the default used prior to Atlas Kubernetes Operator 2.0, see New Default: Deletion Protection in Atlas Kubernetes Operator 2.0.Similarly, Atlas Kubernetes Operator does not delete teams from Atlas if you remove them from an Atlas project in Kubernetes with the Atlas Kubernetes Operator.
Explicitly define your desired configuration details in order to avoid implicitly using default Atlas configuration values. In some cases, inheriting Atlas defaults may result in a reconciliation loop which can prevent your custom resource from achieving a
READYstate. For example, explicitly defining your desired autoscaling behavior in yourAtlasDeploymentcustom resource, as shown in the included example, ensures that a static instance size in your custom resource is not being repeatedly applied to an Atlas deployment which has autoscaling enabled.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
Atlas Kubernetes Operator does one of the following actions using the Atlas Cloud Backup Schedule API Resource:
Creates a new backup policy.
Updates an existing backup policy.
If you remove the AtlasBackupPolicy resource from your Kubernetes
cluster, Atlas stops creating backups for your cluster.
Note
You must do all of the following tasks to back up a cluster:
Create a backup policy.
Create a backup schedule and set the spec.policy.name field to the name of the configured backup policy.
Set the spec.backupRef.name field in the
AtlasDeploymentCustom Resource to the name of the configured backup schedule.
To learn more, see Back Up Your Atlas Cluster.
Example
The following example shows an AtlasBackupPolicy custom resource
that is configured to take snapshots weekly and retain snapshots for
seven days:
apiVersion: atlas.mongodb.com/v1 kind: AtlasBackupPolicy metadata: name: "atlas-default-backuppolicy" spec: items: - frequencyType: "weekly" frequencyInterval: 1 retentionUnit: "days" retentionValue: 7
Parameters
AtlasBackupPolicy
AtlasBackupPolicy is the Schema for the atlasbackuppolicies API
Name | Type | Description | Required |
|---|---|---|---|
| string | atlas.mongodb.com/v1 | true |
| string |
| true |
| object | Refer to the Kubernetes | true |
| object |
| false |
| object |
| false |
AtlasBackupPolicy.spec
AtlasBackupPolicySpec defines the target state of AtlasBackupPolicy.
Name | Type | Description | Required |
|---|---|---|---|
| []object | A list of | true |
AtlasBackupPolicy.spec.items
Name | Type | Description | Required |
|---|---|---|---|
| integer | Frequency of the new backup policy item specified by | true |
| enum | Frequency associated with the backup policy item. You can specify only one each of hourly or daily backup policy items. Enum: hourly, daily, weekly, monthly, yearly | true |
| enum | Unit of time in which | true |
| integer | Duration in days, weeks, months, or years that | true |
AtlasBackupPolicy.status
BackupPolicyStatus defines the observed state of AtlasBackupPolicy.
Name | Type | Description | Required |
|---|---|---|---|
| []object | Conditions is the list of statuses showing the current state of the Atlas Custom Resource | true |
| []string |
| false |
| integer |
| false |
AtlasBackupPolicy.status.conditions
Condition describes the state of an Atlas Custom Resource at a certain point.
Name | Type | Description | Required |
|---|---|---|---|
| string | Status of the condition; one of True, False, Unknown. | true |
| string | Type of Atlas Custom Resource condition. | true |
| string | Last time the condition transitioned from one status to another.
Represented in | false |
| string | A | false |
| string | The | false |