> For the complete MongoDB documentation index, see www.mongodb.com/docs/llms.txt

<!--
Tab options on this page. Append to the .md URL to filter:
  ?tabs=<id,...>   select specific tabs (e.g. ?tabs=nodejs,shell)
  ?allTabs=true    include every tab
  (no param)       default: one tab per tabset

Available tabs:
  other tabs: atlascli, ui
-->

# Modify an Atlas Core Cluster

**Note:**

This page applies to Atlas Core clusters. To modify an Atlas Infinite cluster, see [Modify an Atlas Infinite Cluster.](https://www.mongodb.com/docs/atlas/infinite/atlas-infinite-modify-cluster.md#std-label-atlas-infinite-modify-cluster)

You can modify your Atlas Core cluster after initial configuration.

- For a summary of available options, see [Atlas Configuration Options.](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-cluster-config-options)

- For in-depth configuration steps, see [Required Access](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-open-dialog) and the options that follow.

For more information about the impact, cost, and backup policy of your cluster changes, see [Considerations.](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-cluster-config-considerations)

## Atlas Configuration Options

You can change the following options of your Atlas Core cluster:

| Setting | Action | Limitations |
| --- | --- | --- |
| [Cluster Type](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-change-cluster-type) | Change the cluster type. | To scale the cluster tier of a Free cluster or Flex cluster to a dedicated cluster, see [Scale a Free or Flex Cluster to a Dedicated Cluster.](https://www.mongodb.com/docs/atlas/scale-free-flex-cluster.md#std-label-scale-free-flex-cluster) |
| [Global Cluster Configuration](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-global-config) | Enable Global Writes for your cluster or change existing global cluster configurations. | After you enable Global Writes for a cluster, you can't disable them. When Global Writes are enabled, Global Clusters do not support dedicated search nodes. |
| [Cloud Provider & Region](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-cloud-provider) | Select a different provider to change the cloud provider for your dedicated clusters.; Add or remove nodes across different regions and cloud providers. | Atlas performs a faster [Cloud-based initial sync](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-cloud-based-initial-sync) when you add or replace a node in a region that already contains a primary or secondary node. Atlas supports cross-region Cloud-based initial sync for AWS (Amazon Web Services) and Google Cloud clusters only. For Azure (Microsoft Azure) clusters, Atlas performs a [logical initial sync](https://www.mongodb.com/docs/manual/core/replica-set-sync.md#std-label-replica-set-initial-sync-logical) to add a node to a new region. If you created an Atlas cluster on Google Cloud or Azure (Microsoft Azure) before November 2, 2020, when Atlas added support for multi-cloud clusters, changing to a different provider changes the connection string to your new cluster. Consider scheduling a time to [update your applications with the new connection string](https://www.mongodb.com/docs/atlas/reference/faq/connection-changes.md#std-label-atlas-faq-migrate-providers) to connect to the cluster again. To learn more, see [Should I update the connection string if I change cloud provider on a dedicated cluster?](https://www.mongodb.com/docs/atlas/reference/faq/connection-changes.md#std-label-dedicated-to-dedicated) For clusters on Azure (Microsoft Azure), if you change a region, some storage capabilities might be unavailable in that region. The Atlas UI notifies you that your IOPS (Input/Output Operations per Second) will be reduced, which might impact your application performance. To learn more, see [regions that support extended storage](https://www.mongodb.com/docs/atlas/reference/microsoft-azure.md#std-label-microsoft-azure-storage-supported-regions), and [Change Storage Capacity and IOPS on Azure (Microsoft Azure).](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-change-storage-capacity-azure) |
| [Deploy or Configure a multi-cloud, multi-region cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-region) | Deploy or modify a multi-cloud, multi-region cluster. | For clusters on Azure (Microsoft Azure), if you change to a multi-region cluster, some storage volume capabilities might be unavailable in one of the regions. The Atlas UI notifies you that your IOPS (Input/Output Operations per Second) will be reduced, which might impact your application performance. To learn more, see [regions that support extended storage](https://www.mongodb.com/docs/atlas/reference/microsoft-azure.md#std-label-microsoft-azure-storage-supported-regions), and [Change Storage Capacity and IOPS on Azure (Microsoft Azure).](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-change-storage-capacity-azure) |
| [Cluster Tier](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-instance) | Change the cluster tier. | If your cluster uses [NVMe storage](https://www.mongodb.com/docs/atlas/nvme-storage.md#std-label-nvme-storage), Atlas must perform an [initial sync.](https://www.mongodb.com/docs/manual/core/replica-set-sync/) On Atlas Core clusters, [a File Copy Based Initial Sync](https://www.mongodb.com/docs/manual/core/replica-set-sync/#file-copy-based-initial-sync) will always be used to sync all of the nodes of an NVME cluster whenever an initial sync is required. |
| [Cluster Generation](https://www.mongodb.com/docs/atlas/cluster-config/change-cluster-generation.md#std-label-change-aws-gen2-cluster-generation) | Change the cluster generation. | You can switch between generations for eligible clusters in the same way you would change your cluster's tier, with some additional considerations. To learn more, see the [Change a Cluster's Generation](https://www.mongodb.com/docs/atlas/cluster-config/change-cluster-generation.md#std-label-change-cluster-generation) page. Gen2 is only available for `M30+` dedicated clusters deployed on AWS (Amazon Web Services) or Google Cloud. To learn more, see [Gen2 Dedicated Clusters.](https://www.mongodb.com/docs/atlas/manage-clusters.md#std-label-gen2-clusters) |
| [Cluster Storage Options](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-create-cluster-storage) | Change the storage options for the cluster tier. | Clusters using NVMe (non-volatile memory express) storage have a fixed size for each cluster tier. |
| [Cluster Auto-scaling Options](https://www.mongodb.com/docs/atlas/cluster-autoscaling.md#std-label-cluster-autoscaling) | Change the cluster's auto-scaling options, including storage auto-scaling. Depending on whether you choose to use storage auto-scaling, Atlas manages the oplog entries based on either the minimum oplog retention window, or the oplog size. To learn more, see [Oplog Size Behavior](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-oplog-size-behavior). Atlas enables storage auto-scaling by default. | |
| [MongoDB Version](https://www.mongodb.com/docs/atlas/atlas-versions.md#std-label-scale-cluster-version) | Upgrade the major MongoDB version of the cluster. | You can't downgrade the MongoDB version unless you pinned the cluster's FCV (Feature Compatibility Version) before upgrading. You can't upgrade to a version that is 2 versions above the pinned FCV (Feature Compatibility Version) version. If a cluster is pinned to FCV (Feature Compatibility Version) 7.0, you can only upgrade to 8.0, not 9.0+. |
| [Deploy a Sharded Cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-sharding) | Scale up a replica set to a sharded cluster. | You can't reverse this operation. Atlas allows Sharded Clusters for `M30` or larger clusters. You can convert a replica set to a sharded cluster when a [database trigger](https://www.mongodb.com/docs/atlas/atlas-ui/triggers/database-triggers.md#std-label-atlas-database-trigger) is running with the Document Preimage configuration option enabled if your cluster runs MongoDB 5.3 or later. For clusters running MongoDB versions earlier than 5.3, you must disable the Document Preimage configuration option before converting to a sharded cluster. |
| [Modify the Number of Shards](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-shardNum) | Set the number of shards for a sharded cluster. | Reducing the number of shards takes some time. Atlas removes shards in descending order based on the number in in their `"_id"` field. Any subsequent MongoDB configuration changes start after Atlas removes the shards. IMPORTANT: When you remove a shard in 8.0, Atlas uses the [`moveCollection`](https://www.mongodb.com/docs/manual/reference/command/moveCollection.md#mongodb-dbcommand-dbcmd.moveCollection) command to move any unsharded collections in that shard to a remaining shard. All unsharded collections remain online during this process. All sharded collections remain online and available during the shard removal process. You must turn on the balancer to drain the sharded collections from the removed shard.; Atlas moves any unsharded collections that can't be drained by `moveCollection` command by using the [movePrimary](https://www.mongodb.com/docs/manual/reference/command/movePrimary/) command. To learn more about the limitations of `moveCollection`, see [Restrictions](https://www.mongodb.com/docs/manual/reference/command/moveCollection/#restrictions). `movePrimary` is an offline operation.; For more information about shard removal, see [Remove Shards from a Sharded Cluster.](https://www.mongodb.com/docs/manual/tutorial/remove-shards-from-cluster/) Atlas allows Sharded Clusters for `M30` or larger clusters. |
| [Enable or Disable Backup](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-backups) | Enable or disable backups for the cluster. | Atlas enables backups for Flex clusters automatically. You can't disable backup for clusters on those tiers. |
| [Manage your own encryption keys](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-enable-encryption) | Enable or disable using your own encryption keys with the cluster. | |

Click [Apply Changes](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-payment) after you complete any of these modifications.

## Considerations

### Migration, Availability, and Performance Impact

Making changes to an Atlas Core cluster often requires migrating to new servers and storage volumes. The time required for an [initial sync](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-initial-sync) and resynchronizing data across storage volumes increases linearly with the amount of data in the cluster.

On Atlas Core clusters, [a File Copy Based Initial Sync](https://www.mongodb.com/docs/manual/core/replica-set-sync/#file-copy-based-initial-sync) will always be used to sync all of the nodes of an NVME cluster whenever an initial sync is required.

The following migrations require an [initial sync:](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-initial-sync)

- Scaling up from a Free cluster (formerly known as `M0`) or a Flex cluster to a higher cluster tier.

- Changes from general to [NVMe storage volumes](https://www.mongodb.com/docs/atlas/nvme-storage.md#std-label-nvme-storage) and from NVMe to general storage.

- Scaling up or scaling down from one NVMe (non-volatile memory express) cluster tier to another, initiated either manually or via auto-scaling. NVMe (non-volatile memory express) clusters auto-scale to the next higher tier when 90% of the available storage space is consumed.

- Changes that require a replacement of an NVMe-backed Atlas cluster, such as region changes.

- For clusters deployed to Azure (Microsoft Azure), changes to the [Cluster Class.](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-storage-class-ui)

To maximize availability:

- For a replica set, Atlas migrates one node at a time, starting with the secondary nodes first and then the primary.

- For a sharded cluster, Atlas performs the migration of the shards independently of each other. For each shard, such as a replica set, Atlas migrates one node at a time, starting with the secondary nodes first and then the primary.

[Retryable writes](https://www.mongodb.com/docs/manual/core/retryable-writes/) should prevent any write errors during the election of a new primary. On average, an election can take five seconds.

Migration can affect performance if your primary is already reaching operational capacity. Each newly migrated replica set node must perform an [initial sync](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-initial-sync) from the primary, adding to the operational load. Migrations can also affect performance if you set [read preferences](https://www.mongodb.com/docs/manual/core/read-preference/) to read from secondaries. The replica set is down one secondary during the migration.

If the workload on the Atlas cluster is such that it impedes operations, including the ability to scale, MongoDB Atlas might, in some situations, create indexes in your cluster as a safeguard.

### Billing

As you change your Atlas Core cluster, you can compare the costs of different options before applying them. The Cluster
Overview box displays the cost of the selected configuration, excluding data transfer.

**Important: Free Clusters**

Upgrading a Free cluster to a paid tier cluster starts billing for the cluster. See [Manage Billing](https://www.mongodb.com/docs/atlas/billing.md#std-label-atlas-billing) for complete documentation on Atlas billing.

The following sections provide complete documentation for each of the Atlas cluster scaling configuration options.

### Backup

See [Cloud Backups](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview.md#std-label-backup-cloud-provider) for more information on backing up your Atlas Core cluster.

## Required Access

To modify an Atlas Core cluster, you must have at least [`Project Cluster Manager`](https://www.mongodb.com/docs/atlas/reference/user-roles.md#mongodb-authrole-Project-Cluster-Manager) access to the project.

## Cloud-based Initial Sync

On Atlas Core clusters, Atlas performs a [Cloud-based initial sync](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-cloud-based-initial-sync) when you add a node to any cloud provider region that already contains a primary or secondary node, or when you add a node to an AWS (Amazon Web Services) or Google Cloud region that doesn't have an existing primary or secondary node. Cloud-based initial sync leverages your cloud provider's native capabilities to create a snapshot of a source node's data and restore it to the new node.

If your Atlas cluster has nodes in multiple regions, including at least one AWS (Amazon Web Services) region, you can [enable Faster Cross-Region Initial Sync for AWS Clusters](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-enable_time_based_initial_sync_aws) in your cluster's Additional Settings for an additional cost. This allows Atlas to use [AWS time-based snapshot copies](https://docs.aws.amazon.com/ebs/latest/userguide/time-based-copies.html) to speed up cross-region data copy between AWS (Amazon Web Services) nodes during Cloud-based initial sync. To learn more about this setting, see [Enable Faster Cross-Region Initial Sync for Atlas Core AWS Clusters.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-enable_time_based_initial_sync_aws)

On `M40+` AWS (Amazon Web Services) clusters that don't use [NVMe storage](https://www.mongodb.com/docs/atlas/nvme-storage.md#std-label-nvme-storage), Atlas temporarily provisions a higher-performance volume to support [fast disk pre-warming](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-disk-pre-warming) during a Cloud-based initial sync. To restore your original storage settings, Atlas consumes one of the four [EBS volume modifications](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-change-storage-capacity-aws) that AWS (Amazon Web Services) allows for each volume in any 24-hour period.

Atlas supports cross-region Cloud-based initial sync for AWS (Amazon Web Services) and Google Cloud clusters only. For Azure (Microsoft Azure) clusters, Atlas performs a [logical initial sync](https://www.mongodb.com/docs/manual/core/replica-set-sync.md#std-label-replica-set-initial-sync-logical) to add a node to a new region. You can add or remove nodes in your cluster when you [edit the cluster configuration.](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-edit-cluster-atlas)

**Note: Self-Managed Initial Sync Disambiguation**

For self-managed deployments, initial sync is the process that MongoDB uses to add a new node to a replica set. Starting in MongoDB 5.2, the initial sync process can be *logical* or *file copy based*. These processes are different from Cloud-based initial syncs available in MongoDB Atlas, which leverage your cloud provider's native capabilities to create a snapshot of the source node's data and restore it to the new node. To learn more about the self-managed initial sync process, see [Initial Syncs](https://www.mongodb.com/docs/manual/core/replica-set-sync/#initial-sync) in the MongoDB manual.

## Edit a Cluster

### Atlas CLI

You can modify any of the Atlas Core cluster settings on this page using the Atlas CLI.

To update an Atlas cluster using the Atlas CLI, run the following command:

```sh

atlas clusters update [clusterName] [options]

```

To learn more about the command syntax and parameters, see the Atlas CLI documentation for [atlas clusters update.](https://www.mongodb.com/docs/atlas/cli/current/command/atlas-clusters-update/)

### Edit Advanced Settings

To update the advanced configuration settings for one cluster using the Atlas CLI, run the following command:

```sh

atlas clusters advancedSettings update <clusterName> [options]

```

To learn more about the command syntax and parameters, see the Atlas CLI documentation for [atlas clusters advancedSettings update.](https://www.mongodb.com/docs/atlas/cli/current/command/atlas-clusters-advancedSettings-update/)

## Modify the Cluster Type

If you have a Free cluster or Flex cluster, you can [scale the cluster tier to a dedicated cluster.](https://www.mongodb.com/docs/atlas/scale-free-flex-cluster.md#std-label-scale-free-flex-cluster)

**Note: Considerations**

You can't change a dedicated cluster to a Free cluster or a Flex cluster. You also can't change the database edition of a cluster after you create it, in either direction between Atlas Core and Atlas Infinite.

Scaling a Free cluster or Flex cluster to a dedicated cluster doesn't preserve the oplog. If you have [Database Triggers](https://www.mongodb.com/docs/atlas/atlas-ui/triggers/database-triggers.md#std-label-atlas-database-trigger) configured on the cluster, the Triggers fail during the upgrade because their resume tokens no longer exist in the oplog. After the upgrade completes, resume the failed Triggers without a resume token. To learn more, see [Suspended Triggers.](https://www.mongodb.com/docs/atlas/atlas-ui/triggers/database-triggers.md#std-label-atlas-resume-a-suspended-trigger)

## Modify the Global Cluster Configuration

**Important:**

You can't disable Global Writes for a cluster once deployed.

On Atlas Core clusters, you can enable global writes for your cluster or modify existing global cluster configurations. Global writes aren't applicable to Atlas Infinite clusters.

**See also:**

- [Manage Global Clusters.](https://www.mongodb.com/docs/atlas/global-clusters.md#std-label-global-clusters)

- [Create a Global Cluster.](https://www.mongodb.com/docs/atlas/tutorial/create-global-cluster.md#std-label-create-new-global-write-cluster)

## Modify the Cloud Provider & Region

**Note: Considerations**

Free cluster Tier Clusters

You can modify the cloud provider and region only when you scale up your Free cluster to a larger cluster.

Flex cluster or larger Tier Clusters

You can modify the cloud provider and region when you modify your cluster or scale up to a larger cluster.

Changing to a different provider could change the connection string to your new cluster if your old cluster was deployed on Google Cloud or Azure (Microsoft Azure) before October 2020. Consider scheduling a time to [update your applications with the new connection string](https://www.mongodb.com/docs/atlas/reference/faq/connection-changes.md#std-label-atlas-faq-migrate-providers) to resume connectivity to the cluster. Atlas migrates data to the new cluster.

- To view the current cloud providers and regions for your cluster, select Cloud Provider & Region.

- On Atlas Core clusters, you can [modify the cloud providers and regions](https://www.mongodb.com/docs/atlas/cluster-config/multi-cloud-distribution.md#std-label-deploy-across-multiple-regions) applied to your cluster. On Atlas Infinite clusters in public preview, you can't change the cloud provider or region after you create the cluster. To modify an Atlas Infinite cluster, see [Modify an Atlas Infinite Cluster.](https://www.mongodb.com/docs/atlas/infinite/atlas-infinite-modify-cluster.md#std-label-atlas-infinite-modify-cluster)

- To add electable nodes to your cluster during a regional outage, follow the procedure on [Reconfigure a Replica Set During a Regional Outage.](https://www.mongodb.com/docs/atlas/reconfigure-replica-set-during-regional-outage.md#std-label-reconfigure-rs-during-regional-outage)

- To scale up from an Atlas Free cluster or Flex cluster, select from the available cloud providers.

- If your cluster contains [Search Nodes](https://www.mongodb.com/docs/atlas/cluster-config/multi-cloud-distribution.md#std-label-configure-search-nodes), you can only move it to regions that support Search Nodes. For a full list of regions that don't support Search Nodes, see [Cloud Provider Regions.](https://www.mongodb.com/docs/atlas/cluster-config/multi-cloud-distribution.md#std-label-fts-cloud-provider-regions)

- If you change the primary region for a cluster with Cloud Backup enabled, Atlas takes an on-demand snapshot and stores it in the new primary region without waiting for the next scheduled snapshot. If the new primary region was previously a secondary backup region for [snapshot copy distribution](https://www.mongodb.com/docs/atlas/backup/cloud-backup/snapshot-distribution.md#std-label-snapshot-distribution), Atlas automatically updates your [backup policy](https://www.mongodb.com/docs/atlas/backup/cloud-backup/configure-backup-policy.md#std-label-configure-backup-policy) to distribute snapshot copies from the new primary region to the original primary region and other secondary regions.

- To remove or deploy additional Search Nodes, adjust the Number of Search Nodes setting under Search
  nodes for workload isolation. You can deploy between 2 and 32 search nodes per region per shard on your cluster.

  If you delete all existing Search Nodes on your cluster, there will be an interruption in processing your search query results while Atlas migrates from `mongot` processes running separately on dedicated Search Nodes to `mongot` processes running alongside `mongod`. You can't run queries while indexes are building on the node that hosts both the `mongot` and `mongod` processes, and you will experience query downtime.

  When you add Search Nodes to a cluster that doesn't have any search nodes, the existing `mongot` processes running alongside `mongod` tail writes to the database that happen after MongoDB Search completed the initial sync and the `mongot` processes on the new dedicated search nodes perform an initial sync on the required collections. This results in dual reads during the migration process.

  To learn more, see [Add Dedicated Search Nodes.](https://www.mongodb.com/docs/search/deployment/deployment-options.md#std-label-fts-add-search-nodes-to-prod)

**See also:**

- [Cloud Providers and Regions.](https://www.mongodb.com/docs/atlas/cloud-providers-regions.md#std-label-create-cluster-cloud-provider-region)

- [Move a Cluster to a Different Region.](https://www.mongodb.com/docs/atlas/tutorial/move-cluster.md#std-label-move-cluster)

### View Available Regions

To list available regions that Atlas supports for new deployments using the Atlas CLI, run the following command:

```sh

atlas clusters availableRegions list [options]

```

To learn more about the command syntax and parameters, see the Atlas CLI documentation for [atlas clusters availableRegions list.](https://www.mongodb.com/docs/atlas/cli/current/command/atlas-clusters-availableRegions-list/)

## Modify the Cluster Tier

You can change the Atlas Core cluster tier, as well as the generation, memory, storage, and IOPS (Input/Output Operations per Second) (speed) specifications for the selected cluster. If you deployed Search Nodes separately for an `M10` or higher cluster, you can also change your search tier.

**Note:**

If you have a [Backup Compliance Policy enabled](https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy.md#std-label-backup-compliance-policy), you can't modify the cluster tier to a tier that doesn't support cloud backup.

You can switch between generations for eligible clusters in the same way you would change your cluster's tier, with some additional considerations. To learn more, see the [Change a Cluster's Generation](https://www.mongodb.com/docs/atlas/cluster-config/change-cluster-generation.md#std-label-change-cluster-generation) page.

### Free Cluster and Flex Cluster Considerations

- You can't scale down an `M10+` dedicated cluster to a Free cluster or a Flex cluster.

- Changing the cluster tier requires downtime in the following scenarios:

  - You change from a Free cluster or a Flex cluster to an `M10` or larger cluster tier.

  - You change from a Free cluster to a Flex cluster.

  To prevent data corruption, halt write operations to your cluster for the duration of your scale operation.

  To learn more, see [Scale a Free or Flex Cluster to a Dedicated Cluster.](https://www.mongodb.com/docs/atlas/scale-free-flex-cluster.md#std-label-scale-free-flex-cluster)

### Tier for Cluster Nodes

Select your preferred cluster tier. If you deployed Search Nodes separately, in the Base Tier tab, select your preferred cluster tier. The selected instance size dictates the memory, storage, vCPUs, and IOPS (Input/Output Operations per Second) specification for each data-bearing server  in the cluster.

**Warning:**

Upgrading from a Free cluster or Flex cluster to a dedicated cluster tier permanently deletes the current cluster and all associated backup snapshots. These snapshots cannot be recovered after the upgrade is complete. To preserve your data, [download any required snapshots](https://www.mongodb.com/docs/atlas/backup/cloud-backup/restore-overview.md#std-label-restore-overview) or perform a data export using [`mongodump`](https://www.mongodb.com/docs/database-tools/mongodump.md#mongodb-binary-bin.mongodump) before initiating the upgrade.

**Note:**

Atlas reboots all nodes in your cluster when you modify the cluster tier.

**See also:**

- [Backup Scheduling, Retention, and On-Demand Snapshots](https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling.md#std-label-cloud-provider-retention-policy)

- [Cluster Tiers](https://www.mongodb.com/docs/atlas/manage-clusters.md#std-label-create-cluster-instance)

From the Cluster Tier section, you can also:

- [Customize Atlas Core Cluster Storage](https://www.mongodb.com/docs/atlas/customize-storage.md#std-label-create-cluster-storage)

- [Configure Auto-scaling Options](https://www.mongodb.com/docs/atlas/cluster-autoscaling.md#std-label-cluster-autoscaling)

You can [select a cluster tier](https://www.mongodb.com/docs/atlas/manage-clusters.md#std-label-create-cluster-instance) appropriately sized for your analytics workload. To learn more, see [Analytics Nodes for Workload Isolation.](https://www.mongodb.com/docs/atlas/cluster-config/multi-cloud-distribution.md#std-label-deploy-analytics-nodes)

**Important:**

After upgrading a free to a dedicated cluster, a free to a Flex cluster, or a Flex cluster to a dedicated cluster, you must restart your applications before connecting to the upgraded cluster.

If you deploy [read-only nodes](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-read-only-node) and want your cluster to scale faster, consider adjusting your [Replica Set Scaling Mode.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-replica-set-scaling-mode)

### Tier for Search Nodes

In the Search Tier tab, select your preferred search tier. If the search tier that you select is not available in your region, Atlas automatically switches to the next higher search tier in your region. The selected instance size dictates the memory, storage, IOPS (Input/Output Operations per Second) specification, and cost of each search node on your cluster.

**Note:**

Atlas reboots all nodes in your cluster when you modify the search tier.

## Modify Additional Settings

You can set the following options on your Atlas Core cluster:

- [Upgrade the Cluster Version](https://www.mongodb.com/docs/atlas/atlas-versions.md#std-label-scale-cluster-version)

- [Enable or Disable Backup for the Cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-backups)

- [Enable or Disable Termination Protection for the Cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-termination-protection)

- [Scale your Replica Set to a Sharded Cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-sharding)

- [Modify the Number of Shards](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-shardNum)

- [Enable or Disable the MongoDB SQL Interface for the Cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-enable-sql-interface)

- [Enable Encryption at Rest](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-enable-encryption)

- [Configure Additional Configuration Options](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster-more-configuration-options)

### Upgrade the Cluster Version

To select or upgrade the cluster version, see [Select or Change the Cluster Version](https://www.mongodb.com/docs/atlas/atlas-versions.md#std-label-scale-cluster-version). For general guidance on choosing a release cadence or version, see [MongoDB Versions and Upgrade Paths.](https://www.mongodb.com/docs/mongodb-versions.md#std-label-versions-and-upgrade-paths)

### Enable or Disable Backup for the Cluster

Atlas automatically enables backups for Flex clusters and you can't disable this setting. To learn more, see [Flex Cluster Backups.](https://www.mongodb.com/docs/atlas/backup/cloud-backup/flex-cluster-backup.md#std-label-flex-snapshots)

To enable Cloud Backup for an `M10+` Atlas cluster, set the Turn on Cloud Backup toggle to On. When enabled, Atlas takes snapshots of your databases at regular intervals and retains them according to your project's [backup policy.](https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling.md#std-label-cloud-provider-retention-policy)

To disable Cloud Backup for an `M10+` Atlas cluster, set the Turn on Cloud Backup toggle to Off. This also disables Continuous Cloud Backup for the cluster. To retain any existing snapshots after Cloud Backup is disabled, set the Keep
existing snapshots after backups disabled? toggle to On before you apply your changes to the cluster. This option instructs Atlas to retain the existing snapshots and [oplog](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-oplog) for the cluster according to your cluster's [backup policy.](https://www.mongodb.com/docs/atlas/backup/cloud-backup/configure-backup-policy.md#std-label-configure-backup-policy)

For detailed descriptions of the available backup options, see [Configure Backup Options for the Cluster.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-create-cluster-backups)

### Enable or Disable Termination Protection for the Cluster

To enable Termination Protection for a cluster, toggle Termination Protection to Yes.

If enabled, Atlas prevents users from deleting the cluster. To delete a cluster that has termination protection enabled, you must first disable termination protection. By default, Atlas disables termination protection for all clusters.

**See also:**

[Terminate One Deployment.](https://www.mongodb.com/docs/atlas/pause-terminate-cluster.md#std-label-terminate-cluster)

### Scale your Replica Set to a Sharded Cluster

You can convert a replica set to a sharded cluster when a [database trigger](https://www.mongodb.com/docs/atlas/atlas-ui/triggers/database-triggers.md#std-label-atlas-database-trigger) is running with the Document Preimage configuration option enabled if your cluster runs MongoDB 5.3 or later. For clusters running MongoDB versions earlier than 5.3, you must disable the Document Preimage configuration option before converting to a sharded cluster.

To deploy your cluster as a [sharded cluster](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-sharded-cluster), toggle Shard your cluster (M30 and up) to `Yes`.

To convert a singular replica set cluster to a multi-shard, sharded cluster, you must first convert to a **single** shard sharded cluster, restart your application and **reconnect to the cluster**, and then add additional shards.

If you don't restart the application clients, your data might be inconsistent once Atlas begins distributing data across shards.

If you don't reconnect the application clients, your application may suffer from data outages.

- If you are using a [DNS Seed List](https://www.mongodb.com/docs/manual/reference/connection-string-formats.md#std-label-connections-dns-seedlist) connection string, your application automatically connects to the [`mongos`](https://www.mongodb.com/docs/manual/reference/program/mongos.md#mongodb-binary-bin.mongos) for your sharded cluster.

- If you are using a [standard connection string](https://www.mongodb.com/docs/manual/reference/connection-string-formats.md#std-label-connections-standard-connection-string-format), you must update your connection string to reflect your new cluster topology.

Starting in MongoDB 8.3, [DDL operations](https://www.mongodb.com/docs/manual/reference/ddl-operations.md#std-label-ddl-operations) and [`applyOps`](https://www.mongodb.com/docs/manual/reference/command/applyOps.md#mongodb-dbcommand-dbcmd.applyOps) can only be run on a `mongos` for all sharded clusters. These operations may be temporarily unavailable while transitioning from a replica set to a sharded cluster.

For instructions on how to convert a replica set to a sharded cluster, see [Convert a Replica Set to a Sharded Cluster.](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-convert-replset-to-sharded)

**See also:**

[Deploy a Sharded Cluster.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-create-cluster-sharding)

### Modify the Number of Shards

This field is visible only if the deployment is a sharded cluster.

Your cluster can have between 1 and 70 shards, inclusive.

To scale up a replica set to a multi-sharded cluster, you must scale up to a **single** shard cluster first, restart your application and **reconnect to the cluster**, and then add additional shards.

If you don't reconnect the application clients, your application may suffer from data outages.

After you scale up a replica set cluster to a single-shard cluster, you can set the number of shards to deploy with the sharded cluster.

If you are reducing the number of shards in your sharded cluster, Atlas removes shards in descending order based on the number in the `"_id"` field (see [Sharded Cluster Configuration](https://www.mongodb.com/docs/manual/tutorial/view-sharded-cluster-configuration/)). For example, consider a sharded cluster with the following three shards:

- `"shard0"`

- `"shard1"`

- `"shard2"`

If you set the number of shards to two, Atlas removes `"shard2"` from the cluster.

IMPORTANT: When you remove a shard in 8.0, Atlas uses the [`moveCollection`](https://www.mongodb.com/docs/manual/reference/command/moveCollection.md#mongodb-dbcommand-dbcmd.moveCollection) command to move any unsharded collections in that shard to a remaining shard. All unsharded collections remain online during this process.

- All sharded collections remain online and available during the shard removal process. You must turn on the balancer to drain the sharded collections from the removed shard.

- Atlas moves any unsharded collections that can't be drained by `moveCollection` command by using the [movePrimary](https://www.mongodb.com/docs/manual/reference/command/movePrimary/) command. To learn more about the limitations of `moveCollection`, see [Restrictions](https://www.mongodb.com/docs/manual/reference/command/moveCollection/#restrictions). `movePrimary` is an offline operation.

- For more information about shard removal, see [Remove Shards from a Sharded Cluster.](https://www.mongodb.com/docs/manual/tutorial/remove-shards-from-cluster/)

### Enable or Disable the MongoDB SQL Interface for the Cluster

To enable or disable the MongoDB SQL Interface (Atlas Dedicated), expand Additional Settings and, under Advanced Settings, set Enable Atlas SQL Interface (M10 and up) to on or off.

Turning the SQL Interface off disables the feature, and client applications that depend on it lose access until you turn it back on.

The MongoDB SQL Interface (Atlas Dedicated) is available only on dedicated clusters, `M10` and above, running MongoDB 6.0 or later.

**See also:**

[Enable the MongoDB SQL Interface.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-create-cluster-enable-sql-interface)

### Enable Encryption at Rest

To enable Atlas Encryption at Rest for this cluster using your KMS (Key Management Service), toggle Manage your own encryption keys (M10 and up) to Yes. To learn more, see [Manage Your Own Encryption Keys.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-create-cluster-enable-encryption)

**Note:**

All changes to [customer KMS](https://www.mongodb.com/docs/manual/security-kms-encryption/) require an [initial sync.](https://www.mongodb.com/docs/manual/core/replica-set-sync/)

### Configure Additional Configuration Options

Configure additional options for your cluster from this section.

For details on these options, see [Configure Additional Options.](https://www.mongodb.com/docs/atlas/cluster-additional-settings.md#std-label-create-cluster-more-configuration-options)

## Modify Cluster Details

Add tags, view existing tags, and manage tags on your Atlas Core cluster. To learn more, see [Manage cluster Tags When You Modify an Existing Cluster.](https://www.mongodb.com/docs/atlas/database-deployment-tags.md#std-label-manage-tags-modify-cluster)

**Important:**

Don't include sensitive information such as Personally Identifiable Information (PII) or Protected Health Information (PHI) in your resource tags. Other MongoDB services, such as Billing, can access resource tags. MongoDB also sends cluster resource tags to DataDog and Prometheus integrations. Resource tags are *not* intended for private and sensitive data. To learn more, see [Sensitive Information.](https://www.mongodb.com/docs/atlas/production-notes.md#std-label-sensitive-info)

## Save Your Changes for Later

Click Save Draft at the end of your Atlas Core cluster configuration form to save your changes.

Clicking Save Draft the first time prompts Atlas to send an email to the email address associated with your Atlas account with a button to return to your modified cluster configuration form.

You can return to the form to:

- Continue making changes by clicking Continue on the pop-up that appears.

- Reset your changes made by clicking Reset on the pop-up that appears.

- [Review and apply](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-review-apply-cluster-changes) your cluster changes by clicking Continue on the pop-up that appears, then Review Changes.

## Review and Apply Your Changes

Click Review Changes to review the changes you have made.

The Review Changes page displays a complete side-by-side summary of the modified attributes with any warnings or notes pertaining to the changes. The original attribute settings are listed on the left and the corresponding new settings with changes in pricing are listed on the right.

Atlas displays all warnings and notes related to the change at the top. These include changes that:

- Can't be rolled back.

- Require an [initial sync.](https://www.mongodb.com/docs/manual/core/replica-set-sync/)

- Result in expected delays in execution, increase in workload, or downtime.

Once you have reviewed the changes, click Apply Changes to apply them to your Atlas Core cluster.

If you are upgrading from a Free cluster, Atlas prompts you to enter payment information before applying your changes.

On Atlas Core clusters, data-bearing servers are the machines that run the nodes holding your application data. In a sharded cluster, each shard is a replica set whose members are the data-bearing servers. Sharded clusters may also use [config servers](https://www.mongodb.com/docs/manual/core/sharded-cluster-config-servers.md#std-label-sharding-config-server), which are billed separately from the data-bearing servers.

On Atlas Infinite clusters, data-bearing servers don't apply. Atlas stores and manages your data in a storage layer that is separate from the compute layer. The electable, read-only, and analytics nodes are [compute nodes](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-compute-node) that access data in the storage layer. To learn more, see [MongoDB Atlas Infinite: Architecture.](https://www.mongodb.com/docs/atlas/infinite/atlas-infinite-architecture.md#std-label-atlas-infinite-architecture)

## Convert a Replica Set to a Sharded Cluster

On Atlas Core clusters, you can convert a [replica set](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-replica-set) to a [sharded cluster.](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-sharded-cluster)

**Note:**

Atlas reboots all nodes in your [replica set](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-replica-set) when you convert it to a [sharded cluster.](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-sharded-cluster)

### Prerequisites

To convert your replica set to a sharded cluster:

- Your cluster must be an `M30+` cluster.

- You must have the [`Project Cluster Manager`](https://www.mongodb.com/docs/atlas/reference/user-roles.md#mongodb-authrole-Project-Cluster-Manager) or higher role.

**Important:**

Starting in MongoDB 8.3, [DDL operations](https://www.mongodb.com/docs/manual/reference/ddl-operations.md#std-label-ddl-operations) and [`applyOps`](https://www.mongodb.com/docs/manual/reference/command/applyOps.md#mongodb-dbcommand-dbcmd.applyOps) can only be run on a `mongos` for all sharded clusters. These operations may be temporarily unavailable while transitioning from a replica set to a sharded cluster.

### Procedure

1. In Atlas, go to the Clusters page for your project.

   If it's not already displayed, select the organization that contains your desired project from the  Organizations menu in the navigation bar.

   If it's not already displayed, select your desired project from the Projects menu in the navigation bar.

   In the sidebar, click Clusters under the Database heading.

   The [Clusters](https://cloud.mongodb.com/go?l=https%3A%2F%2Fcloud.mongodb.com%2Fv2%2F%3Cproject%3E%23%2Fclusters) page displays.

2. Enable sharding for the cluster.

   For the cluster you want to modify, click , then select Edit Configuration.

   Expand Additional Settings to modify your cluster configuration.

   Enable sharding in the Shard your cluster section by setting the toggle to On.

   **Important:**

   After you convert a replica set to a sharded cluster, you can't convert it again to a replica set.

   Atlas automatically selects 1 Shard from the drop-down menu. You can increase the number of shards in a later step after you restart your application clients.

   **Warning:**

   Queries using [`$unionWith`](https://www.mongodb.com/docs/manual/reference/operator/aggregation/unionWith.md#mongodb-pipeline-pipe.-unionWith) with [`$search`](https://www.mongodb.com/docs/search/query/aggregation-stages/search.md#mongodb-pipeline-pipe.-search) in the sub-pipeline might fail during an upgrade from a replica set to a sharded cluster running MongoDB v7.0 if the collection is not spread across multiple shards. To mitigate this, deploy more than one shard on your cluster and shard the collection such that multiple chunks are spread across multiple shards.

   Click Review Changes to review the changes to billing and click Apply Changes.

   It may take some time for Atlas to deploy the changes. Please wait until Atlas has converted your cluster before proceeding to the next step.

3. Restart all application clients and reconnect to the sharded cluster.

   If you don't restart the application clients, your data might be inconsistent after Atlas begins distributing data across shards.

   - If you are using a [DNS Seed List](https://www.mongodb.com/docs/manual/reference/connection-string-formats.md#std-label-connections-dns-seedlist) connection string, your application automatically connects to the [`mongos`](https://www.mongodb.com/docs/manual/reference/program/mongos.md#mongodb-binary-bin.mongos) for your sharded cluster after you restart your application.

   - If you are using a [standard connection string](https://www.mongodb.com/docs/manual/reference/connection-string-formats.md#std-label-connections-standard-connection-string-format), you must update your connection string to reflect your new cluster topology.

   - If you are using [private endpoints](https://www.mongodb.com/docs/atlas/security-private-endpoint.md#std-label-private-endpoint-overview) to connect to your Atlas cluster, your cluster experiences downtime during the conversion.

   To learn more, see [Connect to an Atlas Cluster.](https://www.mongodb.com/docs/atlas/connect-to-database-deployment.md#std-label-atlas-connect-to-deployment)

4. Increase the number of shards.

   For the cluster you want to modify, click , then select Edit Configuration.

   Expand Additional Settings to modify your cluster configuration.

   Select the number of shards from the drop-down menu.

   Click Review Changes to review the changes to billing and click Apply Changes.

   Sharding supports high throughput and large datasets, and you can increase the number of shards as data requirements grow.

5. Distribute data across the shards in your cluster.

   To shard the collection whose data you want to distribute, see [`sh.shardCollection()`](https://www.mongodb.com/docs/manual/reference/method/sh.shardCollection.md#mongodb-method-sh.shardCollection) for more information.

   WARNING: If you shard a collection that already has a MongoDB Search index, you might experience a brief period of incomplete search results while the index is building on a shard. Also, if you add a shard for an already sharded collection that contains a MongoDB Search index, your search queries against that collection might return incomplete results until the initial sync process completes on the added shards. To learn more, see [initial sync process.](https://www.mongodb.com/docs/search/performance/index-performance.md#std-label-troubleshoot-initial-sync)

6. Change any cluster-wide settings.

   If you want to make further changes to the [sharded cluster](https://www.mongodb.com/docs/manual/reference/glossary.md#std-term-sharded-cluster), see [Modify an Atlas Core Cluster](https://www.mongodb.com/docs/atlas/scale-cluster.md#std-label-scale-cluster) for more information on the cluster-wide settings that you can modify.

**Note:**

The resulting sharded cluster always uses dedicated config servers, even if Atlas-managed config server is enabled. If you need embedded config servers after converting, contact [MongoDB Support.](https://www.mongodb.com/docs/atlas/support.md#std-label-request-support)
