Docs Menu

Docs HomeMongoDB Atlas

Modify a Cluster

On this page

  • Atlas Configuration Options
  • Considerations
  • Required Access
  • Edit a Cluster
  • Modify the Cluster Type
  • Modify the Global Cluster Configuration
  • Modify the Cloud Provider & Region
  • Modify the Cluster Tier
  • Modify Additional Settings
  • Modify Cluster Details
  • Save Your Changes for Later
  • Review and Apply Your Changes
  • Convert a Replica Set to a Sharded Cluster

You can modify your cluster after initial configuration.

  • For a summary of available options, see Atlas Configuration Options.

  • For in-depth configuration steps, see Required Access and the options that follow.

For more information about the impact, cost, and backup policy of your cluster changes, see Considerations.

You can change the following options of your Atlas cluster:

Setting
Action
Limitations
Change the cluster type.
You can only move from a shared cluster to a dedicated cluster or a serverless instance.
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.

Select a different provider to change the cloud provider for your dedicated clusters.

If you created an Atlas cluster on AWS or created an Atlas cluster after November 2, 2020, your connection string doesn't change. You don't experience cluster downtime.

If you created an Atlas cluster on GCP or 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 to connect to the cluster again.

To learn more, see Do I have to update my connection string when migrating to a different cloud provider from a dedicated cluster to another?.

Adding or moving a node to a region without a primary node or without an existing secondary node requires each newly migrated replica set member to perform an initial sync.
Deploy or modify a multi-cloud, multi-region cluster.
None
Change the cluster tier.

If your cluster uses NVMe storage, Atlas must perform an initial sync.

File Copy Based Initial Sync is enabled for dedicated clusters with NVMe running on MongoDB 6.0+.

Change the storage options for the cluster tier.
Clusters using NVMe storage have a fixed size for each cluster tier.
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. Atlas enables storage auto-scaling by default.
None
Upgrade the major MongoDB version of the cluster.
You can't downgrade the MongoDB version.
Upgrade a replica set to a sharded cluster.

You can't reverse this upgrade.

Atlas allows Sharded Clusters for M30 or larger clusters.

Note

You can't convert a replica set to a sharded cluster when either of the following Atlas App Services features is enabled for the cluster:

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, Atlas uses the movePrimary command to move any unsharded databases in that shard to a remaining shard.

All sharded collections remain online and available during the shard removal process. However, read or write operations to unsharded collections during the movePrimary operation can result in unexpected behavior, including migration failure or data loss.

We recommend moving the primary shard for any databases containing unsharded collections before removing the shard.

For more information, see Remove Shards from an Existing Sharded Cluster.

Atlas allows Sharded Clusters for M30 or larger clusters.

Enable or disable backups for the cluster.
Atlas enables backups for M2 and M5 clusters automatically. You can't disable backup for clusters on those tiers.

Enable or disable the BI Connector for Atlas for this cluster.

The MongoDB Connector for Business Intelligence for Atlas (BI Connector) is only available for M10 and larger clusters.

The BI Connector is a powerful tool which provides users SQL-based access to their MongoDB databases. As a result, the BI Connector performs operations which may be CPU and memory intensive. Given the limited hardware resources on M10 and M20 cluster tiers, you may experience performance degradation of the cluster when enabling the BI Connector. If this occurs, upgrade to an M30 or larger cluster or disable the BI Connector.

None
Enable or disable using your own encryption keys with this cluster.
None

Click Apply Changes when complete.

Making changes to a cluster often requires migrating to new servers and storage volumes. The time required for an initial sync and resynchronizing data across storage volumes increases linearly with the amount of data in the cluster.

File Copy Based Initial Sync is enabled for dedicated clusters with NVMe running on MongoDB 6.0+.

The following migrations require an initial sync:

  • Upgrades from a free clusters or shared clusters (M0, M2, and M5 clusters) to a higher cluster tier.

  • Changes from general to NVMe storage volumes and from NVMe to general storage.

  • Upgrades or downgrades from one NVMe cluster tier to another, initiated either manually or via auto-scaling. NVMe 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, changes to the Cluster Class.

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 (i.e. replica set), Atlas migrates one node at a time, starting with the secondary nodes first and then the primary.

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 from the primary, adding to the operational load. Migrations can also affect performance if you set read preferences 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 may, in some situations, create indexes in your cluster as a safeguard.

As you change your 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 an M0 free cluster to an M2 or greater paid tier cluster starts billing for the cluster. See Manage Billing for complete documentation on Atlas billing.

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

As of MongoDB version 4.2, Legacy Backups are deprecated in favor of Cloud Backups. When you upgrade to version 4.2 or later, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade:

To modify a cluster, you must have Project Cluster Manager access or higher to the project.

If you have a shared cluster, you can change it to a dedicated cluster or a serverless instance.

To convert your shared cluster to a serverless instance, see Convert a Shared Cluster to a Serverless Instance.

To upgrade your M0, M2, or M5 cluster to an M10+ cluster, complete the following steps:

1
2
3
4

To learn more, see Modify the Cluster Tier.

Dedicated clusters have more configuration options than shared clusters.

Note

Considerations

  • You can't change a dedicated cluster to a shared cluster.

  • You can't change dedicated clusters to serverless instances

  • You can't change serverless instances to clusters.

For a full list of serverless instance limitations, see Serverless Instance Limits

Important

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

You can enable global writes for your cluster or modify existing global cluster configurations.

Tip

Note

Considerations

M0, M2, or M5 Tier Clusters
You can modify the cloud provider when you upgrade to an M10 or larger cluster.
M10 or larger Tier Clusters
You can select a different provider to change the cloud provider for your dedicated clusters.

Changing to a different provider could change the connection string to your new cluster if your old cluster was deployed on GCP or Azure before October 2020. Consider scheduling a time to update your applications with the new connection string to resume connectivity to the cluster. Atlas migrates data to the new cluster.

You can't modify the cloud provider or cloud provider region if you deployed search nodes on your Atlas cluster. Atlas supports search nodes only on single region AWS clusters.

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

  • To modify the cloud providers and regions applied to this cluster, follow the procedures on Electable Nodes for High Availability.

  • To add electable nodes to your cluster during a regional outage, follow the procedure on Reconfigure a Replica Set During a Regional Outage.

  • To upgrade from an Atlas free- or shared cluster, select from the available cloud providers.

  • 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 on your cluster.

    If you delete all existing search nodes on your cluster, there will be a brief 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. However, you won't experience any downtime while indexes are migrated and no stale data.

    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 Atlas 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 list available regions that Atlas supports for new deployments using the Atlas CLI, run the following command:

atlas clusters availableRegions list [options]

To learn more about the command syntax and parameters, see the Atlas CLI documentation for atlas clusters availableRegions list.

You can change the cluster tier, as well as the memory, storage, and IOPS (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, you can't modify the cluster tier to a tier that doesn't support cloud backup.

  • You can't downgrade an M10+ dedicated cluster to an M0 free cluster or M2/M5 shared cluster.

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

  • You change from an M0 free cluster or M2/M5 shared cluster to an M10 or larger cluster tier.

  • You change from an M0 free cluster to an M2/M5 shared cluster.

  • You change from an M2 shared cluster to an M5 shared cluster.

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

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 specification for each data-bearing server [1] in the cluster.

Warning

Upgrading from a tenant (free or shared) tier to a dedicated cluster tier:

  • deletes the current cluster

  • deletes any backup snapshots for that cluster

To keep your existing snapshots, download those snapshots.

From the Cluster Tier section, you can also:

For M10+ clusters, you can select a cluster tier appropriately sized for your analytics workload. To learn more, see Analytics Nodes for Workload Isolation.

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 specification, and cost of each search node on your cluster.

You can set the following options:

Important

Before you upgrade your cluster, refer to the current recommended best practices for major version upgrades.

  1. Select Additional Settings to view the currently configured MongoDB version for the cluster.

    Atlas always upgrades the cluster to the latest stable release of the specified version via a rolling process to maintain cluster availability.

    You cannot downgrade the cluster to an earlier MongoDB version.

    You can switch from using the Latest Release to using a specific release only if the latest MongoDB version is a major release.

  2. From the Select a version dropdown, select the new MongoDB version.

    Atlas supports the following upgrade paths:

    • MongoDB 4.0 -> MongoDB 4.2

    • MongoDB 4.2 -> MongoDB 4.4

    • MongoDB 4.4 -> MongoDB 5.0

    • MongoDB 5.0 -> MongoDB 6.0

    • MongoDB 6.0 -> MongoDB 7.0

    • MongoDB 7.0 -> Latest Release

    Note

    If you enabled backup for your cluster and want to upgrade to MongoDB 4.4 or later, you must enable Back Up Your Database Deployment if Legacy Backups are currently enabled.

Backups are automatically enabled for M2 and M5 shared clusters and can't be disabled.

To enable backups for an M10+ Atlas cluster, toggle Turn on Cloud Backup (M10 and up) to Yes. If enabled, Atlas takes snapshots of your databases at regular intervals and retains them according to your project's retention policy.

For detailed descriptions of the available backup options, see Configure Backup Options 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 database deployments.

Note

You can't convert a replica set to a sharded cluster when either of the following Atlas App Services features is enabled for the cluster:

To deploy your cluster as a sharded cluster, toggle Shard your cluster (M30 and up) to Yes.

Once the upgrade completes, you must restart all application clients and reconnect to your sharded cluster. If you don't restart the application clients, your data might be inconsistent once Atlas begins distributing data across shards.

  • If you are using a DNS Seed List connection string, your application automatically connects to the mongos for your sharded cluster.

  • If you are using a standard connection string, you must update your connection string to reflect your new cluster topology.

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

You can set the number of shards to deploy with the sharded cluster. Your cluster can have between 1 and 50 shards, inclusive.

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). 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, Atlas uses the movePrimary command to move any unsharded databases in that shard to a remaining shard.

All sharded collections remain online and available during the shard removal process. However, read or write operations to unsharded collections during the movePrimary operation can result in unexpected behavior, including migration failure or data loss.

We recommend moving the primary shard for any databases containing unsharded collections before removing the shard.

For more information, see Remove Shards from an Existing Sharded Cluster.

Don't create a sharded cluster with a single shard for production environments. Single-shard sharded clusters don't provide the same benefits as multi-shard configurations.

To enable BI Connector for Atlas for this cluster, toggle Enable Business Intelligence Connector (M10 and up) to Yes.

To enable Atlas Encryption at Rest for this cluster using your KMS, toggle Manage your own encryption keys (M10 and up) to Yes. To learn more, see Manage Your Own Encryption Keys.

Note

All changes to customer KMS require an initial sync.

Configure additional options for your cluster from this section.

For details on these options, see Configure Additional Options.

Add tags, view existing tags, and manage tags. To learn more, see Manage cluster Tags When You Modify an Existing Database Deployment.

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. Resource tags are not intended for private and sensitive data. To learn more, see Sensitive Information.

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

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

You can return to the form to:

  • Continue making changes.

  • Reset your changes made by selecting Reset to default configuration on the pop-up that appears.

  • Deploy your cluster 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.

  • 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 cluster.

If you are upgrading from an M0 free cluster, Atlas prompts you to enter payment information before applying your changes.

[1] For replica sets, the data-bearing servers are the servers hosting the replica set nodes. For sharded clusters, the data-bearing servers are the servers hosting the shards. For sharded clusters, Atlas also deploys servers for the config servers; these are charged at a rate separate from the cluster costs.

You can convert a replica set to a sharded cluster.

To convert your replica set to a sharded cluster:

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

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

  3. If the Database Deployments page is not already displayed, click Database in the sidebar.

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

  2. Expand Additional Settings to modify your cluster configuration.

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

    Note

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

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

  5. 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

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 connection string, your application automatically connects to the mongos for your sharded cluster after you restart your application.

  • If you are using a standard connection string, you must update your connection string to reflect your new cluster topology.

  • If you are using private endpoints to connect to your Atlas cluster, your cluster experiences downtime during the conversion.

To learn more, see Connect to a Database Deployment.

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

  2. Expand Additional Settings to modify your cluster configuration.

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

  4. 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

To shard the collection whose data you want to distribute, see sh.shardCollection() for more information.

Warning

If you shard a collection that already has an Atlas Search index, you might experience a brief period of query downtime when the collection begins to appear on a shard. Also, if you add a shard for an already sharded collection that contains an Atlas Search index, your search queries against that collection will fail until the initial sync process completes on the added shards. To learn more, see initial sync process.

6

If you want to make further changes to the sharded cluster, see Modify a Cluster for more information on the cluster-wide settings that you can modify.

←  Configure Additional SettingsConvert a Shared Cluster to a Serverless Instance →