1. Packages
  2. MongoDB Atlas
  3. API Docs
  4. Cluster
MongoDB Atlas v3.14.3 published on Monday, Apr 1, 2024 by Pulumi

mongodbatlas.Cluster

Explore with Pulumi AI

mongodbatlas logo
MongoDB Atlas v3.14.3 published on Monday, Apr 1, 2024 by Pulumi

    Example Usage

    Example AWS cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const cluster_test = new mongodbatlas.Cluster("cluster-test", {
        autoScalingDiskGbEnabled: true,
        cloudBackup: true,
        clusterType: "REPLICASET",
        mongoDbMajorVersion: "4.2",
        projectId: "<YOUR-PROJECT-ID>",
        providerInstanceSizeName: "M40",
        providerName: "AWS",
        replicationSpecs: [{
            numShards: 1,
            regionsConfigs: [{
                electableNodes: 3,
                priority: 7,
                readOnlyNodes: 0,
                regionName: "US_EAST_1",
            }],
        }],
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    cluster_test = mongodbatlas.Cluster("cluster-test",
        auto_scaling_disk_gb_enabled=True,
        cloud_backup=True,
        cluster_type="REPLICASET",
        mongo_db_major_version="4.2",
        project_id="<YOUR-PROJECT-ID>",
        provider_instance_size_name="M40",
        provider_name="AWS",
        replication_specs=[mongodbatlas.ClusterReplicationSpecArgs(
            num_shards=1,
            regions_configs=[mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                electable_nodes=3,
                priority=7,
                read_only_nodes=0,
                region_name="US_EAST_1",
            )],
        )])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "cluster-test", &mongodbatlas.ClusterArgs{
    			AutoScalingDiskGbEnabled: pulumi.Bool(true),
    			CloudBackup:              pulumi.Bool(true),
    			ClusterType:              pulumi.String("REPLICASET"),
    			MongoDbMajorVersion:      pulumi.String("4.2"),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderInstanceSizeName: pulumi.String("M40"),
    			ProviderName:             pulumi.String("AWS"),
    			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
    				&mongodbatlas.ClusterReplicationSpecArgs{
    					NumShards: pulumi.Int(1),
    					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(3),
    							Priority:       pulumi.Int(7),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("US_EAST_1"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_test = new Mongodbatlas.Cluster("cluster-test", new()
        {
            AutoScalingDiskGbEnabled = true,
            CloudBackup = true,
            ClusterType = "REPLICASET",
            MongoDbMajorVersion = "4.2",
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderInstanceSizeName = "M40",
            ProviderName = "AWS",
            ReplicationSpecs = new[]
            {
                new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
                {
                    NumShards = 1,
                    RegionsConfigs = new[]
                    {
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 3,
                            Priority = 7,
                            ReadOnlyNodes = 0,
                            RegionName = "US_EAST_1",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import com.pulumi.mongodbatlas.inputs.ClusterReplicationSpecArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var cluster_test = new Cluster("cluster-test", ClusterArgs.builder()        
                .autoScalingDiskGbEnabled(true)
                .cloudBackup(true)
                .clusterType("REPLICASET")
                .mongoDbMajorVersion("4.2")
                .projectId("<YOUR-PROJECT-ID>")
                .providerInstanceSizeName("M40")
                .providerName("AWS")
                .replicationSpecs(ClusterReplicationSpecArgs.builder()
                    .numShards(1)
                    .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                        .electableNodes(3)
                        .priority(7)
                        .readOnlyNodes(0)
                        .regionName("US_EAST_1")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      cluster-test:
        type: mongodbatlas:Cluster
        properties:
          autoScalingDiskGbEnabled: true
          cloudBackup: true
          clusterType: REPLICASET
          mongoDbMajorVersion: '4.2'
          projectId: <YOUR-PROJECT-ID>
          providerInstanceSizeName: M40
          # Provider Settings "block"
          providerName: AWS
          replicationSpecs:
            - numShards: 1
              regionsConfigs:
                - electableNodes: 3
                  priority: 7
                  readOnlyNodes: 0
                  regionName: US_EAST_1
    

    Example Azure cluster.

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const test = new mongodbatlas.Cluster("test", {
        autoScalingDiskGbEnabled: true,
        cloudBackup: true,
        clusterType: "REPLICASET",
        mongoDbMajorVersion: "4.2",
        projectId: "<YOUR-PROJECT-ID>",
        providerDiskTypeName: "P6",
        providerInstanceSizeName: "M30",
        providerName: "AZURE",
        replicationSpecs: [{
            numShards: 1,
            regionsConfigs: [{
                electableNodes: 3,
                priority: 7,
                readOnlyNodes: 0,
                regionName: "US_EAST",
            }],
        }],
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    test = mongodbatlas.Cluster("test",
        auto_scaling_disk_gb_enabled=True,
        cloud_backup=True,
        cluster_type="REPLICASET",
        mongo_db_major_version="4.2",
        project_id="<YOUR-PROJECT-ID>",
        provider_disk_type_name="P6",
        provider_instance_size_name="M30",
        provider_name="AZURE",
        replication_specs=[mongodbatlas.ClusterReplicationSpecArgs(
            num_shards=1,
            regions_configs=[mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                electable_nodes=3,
                priority=7,
                read_only_nodes=0,
                region_name="US_EAST",
            )],
        )])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "test", &mongodbatlas.ClusterArgs{
    			AutoScalingDiskGbEnabled: pulumi.Bool(true),
    			CloudBackup:              pulumi.Bool(true),
    			ClusterType:              pulumi.String("REPLICASET"),
    			MongoDbMajorVersion:      pulumi.String("4.2"),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderDiskTypeName:     pulumi.String("P6"),
    			ProviderInstanceSizeName: pulumi.String("M30"),
    			ProviderName:             pulumi.String("AZURE"),
    			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
    				&mongodbatlas.ClusterReplicationSpecArgs{
    					NumShards: pulumi.Int(1),
    					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(3),
    							Priority:       pulumi.Int(7),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("US_EAST"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var test = new Mongodbatlas.Cluster("test", new()
        {
            AutoScalingDiskGbEnabled = true,
            CloudBackup = true,
            ClusterType = "REPLICASET",
            MongoDbMajorVersion = "4.2",
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderDiskTypeName = "P6",
            ProviderInstanceSizeName = "M30",
            ProviderName = "AZURE",
            ReplicationSpecs = new[]
            {
                new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
                {
                    NumShards = 1,
                    RegionsConfigs = new[]
                    {
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 3,
                            Priority = 7,
                            ReadOnlyNodes = 0,
                            RegionName = "US_EAST",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import com.pulumi.mongodbatlas.inputs.ClusterReplicationSpecArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var test = new Cluster("test", ClusterArgs.builder()        
                .autoScalingDiskGbEnabled(true)
                .cloudBackup(true)
                .clusterType("REPLICASET")
                .mongoDbMajorVersion("4.2")
                .projectId("<YOUR-PROJECT-ID>")
                .providerDiskTypeName("P6")
                .providerInstanceSizeName("M30")
                .providerName("AZURE")
                .replicationSpecs(ClusterReplicationSpecArgs.builder()
                    .numShards(1)
                    .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                        .electableNodes(3)
                        .priority(7)
                        .readOnlyNodes(0)
                        .regionName("US_EAST")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      test:
        type: mongodbatlas:Cluster
        properties:
          autoScalingDiskGbEnabled: true
          cloudBackup: true
          clusterType: REPLICASET
          mongoDbMajorVersion: '4.2'
          projectId: <YOUR-PROJECT-ID>
          providerDiskTypeName: P6
          providerInstanceSizeName: M30
          # Provider Settings "block"
          providerName: AZURE
          replicationSpecs:
            - numShards: 1
              regionsConfigs:
                - electableNodes: 3
                  priority: 7
                  readOnlyNodes: 0
                  regionName: US_EAST
    

    Example GCP cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const test = new mongodbatlas.Cluster("test", {
        autoScalingDiskGbEnabled: true,
        cloudBackup: true,
        clusterType: "REPLICASET",
        mongoDbMajorVersion: "4.2",
        projectId: "<YOUR-PROJECT-ID>",
        providerInstanceSizeName: "M30",
        providerName: "GCP",
        replicationSpecs: [{
            numShards: 1,
            regionsConfigs: [{
                electableNodes: 3,
                priority: 7,
                readOnlyNodes: 0,
                regionName: "EASTERN_US",
            }],
        }],
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    test = mongodbatlas.Cluster("test",
        auto_scaling_disk_gb_enabled=True,
        cloud_backup=True,
        cluster_type="REPLICASET",
        mongo_db_major_version="4.2",
        project_id="<YOUR-PROJECT-ID>",
        provider_instance_size_name="M30",
        provider_name="GCP",
        replication_specs=[mongodbatlas.ClusterReplicationSpecArgs(
            num_shards=1,
            regions_configs=[mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                electable_nodes=3,
                priority=7,
                read_only_nodes=0,
                region_name="EASTERN_US",
            )],
        )])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "test", &mongodbatlas.ClusterArgs{
    			AutoScalingDiskGbEnabled: pulumi.Bool(true),
    			CloudBackup:              pulumi.Bool(true),
    			ClusterType:              pulumi.String("REPLICASET"),
    			MongoDbMajorVersion:      pulumi.String("4.2"),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderInstanceSizeName: pulumi.String("M30"),
    			ProviderName:             pulumi.String("GCP"),
    			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
    				&mongodbatlas.ClusterReplicationSpecArgs{
    					NumShards: pulumi.Int(1),
    					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(3),
    							Priority:       pulumi.Int(7),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("EASTERN_US"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var test = new Mongodbatlas.Cluster("test", new()
        {
            AutoScalingDiskGbEnabled = true,
            CloudBackup = true,
            ClusterType = "REPLICASET",
            MongoDbMajorVersion = "4.2",
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderInstanceSizeName = "M30",
            ProviderName = "GCP",
            ReplicationSpecs = new[]
            {
                new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
                {
                    NumShards = 1,
                    RegionsConfigs = new[]
                    {
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 3,
                            Priority = 7,
                            ReadOnlyNodes = 0,
                            RegionName = "EASTERN_US",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import com.pulumi.mongodbatlas.inputs.ClusterReplicationSpecArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var test = new Cluster("test", ClusterArgs.builder()        
                .autoScalingDiskGbEnabled(true)
                .cloudBackup(true)
                .clusterType("REPLICASET")
                .mongoDbMajorVersion("4.2")
                .projectId("<YOUR-PROJECT-ID>")
                .providerInstanceSizeName("M30")
                .providerName("GCP")
                .replicationSpecs(ClusterReplicationSpecArgs.builder()
                    .numShards(1)
                    .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                        .electableNodes(3)
                        .priority(7)
                        .readOnlyNodes(0)
                        .regionName("EASTERN_US")
                        .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      test:
        type: mongodbatlas:Cluster
        properties:
          autoScalingDiskGbEnabled: true
          cloudBackup: true
          clusterType: REPLICASET
          mongoDbMajorVersion: '4.2'
          projectId: <YOUR-PROJECT-ID>
          providerInstanceSizeName: M30
          # Provider Settings "block"
          providerName: GCP
          replicationSpecs:
            - numShards: 1
              regionsConfigs:
                - electableNodes: 3
                  priority: 7
                  readOnlyNodes: 0
                  regionName: EASTERN_US
    

    Example Multi Region cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const cluster_test = new mongodbatlas.Cluster("cluster-test", {
        cloudBackup: true,
        clusterType: "REPLICASET",
        numShards: 1,
        projectId: "<YOUR-PROJECT-ID>",
        providerInstanceSizeName: "M10",
        providerName: "AWS",
        replicationSpecs: [{
            numShards: 1,
            regionsConfigs: [
                {
                    electableNodes: 3,
                    priority: 7,
                    readOnlyNodes: 0,
                    regionName: "US_EAST_1",
                },
                {
                    electableNodes: 2,
                    priority: 6,
                    readOnlyNodes: 0,
                    regionName: "US_EAST_2",
                },
                {
                    electableNodes: 2,
                    priority: 5,
                    readOnlyNodes: 2,
                    regionName: "US_WEST_1",
                },
            ],
        }],
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    cluster_test = mongodbatlas.Cluster("cluster-test",
        cloud_backup=True,
        cluster_type="REPLICASET",
        num_shards=1,
        project_id="<YOUR-PROJECT-ID>",
        provider_instance_size_name="M10",
        provider_name="AWS",
        replication_specs=[mongodbatlas.ClusterReplicationSpecArgs(
            num_shards=1,
            regions_configs=[
                mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                    electable_nodes=3,
                    priority=7,
                    read_only_nodes=0,
                    region_name="US_EAST_1",
                ),
                mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                    electable_nodes=2,
                    priority=6,
                    read_only_nodes=0,
                    region_name="US_EAST_2",
                ),
                mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                    electable_nodes=2,
                    priority=5,
                    read_only_nodes=2,
                    region_name="US_WEST_1",
                ),
            ],
        )])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "cluster-test", &mongodbatlas.ClusterArgs{
    			CloudBackup:              pulumi.Bool(true),
    			ClusterType:              pulumi.String("REPLICASET"),
    			NumShards:                pulumi.Int(1),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderInstanceSizeName: pulumi.String("M10"),
    			ProviderName:             pulumi.String("AWS"),
    			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
    				&mongodbatlas.ClusterReplicationSpecArgs{
    					NumShards: pulumi.Int(1),
    					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(3),
    							Priority:       pulumi.Int(7),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("US_EAST_1"),
    						},
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(2),
    							Priority:       pulumi.Int(6),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("US_EAST_2"),
    						},
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(2),
    							Priority:       pulumi.Int(5),
    							ReadOnlyNodes:  pulumi.Int(2),
    							RegionName:     pulumi.String("US_WEST_1"),
    						},
    					},
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_test = new Mongodbatlas.Cluster("cluster-test", new()
        {
            CloudBackup = true,
            ClusterType = "REPLICASET",
            NumShards = 1,
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderInstanceSizeName = "M10",
            ProviderName = "AWS",
            ReplicationSpecs = new[]
            {
                new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
                {
                    NumShards = 1,
                    RegionsConfigs = new[]
                    {
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 3,
                            Priority = 7,
                            ReadOnlyNodes = 0,
                            RegionName = "US_EAST_1",
                        },
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 2,
                            Priority = 6,
                            ReadOnlyNodes = 0,
                            RegionName = "US_EAST_2",
                        },
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 2,
                            Priority = 5,
                            ReadOnlyNodes = 2,
                            RegionName = "US_WEST_1",
                        },
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import com.pulumi.mongodbatlas.inputs.ClusterReplicationSpecArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var cluster_test = new Cluster("cluster-test", ClusterArgs.builder()        
                .cloudBackup(true)
                .clusterType("REPLICASET")
                .numShards(1)
                .projectId("<YOUR-PROJECT-ID>")
                .providerInstanceSizeName("M10")
                .providerName("AWS")
                .replicationSpecs(ClusterReplicationSpecArgs.builder()
                    .numShards(1)
                    .regionsConfigs(                
                        ClusterReplicationSpecRegionsConfigArgs.builder()
                            .electableNodes(3)
                            .priority(7)
                            .readOnlyNodes(0)
                            .regionName("US_EAST_1")
                            .build(),
                        ClusterReplicationSpecRegionsConfigArgs.builder()
                            .electableNodes(2)
                            .priority(6)
                            .readOnlyNodes(0)
                            .regionName("US_EAST_2")
                            .build(),
                        ClusterReplicationSpecRegionsConfigArgs.builder()
                            .electableNodes(2)
                            .priority(5)
                            .readOnlyNodes(2)
                            .regionName("US_WEST_1")
                            .build())
                    .build())
                .build());
    
        }
    }
    
    resources:
      cluster-test:
        type: mongodbatlas:Cluster
        properties:
          cloudBackup: true
          clusterType: REPLICASET
          numShards: 1
          projectId: <YOUR-PROJECT-ID>
          providerInstanceSizeName: M10
          # Provider Settings "block"
          providerName: AWS
          replicationSpecs:
            - numShards: 1
              regionsConfigs:
                - electableNodes: 3
                  priority: 7
                  readOnlyNodes: 0
                  regionName: US_EAST_1
                - electableNodes: 2
                  priority: 6
                  readOnlyNodes: 0
                  regionName: US_EAST_2
                - electableNodes: 2
                  priority: 5
                  readOnlyNodes: 2
                  regionName: US_WEST_1
    

    Example Global cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const cluster_test = new mongodbatlas.Cluster("cluster-test", {
        cloudBackup: true,
        clusterType: "GEOSHARDED",
        numShards: 1,
        projectId: "<YOUR-PROJECT-ID>",
        providerInstanceSizeName: "M30",
        providerName: "AWS",
        replicationSpecs: [
            {
                numShards: 2,
                regionsConfigs: [{
                    electableNodes: 3,
                    priority: 7,
                    readOnlyNodes: 0,
                    regionName: "US_EAST_1",
                }],
                zoneName: "Zone 1",
            },
            {
                numShards: 2,
                regionsConfigs: [{
                    electableNodes: 3,
                    priority: 7,
                    readOnlyNodes: 0,
                    regionName: "EU_CENTRAL_1",
                }],
                zoneName: "Zone 2",
            },
        ],
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    cluster_test = mongodbatlas.Cluster("cluster-test",
        cloud_backup=True,
        cluster_type="GEOSHARDED",
        num_shards=1,
        project_id="<YOUR-PROJECT-ID>",
        provider_instance_size_name="M30",
        provider_name="AWS",
        replication_specs=[
            mongodbatlas.ClusterReplicationSpecArgs(
                num_shards=2,
                regions_configs=[mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                    electable_nodes=3,
                    priority=7,
                    read_only_nodes=0,
                    region_name="US_EAST_1",
                )],
                zone_name="Zone 1",
            ),
            mongodbatlas.ClusterReplicationSpecArgs(
                num_shards=2,
                regions_configs=[mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                    electable_nodes=3,
                    priority=7,
                    read_only_nodes=0,
                    region_name="EU_CENTRAL_1",
                )],
                zone_name="Zone 2",
            ),
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "cluster-test", &mongodbatlas.ClusterArgs{
    			CloudBackup:              pulumi.Bool(true),
    			ClusterType:              pulumi.String("GEOSHARDED"),
    			NumShards:                pulumi.Int(1),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderInstanceSizeName: pulumi.String("M30"),
    			ProviderName:             pulumi.String("AWS"),
    			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
    				&mongodbatlas.ClusterReplicationSpecArgs{
    					NumShards: pulumi.Int(2),
    					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(3),
    							Priority:       pulumi.Int(7),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("US_EAST_1"),
    						},
    					},
    					ZoneName: pulumi.String("Zone 1"),
    				},
    				&mongodbatlas.ClusterReplicationSpecArgs{
    					NumShards: pulumi.Int(2),
    					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    							ElectableNodes: pulumi.Int(3),
    							Priority:       pulumi.Int(7),
    							ReadOnlyNodes:  pulumi.Int(0),
    							RegionName:     pulumi.String("EU_CENTRAL_1"),
    						},
    					},
    					ZoneName: pulumi.String("Zone 2"),
    				},
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_test = new Mongodbatlas.Cluster("cluster-test", new()
        {
            CloudBackup = true,
            ClusterType = "GEOSHARDED",
            NumShards = 1,
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderInstanceSizeName = "M30",
            ProviderName = "AWS",
            ReplicationSpecs = new[]
            {
                new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
                {
                    NumShards = 2,
                    RegionsConfigs = new[]
                    {
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 3,
                            Priority = 7,
                            ReadOnlyNodes = 0,
                            RegionName = "US_EAST_1",
                        },
                    },
                    ZoneName = "Zone 1",
                },
                new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
                {
                    NumShards = 2,
                    RegionsConfigs = new[]
                    {
                        new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                        {
                            ElectableNodes = 3,
                            Priority = 7,
                            ReadOnlyNodes = 0,
                            RegionName = "EU_CENTRAL_1",
                        },
                    },
                    ZoneName = "Zone 2",
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import com.pulumi.mongodbatlas.inputs.ClusterReplicationSpecArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var cluster_test = new Cluster("cluster-test", ClusterArgs.builder()        
                .cloudBackup(true)
                .clusterType("GEOSHARDED")
                .numShards(1)
                .projectId("<YOUR-PROJECT-ID>")
                .providerInstanceSizeName("M30")
                .providerName("AWS")
                .replicationSpecs(            
                    ClusterReplicationSpecArgs.builder()
                        .numShards(2)
                        .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                            .electableNodes(3)
                            .priority(7)
                            .readOnlyNodes(0)
                            .regionName("US_EAST_1")
                            .build())
                        .zoneName("Zone 1")
                        .build(),
                    ClusterReplicationSpecArgs.builder()
                        .numShards(2)
                        .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                            .electableNodes(3)
                            .priority(7)
                            .readOnlyNodes(0)
                            .regionName("EU_CENTRAL_1")
                            .build())
                        .zoneName("Zone 2")
                        .build())
                .build());
    
        }
    }
    
    resources:
      cluster-test:
        type: mongodbatlas:Cluster
        properties:
          cloudBackup: true
          clusterType: GEOSHARDED
          numShards: 1
          projectId: <YOUR-PROJECT-ID>
          providerInstanceSizeName: M30
          # Provider Settings "block"
          providerName: AWS
          replicationSpecs:
            - numShards: 2
              regionsConfigs:
                - electableNodes: 3
                  priority: 7
                  readOnlyNodes: 0
                  regionName: US_EAST_1
              zoneName: Zone 1
            - numShards: 2
              regionsConfigs:
                - electableNodes: 3
                  priority: 7
                  readOnlyNodes: 0
                  regionName: EU_CENTRAL_1
              zoneName: Zone 2
    

    Example AWS Shared Tier (M2/M5) cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const cluster_test = new mongodbatlas.Cluster("cluster-test", {
        backingProviderName: "AWS",
        projectId: "<YOUR-PROJECT-ID>",
        providerInstanceSizeName: "M2",
        providerName: "TENANT",
        providerRegionName: "US_EAST_1",
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    cluster_test = mongodbatlas.Cluster("cluster-test",
        backing_provider_name="AWS",
        project_id="<YOUR-PROJECT-ID>",
        provider_instance_size_name="M2",
        provider_name="TENANT",
        provider_region_name="US_EAST_1")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "cluster-test", &mongodbatlas.ClusterArgs{
    			BackingProviderName:      pulumi.String("AWS"),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderInstanceSizeName: pulumi.String("M2"),
    			ProviderName:             pulumi.String("TENANT"),
    			ProviderRegionName:       pulumi.String("US_EAST_1"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_test = new Mongodbatlas.Cluster("cluster-test", new()
        {
            BackingProviderName = "AWS",
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderInstanceSizeName = "M2",
            ProviderName = "TENANT",
            ProviderRegionName = "US_EAST_1",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var cluster_test = new Cluster("cluster-test", ClusterArgs.builder()        
                .backingProviderName("AWS")
                .projectId("<YOUR-PROJECT-ID>")
                .providerInstanceSizeName("M2")
                .providerName("TENANT")
                .providerRegionName("US_EAST_1")
                .build());
    
        }
    }
    
    resources:
      cluster-test:
        type: mongodbatlas:Cluster
        properties:
          backingProviderName: AWS
          projectId: <YOUR-PROJECT-ID>
          providerInstanceSizeName: M2
          # Provider Settings "block"
          providerName: TENANT
          providerRegionName: US_EAST_1
    

    Example AWS Free Tier cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as mongodbatlas from "@pulumi/mongodbatlas";
    
    const cluster_test = new mongodbatlas.Cluster("cluster-test", {
        backingProviderName: "AWS",
        projectId: "<YOUR-PROJECT-ID>",
        providerInstanceSizeName: "M0",
        providerName: "TENANT",
        providerRegionName: "US_EAST_1",
    });
    
    import pulumi
    import pulumi_mongodbatlas as mongodbatlas
    
    cluster_test = mongodbatlas.Cluster("cluster-test",
        backing_provider_name="AWS",
        project_id="<YOUR-PROJECT-ID>",
        provider_instance_size_name="M0",
        provider_name="TENANT",
        provider_region_name="US_EAST_1")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-mongodbatlas/sdk/v3/go/mongodbatlas"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := mongodbatlas.NewCluster(ctx, "cluster-test", &mongodbatlas.ClusterArgs{
    			BackingProviderName:      pulumi.String("AWS"),
    			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
    			ProviderInstanceSizeName: pulumi.String("M0"),
    			ProviderName:             pulumi.String("TENANT"),
    			ProviderRegionName:       pulumi.String("US_EAST_1"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Mongodbatlas = Pulumi.Mongodbatlas;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster_test = new Mongodbatlas.Cluster("cluster-test", new()
        {
            BackingProviderName = "AWS",
            ProjectId = "<YOUR-PROJECT-ID>",
            ProviderInstanceSizeName = "M0",
            ProviderName = "TENANT",
            ProviderRegionName = "US_EAST_1",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.mongodbatlas.Cluster;
    import com.pulumi.mongodbatlas.ClusterArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var cluster_test = new Cluster("cluster-test", ClusterArgs.builder()        
                .backingProviderName("AWS")
                .projectId("<YOUR-PROJECT-ID>")
                .providerInstanceSizeName("M0")
                .providerName("TENANT")
                .providerRegionName("US_EAST_1")
                .build());
    
        }
    }
    
    resources:
      cluster-test:
        type: mongodbatlas:Cluster
        properties:
          backingProviderName: AWS
          projectId: <YOUR-PROJECT-ID>
          providerInstanceSizeName: M0
          # Provider Settings "block"
          providerName: TENANT
          providerRegionName: US_EAST_1
    

    Example - Return a Connection String

    Standard

    import * as pulumi from "@pulumi/pulumi";
    
    export const standard = mongodbatlas_cluster["cluster-test"].connection_strings[0].standard;
    
    import pulumi
    
    pulumi.export("standard", mongodbatlas_cluster["cluster-test"]["connection_strings"][0]["standard"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ctx.Export("standard", mongodbatlas_cluster.ClusterTest.Connection_strings[0].Standard)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
        return new Dictionary<string, object?>
        {
            ["standard"] = mongodbatlas_cluster.Cluster_test.Connection_strings[0].Standard,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            ctx.export("standard", mongodbatlas_cluster.cluster-test().connection_strings()[0].standard());
        }
    }
    
    outputs:
      standard: ${mongodbatlas_cluster"cluster-test"[%!s(MISSING)].connection_strings[0].standard}
    

    Standard srv

    import * as pulumi from "@pulumi/pulumi";
    
    export const standardSrv = mongodbatlas_cluster["cluster-test"].connection_strings[0].standard_srv;
    
    import pulumi
    
    pulumi.export("standardSrv", mongodbatlas_cluster["cluster-test"]["connection_strings"][0]["standard_srv"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ctx.Export("standardSrv", mongodbatlas_cluster.ClusterTest.Connection_strings[0].Standard_srv)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
        return new Dictionary<string, object?>
        {
            ["standardSrv"] = mongodbatlas_cluster.Cluster_test.Connection_strings[0].Standard_srv,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            ctx.export("standardSrv", mongodbatlas_cluster.cluster-test().connection_strings()[0].standard_srv());
        }
    }
    
    outputs:
      standardSrv: ${mongodbatlas_cluster"cluster-test"[%!s(MISSING)].connection_strings[0].standard_srv}
    

    Private with Network peering and Custom DNS AWS enabled

    import * as pulumi from "@pulumi/pulumi";
    
    export = async () => {
        // Example return string: private = "mongodb://cluster-atlas-shard-00-00-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-01-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-02-pri.ygo1m.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-12diht-shard-0"
        const private = "mongodb+srv://cluster-atlas-pri.ygo1m.mongodb.net";
        return {
            "private": mongodbatlas_cluster["cluster-test"].connection_strings[0]["private"],
        };
    }
    
    import pulumi
    
    pulumi.export("private", mongodbatlas_cluster["cluster-test"]["connection_strings"][0]["private"])
    # Example return string: private = "mongodb://cluster-atlas-shard-00-00-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-01-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-02-pri.ygo1m.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-12diht-shard-0"
    private = "mongodb+srv://cluster-atlas-pri.ygo1m.mongodb.net"
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ctx.Export("private", mongodbatlas_cluster.ClusterTest.Connection_strings[0].Private)
    		// Example return string: private = "mongodb://cluster-atlas-shard-00-00-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-01-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-02-pri.ygo1m.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-12diht-shard-0"
    		_ := "mongodb+srv://cluster-atlas-pri.ygo1m.mongodb.net"
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
        // Example return string: private = "mongodb://cluster-atlas-shard-00-00-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-01-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-02-pri.ygo1m.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-12diht-shard-0"
        var @private = "mongodb+srv://cluster-atlas-pri.ygo1m.mongodb.net";
    
        return new Dictionary<string, object?>
        {
            ["private"] = mongodbatlas_cluster.Cluster_test.Connection_strings[0].Private,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            ctx.export("private", mongodbatlas_cluster.cluster-test().connection_strings()[0].private());
            // Example return string: private = "mongodb://cluster-atlas-shard-00-00-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-01-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-02-pri.ygo1m.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-12diht-shard-0"
            final var private = "mongodb+srv://cluster-atlas-pri.ygo1m.mongodb.net";
    
        }
    }
    
    variables:
      # Example return string: private = "mongodb://cluster-atlas-shard-00-00-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-01-pri.ygo1m.mongodb.net:27017,cluster-atlas-shard-00-02-pri.ygo1m.mongodb.net:27017/?ssl=true&authSource=admin&replicaSet=atlas-12diht-shard-0"
      private: mongodb+srv://cluster-atlas-pri.ygo1m.mongodb.net
    outputs:
      private: ${mongodbatlas_cluster"cluster-test"[%!s(MISSING)].connection_strings[0].private}
    

    Private srv with Network peering and Custom DNS AWS enabled

    import * as pulumi from "@pulumi/pulumi";
    
    export const privateSrv = mongodbatlas_cluster["cluster-test"].connection_strings[0].private_srv;
    
    import pulumi
    
    pulumi.export("privateSrv", mongodbatlas_cluster["cluster-test"]["connection_strings"][0]["private_srv"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		ctx.Export("privateSrv", mongodbatlas_cluster.ClusterTest.Connection_strings[0].Private_srv)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    
    return await Deployment.RunAsync(() => 
    {
        return new Dictionary<string, object?>
        {
            ["privateSrv"] = mongodbatlas_cluster.Cluster_test.Connection_strings[0].Private_srv,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            ctx.export("privateSrv", mongodbatlas_cluster.cluster-test().connection_strings()[0].private_srv());
        }
    }
    
    outputs:
      privateSrv: ${mongodbatlas_cluster"cluster-test"[%!s(MISSING)].connection_strings[0].private_srv}
    

    By endpoint_service_id

    Import

    Clusters can be imported using project ID and cluster name, in the format PROJECTID-CLUSTERNAME, e.g.

    $ pulumi import mongodbatlas:index/cluster:Cluster my_cluster 1112222b3bf99403840e8934-Cluster0
    

    See detailed information for arguments and attributes: MongoDB API Clusters

    Create Cluster Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new Cluster(name: string, args: ClusterArgs, opts?: CustomResourceOptions);
    @overload
    def Cluster(resource_name: str,
                args: ClusterArgs,
                opts: Optional[ResourceOptions] = None)
    
    @overload
    def Cluster(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                project_id: Optional[str] = None,
                provider_name: Optional[str] = None,
                provider_instance_size_name: Optional[str] = None,
                cloud_backup: Optional[bool] = None,
                version_release_system: Optional[str] = None,
                pit_enabled: Optional[bool] = None,
                backup_enabled: Optional[bool] = None,
                bi_connector_config: Optional[ClusterBiConnectorConfigArgs] = None,
                accept_data_risks_and_force_replica_set_reconfig: Optional[str] = None,
                cluster_type: Optional[str] = None,
                disk_size_gb: Optional[float] = None,
                encryption_at_rest_provider: Optional[str] = None,
                labels: Optional[Sequence[ClusterLabelArgs]] = None,
                mongo_db_major_version: Optional[str] = None,
                name: Optional[str] = None,
                num_shards: Optional[int] = None,
                paused: Optional[bool] = None,
                backing_provider_name: Optional[str] = None,
                provider_auto_scaling_compute_max_instance_size: Optional[str] = None,
                auto_scaling_disk_gb_enabled: Optional[bool] = None,
                provider_auto_scaling_compute_min_instance_size: Optional[str] = None,
                provider_disk_iops: Optional[int] = None,
                provider_disk_type_name: Optional[str] = None,
                provider_encrypt_ebs_volume: Optional[bool] = None,
                auto_scaling_compute_enabled: Optional[bool] = None,
                advanced_configuration: Optional[ClusterAdvancedConfigurationArgs] = None,
                provider_region_name: Optional[str] = None,
                provider_volume_type: Optional[str] = None,
                replication_factor: Optional[int] = None,
                replication_specs: Optional[Sequence[ClusterReplicationSpecArgs]] = None,
                retain_backups_enabled: Optional[bool] = None,
                tags: Optional[Sequence[ClusterTagArgs]] = None,
                termination_protection_enabled: Optional[bool] = None,
                auto_scaling_compute_scale_down_enabled: Optional[bool] = None)
    func NewCluster(ctx *Context, name string, args ClusterArgs, opts ...ResourceOption) (*Cluster, error)
    public Cluster(string name, ClusterArgs args, CustomResourceOptions? opts = null)
    public Cluster(String name, ClusterArgs args)
    public Cluster(String name, ClusterArgs args, CustomResourceOptions options)
    
    type: mongodbatlas:Cluster
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ClusterArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Example

    The following reference example uses placeholder values for all input properties.

    var clusterResource = new Mongodbatlas.Cluster("clusterResource", new()
    {
        ProjectId = "string",
        ProviderName = "string",
        ProviderInstanceSizeName = "string",
        CloudBackup = false,
        VersionReleaseSystem = "string",
        PitEnabled = false,
        BackupEnabled = false,
        BiConnectorConfig = new Mongodbatlas.Inputs.ClusterBiConnectorConfigArgs
        {
            Enabled = false,
            ReadPreference = "string",
        },
        AcceptDataRisksAndForceReplicaSetReconfig = "string",
        ClusterType = "string",
        DiskSizeGb = 0,
        EncryptionAtRestProvider = "string",
        MongoDbMajorVersion = "string",
        Name = "string",
        NumShards = 0,
        Paused = false,
        BackingProviderName = "string",
        ProviderAutoScalingComputeMaxInstanceSize = "string",
        AutoScalingDiskGbEnabled = false,
        ProviderAutoScalingComputeMinInstanceSize = "string",
        ProviderDiskIops = 0,
        ProviderDiskTypeName = "string",
        AutoScalingComputeEnabled = false,
        AdvancedConfiguration = new Mongodbatlas.Inputs.ClusterAdvancedConfigurationArgs
        {
            DefaultReadConcern = "string",
            DefaultWriteConcern = "string",
            FailIndexKeyTooLong = false,
            JavascriptEnabled = false,
            MinimumEnabledTlsProtocol = "string",
            NoTableScan = false,
            OplogMinRetentionHours = 0,
            OplogSizeMb = 0,
            SampleRefreshIntervalBiConnector = 0,
            SampleSizeBiConnector = 0,
            TransactionLifetimeLimitSeconds = 0,
        },
        ProviderRegionName = "string",
        ProviderVolumeType = "string",
        ReplicationFactor = 0,
        ReplicationSpecs = new[]
        {
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                NumShards = 0,
                Id = "string",
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "string",
                        AnalyticsNodes = 0,
                        ElectableNodes = 0,
                        Priority = 0,
                        ReadOnlyNodes = 0,
                    },
                },
                ZoneName = "string",
            },
        },
        RetainBackupsEnabled = false,
        Tags = new[]
        {
            new Mongodbatlas.Inputs.ClusterTagArgs
            {
                Key = "string",
                Value = "string",
            },
        },
        TerminationProtectionEnabled = false,
        AutoScalingComputeScaleDownEnabled = false,
    });
    
    example, err := mongodbatlas.NewCluster(ctx, "clusterResource", &mongodbatlas.ClusterArgs{
    	ProjectId:                pulumi.String("string"),
    	ProviderName:             pulumi.String("string"),
    	ProviderInstanceSizeName: pulumi.String("string"),
    	CloudBackup:              pulumi.Bool(false),
    	VersionReleaseSystem:     pulumi.String("string"),
    	PitEnabled:               pulumi.Bool(false),
    	BackupEnabled:            pulumi.Bool(false),
    	BiConnectorConfig: &mongodbatlas.ClusterBiConnectorConfigArgs{
    		Enabled:        pulumi.Bool(false),
    		ReadPreference: pulumi.String("string"),
    	},
    	AcceptDataRisksAndForceReplicaSetReconfig: pulumi.String("string"),
    	ClusterType:              pulumi.String("string"),
    	DiskSizeGb:               pulumi.Float64(0),
    	EncryptionAtRestProvider: pulumi.String("string"),
    	MongoDbMajorVersion:      pulumi.String("string"),
    	Name:                     pulumi.String("string"),
    	NumShards:                pulumi.Int(0),
    	Paused:                   pulumi.Bool(false),
    	BackingProviderName:      pulumi.String("string"),
    	ProviderAutoScalingComputeMaxInstanceSize: pulumi.String("string"),
    	AutoScalingDiskGbEnabled:                  pulumi.Bool(false),
    	ProviderAutoScalingComputeMinInstanceSize: pulumi.String("string"),
    	ProviderDiskIops:                          pulumi.Int(0),
    	ProviderDiskTypeName:                      pulumi.String("string"),
    	AutoScalingComputeEnabled:                 pulumi.Bool(false),
    	AdvancedConfiguration: &mongodbatlas.ClusterAdvancedConfigurationArgs{
    		DefaultReadConcern:               pulumi.String("string"),
    		DefaultWriteConcern:              pulumi.String("string"),
    		FailIndexKeyTooLong:              pulumi.Bool(false),
    		JavascriptEnabled:                pulumi.Bool(false),
    		MinimumEnabledTlsProtocol:        pulumi.String("string"),
    		NoTableScan:                      pulumi.Bool(false),
    		OplogMinRetentionHours:           pulumi.Int(0),
    		OplogSizeMb:                      pulumi.Int(0),
    		SampleRefreshIntervalBiConnector: pulumi.Int(0),
    		SampleSizeBiConnector:            pulumi.Int(0),
    		TransactionLifetimeLimitSeconds:  pulumi.Int(0),
    	},
    	ProviderRegionName: pulumi.String("string"),
    	ProviderVolumeType: pulumi.String("string"),
    	ReplicationFactor:  pulumi.Int(0),
    	ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
    		&mongodbatlas.ClusterReplicationSpecArgs{
    			NumShards: pulumi.Int(0),
    			Id:        pulumi.String("string"),
    			RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
    				&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
    					RegionName:     pulumi.String("string"),
    					AnalyticsNodes: pulumi.Int(0),
    					ElectableNodes: pulumi.Int(0),
    					Priority:       pulumi.Int(0),
    					ReadOnlyNodes:  pulumi.Int(0),
    				},
    			},
    			ZoneName: pulumi.String("string"),
    		},
    	},
    	RetainBackupsEnabled: pulumi.Bool(false),
    	Tags: mongodbatlas.ClusterTagArray{
    		&mongodbatlas.ClusterTagArgs{
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	TerminationProtectionEnabled:       pulumi.Bool(false),
    	AutoScalingComputeScaleDownEnabled: pulumi.Bool(false),
    })
    
    var clusterResource = new Cluster("clusterResource", ClusterArgs.builder()        
        .projectId("string")
        .providerName("string")
        .providerInstanceSizeName("string")
        .cloudBackup(false)
        .versionReleaseSystem("string")
        .pitEnabled(false)
        .backupEnabled(false)
        .biConnectorConfig(ClusterBiConnectorConfigArgs.builder()
            .enabled(false)
            .readPreference("string")
            .build())
        .acceptDataRisksAndForceReplicaSetReconfig("string")
        .clusterType("string")
        .diskSizeGb(0)
        .encryptionAtRestProvider("string")
        .mongoDbMajorVersion("string")
        .name("string")
        .numShards(0)
        .paused(false)
        .backingProviderName("string")
        .providerAutoScalingComputeMaxInstanceSize("string")
        .autoScalingDiskGbEnabled(false)
        .providerAutoScalingComputeMinInstanceSize("string")
        .providerDiskIops(0)
        .providerDiskTypeName("string")
        .autoScalingComputeEnabled(false)
        .advancedConfiguration(ClusterAdvancedConfigurationArgs.builder()
            .defaultReadConcern("string")
            .defaultWriteConcern("string")
            .failIndexKeyTooLong(false)
            .javascriptEnabled(false)
            .minimumEnabledTlsProtocol("string")
            .noTableScan(false)
            .oplogMinRetentionHours(0)
            .oplogSizeMb(0)
            .sampleRefreshIntervalBiConnector(0)
            .sampleSizeBiConnector(0)
            .transactionLifetimeLimitSeconds(0)
            .build())
        .providerRegionName("string")
        .providerVolumeType("string")
        .replicationFactor(0)
        .replicationSpecs(ClusterReplicationSpecArgs.builder()
            .numShards(0)
            .id("string")
            .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                .regionName("string")
                .analyticsNodes(0)
                .electableNodes(0)
                .priority(0)
                .readOnlyNodes(0)
                .build())
            .zoneName("string")
            .build())
        .retainBackupsEnabled(false)
        .tags(ClusterTagArgs.builder()
            .key("string")
            .value("string")
            .build())
        .terminationProtectionEnabled(false)
        .autoScalingComputeScaleDownEnabled(false)
        .build());
    
    cluster_resource = mongodbatlas.Cluster("clusterResource",
        project_id="string",
        provider_name="string",
        provider_instance_size_name="string",
        cloud_backup=False,
        version_release_system="string",
        pit_enabled=False,
        backup_enabled=False,
        bi_connector_config=mongodbatlas.ClusterBiConnectorConfigArgs(
            enabled=False,
            read_preference="string",
        ),
        accept_data_risks_and_force_replica_set_reconfig="string",
        cluster_type="string",
        disk_size_gb=0,
        encryption_at_rest_provider="string",
        mongo_db_major_version="string",
        name="string",
        num_shards=0,
        paused=False,
        backing_provider_name="string",
        provider_auto_scaling_compute_max_instance_size="string",
        auto_scaling_disk_gb_enabled=False,
        provider_auto_scaling_compute_min_instance_size="string",
        provider_disk_iops=0,
        provider_disk_type_name="string",
        auto_scaling_compute_enabled=False,
        advanced_configuration=mongodbatlas.ClusterAdvancedConfigurationArgs(
            default_read_concern="string",
            default_write_concern="string",
            fail_index_key_too_long=False,
            javascript_enabled=False,
            minimum_enabled_tls_protocol="string",
            no_table_scan=False,
            oplog_min_retention_hours=0,
            oplog_size_mb=0,
            sample_refresh_interval_bi_connector=0,
            sample_size_bi_connector=0,
            transaction_lifetime_limit_seconds=0,
        ),
        provider_region_name="string",
        provider_volume_type="string",
        replication_factor=0,
        replication_specs=[mongodbatlas.ClusterReplicationSpecArgs(
            num_shards=0,
            id="string",
            regions_configs=[mongodbatlas.ClusterReplicationSpecRegionsConfigArgs(
                region_name="string",
                analytics_nodes=0,
                electable_nodes=0,
                priority=0,
                read_only_nodes=0,
            )],
            zone_name="string",
        )],
        retain_backups_enabled=False,
        tags=[mongodbatlas.ClusterTagArgs(
            key="string",
            value="string",
        )],
        termination_protection_enabled=False,
        auto_scaling_compute_scale_down_enabled=False)
    
    const clusterResource = new mongodbatlas.Cluster("clusterResource", {
        projectId: "string",
        providerName: "string",
        providerInstanceSizeName: "string",
        cloudBackup: false,
        versionReleaseSystem: "string",
        pitEnabled: false,
        backupEnabled: false,
        biConnectorConfig: {
            enabled: false,
            readPreference: "string",
        },
        acceptDataRisksAndForceReplicaSetReconfig: "string",
        clusterType: "string",
        diskSizeGb: 0,
        encryptionAtRestProvider: "string",
        mongoDbMajorVersion: "string",
        name: "string",
        numShards: 0,
        paused: false,
        backingProviderName: "string",
        providerAutoScalingComputeMaxInstanceSize: "string",
        autoScalingDiskGbEnabled: false,
        providerAutoScalingComputeMinInstanceSize: "string",
        providerDiskIops: 0,
        providerDiskTypeName: "string",
        autoScalingComputeEnabled: false,
        advancedConfiguration: {
            defaultReadConcern: "string",
            defaultWriteConcern: "string",
            failIndexKeyTooLong: false,
            javascriptEnabled: false,
            minimumEnabledTlsProtocol: "string",
            noTableScan: false,
            oplogMinRetentionHours: 0,
            oplogSizeMb: 0,
            sampleRefreshIntervalBiConnector: 0,
            sampleSizeBiConnector: 0,
            transactionLifetimeLimitSeconds: 0,
        },
        providerRegionName: "string",
        providerVolumeType: "string",
        replicationFactor: 0,
        replicationSpecs: [{
            numShards: 0,
            id: "string",
            regionsConfigs: [{
                regionName: "string",
                analyticsNodes: 0,
                electableNodes: 0,
                priority: 0,
                readOnlyNodes: 0,
            }],
            zoneName: "string",
        }],
        retainBackupsEnabled: false,
        tags: [{
            key: "string",
            value: "string",
        }],
        terminationProtectionEnabled: false,
        autoScalingComputeScaleDownEnabled: false,
    });
    
    type: mongodbatlas:Cluster
    properties:
        acceptDataRisksAndForceReplicaSetReconfig: string
        advancedConfiguration:
            defaultReadConcern: string
            defaultWriteConcern: string
            failIndexKeyTooLong: false
            javascriptEnabled: false
            minimumEnabledTlsProtocol: string
            noTableScan: false
            oplogMinRetentionHours: 0
            oplogSizeMb: 0
            sampleRefreshIntervalBiConnector: 0
            sampleSizeBiConnector: 0
            transactionLifetimeLimitSeconds: 0
        autoScalingComputeEnabled: false
        autoScalingComputeScaleDownEnabled: false
        autoScalingDiskGbEnabled: false
        backingProviderName: string
        backupEnabled: false
        biConnectorConfig:
            enabled: false
            readPreference: string
        cloudBackup: false
        clusterType: string
        diskSizeGb: 0
        encryptionAtRestProvider: string
        mongoDbMajorVersion: string
        name: string
        numShards: 0
        paused: false
        pitEnabled: false
        projectId: string
        providerAutoScalingComputeMaxInstanceSize: string
        providerAutoScalingComputeMinInstanceSize: string
        providerDiskIops: 0
        providerDiskTypeName: string
        providerInstanceSizeName: string
        providerName: string
        providerRegionName: string
        providerVolumeType: string
        replicationFactor: 0
        replicationSpecs:
            - id: string
              numShards: 0
              regionsConfigs:
                - analyticsNodes: 0
                  electableNodes: 0
                  priority: 0
                  readOnlyNodes: 0
                  regionName: string
              zoneName: string
        retainBackupsEnabled: false
        tags:
            - key: string
              value: string
        terminationProtectionEnabled: false
        versionReleaseSystem: string
    

    Cluster Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Cluster resource accepts the following input properties:

    ProjectId string
    The unique ID for the project to create the database user.
    ProviderInstanceSizeName string
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    ProviderName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    AcceptDataRisksAndForceReplicaSetReconfig string
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    AdvancedConfiguration ClusterAdvancedConfiguration
    AutoScalingComputeEnabled bool
    AutoScalingComputeScaleDownEnabled bool
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    AutoScalingDiskGbEnabled bool
    BackingProviderName string

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    BackupEnabled bool
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    BiConnectorConfig ClusterBiConnectorConfig
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    CloudBackup bool
    ClusterType string

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    DiskSizeGb double
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    EncryptionAtRestProvider string
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    Labels List<ClusterLabel>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    MongoDbMajorVersion string
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    Name string
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    NumShards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    Paused bool
    PitEnabled bool
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    ProviderAutoScalingComputeMaxInstanceSize string
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    ProviderAutoScalingComputeMinInstanceSize string
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    ProviderDiskIops int
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    ProviderDiskTypeName string
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    ProviderEncryptEbsVolume bool
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    ProviderRegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    ProviderVolumeType string

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    ReplicationFactor int
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    ReplicationSpecs List<ClusterReplicationSpec>
    Configuration for cluster regions. See Replication Spec below for more details.
    RetainBackupsEnabled bool
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    Tags List<ClusterTag>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    TerminationProtectionEnabled bool
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    VersionReleaseSystem string
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    ProjectId string
    The unique ID for the project to create the database user.
    ProviderInstanceSizeName string
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    ProviderName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    AcceptDataRisksAndForceReplicaSetReconfig string
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    AdvancedConfiguration ClusterAdvancedConfigurationArgs
    AutoScalingComputeEnabled bool
    AutoScalingComputeScaleDownEnabled bool
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    AutoScalingDiskGbEnabled bool
    BackingProviderName string

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    BackupEnabled bool
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    BiConnectorConfig ClusterBiConnectorConfigArgs
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    CloudBackup bool
    ClusterType string

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    DiskSizeGb float64
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    EncryptionAtRestProvider string
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    Labels []ClusterLabelArgs
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    MongoDbMajorVersion string
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    Name string
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    NumShards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    Paused bool
    PitEnabled bool
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    ProviderAutoScalingComputeMaxInstanceSize string
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    ProviderAutoScalingComputeMinInstanceSize string
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    ProviderDiskIops int
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    ProviderDiskTypeName string
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    ProviderEncryptEbsVolume bool
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    ProviderRegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    ProviderVolumeType string

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    ReplicationFactor int
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    ReplicationSpecs []ClusterReplicationSpecArgs
    Configuration for cluster regions. See Replication Spec below for more details.
    RetainBackupsEnabled bool
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    Tags []ClusterTagArgs
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    TerminationProtectionEnabled bool
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    VersionReleaseSystem string
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    projectId String
    The unique ID for the project to create the database user.
    providerInstanceSizeName String
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    providerName String

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    acceptDataRisksAndForceReplicaSetReconfig String
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advancedConfiguration ClusterAdvancedConfiguration
    autoScalingComputeEnabled Boolean
    autoScalingComputeScaleDownEnabled Boolean
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    autoScalingDiskGbEnabled Boolean
    backingProviderName String

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backupEnabled Boolean
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    biConnectorConfig ClusterBiConnectorConfig
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloudBackup Boolean
    clusterType String

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    diskSizeGb Double
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryptionAtRestProvider String
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels List<ClusterLabel>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongoDbMajorVersion String
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    name String
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    numShards Integer
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused Boolean
    pitEnabled Boolean
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    providerAutoScalingComputeMaxInstanceSize String
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    providerAutoScalingComputeMinInstanceSize String
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    providerDiskIops Integer
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    providerDiskTypeName String
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    providerEncryptEbsVolume Boolean
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    providerRegionName String
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    providerVolumeType String

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replicationFactor Integer
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replicationSpecs List<ClusterReplicationSpec>
    Configuration for cluster regions. See Replication Spec below for more details.
    retainBackupsEnabled Boolean
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    tags List<ClusterTag>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    terminationProtectionEnabled Boolean
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    versionReleaseSystem String
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    projectId string
    The unique ID for the project to create the database user.
    providerInstanceSizeName string
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    providerName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    acceptDataRisksAndForceReplicaSetReconfig string
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advancedConfiguration ClusterAdvancedConfiguration
    autoScalingComputeEnabled boolean
    autoScalingComputeScaleDownEnabled boolean
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    autoScalingDiskGbEnabled boolean
    backingProviderName string

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backupEnabled boolean
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    biConnectorConfig ClusterBiConnectorConfig
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloudBackup boolean
    clusterType string

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    diskSizeGb number
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryptionAtRestProvider string
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels ClusterLabel[]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongoDbMajorVersion string
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    name string
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    numShards number
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused boolean
    pitEnabled boolean
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    providerAutoScalingComputeMaxInstanceSize string
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    providerAutoScalingComputeMinInstanceSize string
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    providerDiskIops number
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    providerDiskTypeName string
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    providerEncryptEbsVolume boolean
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    providerRegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    providerVolumeType string

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replicationFactor number
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replicationSpecs ClusterReplicationSpec[]
    Configuration for cluster regions. See Replication Spec below for more details.
    retainBackupsEnabled boolean
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    tags ClusterTag[]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    terminationProtectionEnabled boolean
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    versionReleaseSystem string
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    project_id str
    The unique ID for the project to create the database user.
    provider_instance_size_name str
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    provider_name str

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    accept_data_risks_and_force_replica_set_reconfig str
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advanced_configuration ClusterAdvancedConfigurationArgs
    auto_scaling_compute_enabled bool
    auto_scaling_compute_scale_down_enabled bool
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    auto_scaling_disk_gb_enabled bool
    backing_provider_name str

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backup_enabled bool
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    bi_connector_config ClusterBiConnectorConfigArgs
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloud_backup bool
    cluster_type str

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    disk_size_gb float
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryption_at_rest_provider str
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels Sequence[ClusterLabelArgs]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongo_db_major_version str
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    name str
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    num_shards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused bool
    pit_enabled bool
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    provider_auto_scaling_compute_max_instance_size str
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    provider_auto_scaling_compute_min_instance_size str
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    provider_disk_iops int
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    provider_disk_type_name str
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    provider_encrypt_ebs_volume bool
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    provider_region_name str
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    provider_volume_type str

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replication_factor int
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replication_specs Sequence[ClusterReplicationSpecArgs]
    Configuration for cluster regions. See Replication Spec below for more details.
    retain_backups_enabled bool
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    tags Sequence[ClusterTagArgs]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    termination_protection_enabled bool
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    version_release_system str
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    projectId String
    The unique ID for the project to create the database user.
    providerInstanceSizeName String
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    providerName String

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    acceptDataRisksAndForceReplicaSetReconfig String
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advancedConfiguration Property Map
    autoScalingComputeEnabled Boolean
    autoScalingComputeScaleDownEnabled Boolean
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    autoScalingDiskGbEnabled Boolean
    backingProviderName String

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backupEnabled Boolean
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    biConnectorConfig Property Map
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloudBackup Boolean
    clusterType String

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    diskSizeGb Number
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryptionAtRestProvider String
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels List<Property Map>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongoDbMajorVersion String
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    name String
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    numShards Number
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused Boolean
    pitEnabled Boolean
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    providerAutoScalingComputeMaxInstanceSize String
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    providerAutoScalingComputeMinInstanceSize String
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    providerDiskIops Number
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    providerDiskTypeName String
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    providerEncryptEbsVolume Boolean
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    providerRegionName String
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    providerVolumeType String

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replicationFactor Number
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replicationSpecs List<Property Map>
    Configuration for cluster regions. See Replication Spec below for more details.
    retainBackupsEnabled Boolean
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    tags List<Property Map>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    terminationProtectionEnabled Boolean
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    versionReleaseSystem String
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Cluster resource produces the following output properties:

    ClusterId string
    The cluster ID.
    ConnectionStrings List<ClusterConnectionString>
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    ContainerId string
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    MongoDbVersion string
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    MongoUri string
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    MongoUriUpdated string
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    MongoUriWithOptions string
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    ProviderEncryptEbsVolumeFlag bool
    SnapshotBackupPolicies List<ClusterSnapshotBackupPolicy>
    current snapshot schedule and retention settings for the cluster.
    SrvAddress string
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    StateName string
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    ClusterId string
    The cluster ID.
    ConnectionStrings []ClusterConnectionString
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    ContainerId string
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    MongoDbVersion string
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    MongoUri string
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    MongoUriUpdated string
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    MongoUriWithOptions string
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    ProviderEncryptEbsVolumeFlag bool
    SnapshotBackupPolicies []ClusterSnapshotBackupPolicy
    current snapshot schedule and retention settings for the cluster.
    SrvAddress string
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    StateName string
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    clusterId String
    The cluster ID.
    connectionStrings List<ClusterConnectionString>
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    containerId String
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    id String
    The provider-assigned unique ID for this managed resource.
    mongoDbVersion String
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongoUri String
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongoUriUpdated String
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongoUriWithOptions String
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    providerEncryptEbsVolumeFlag Boolean
    snapshotBackupPolicies List<ClusterSnapshotBackupPolicy>
    current snapshot schedule and retention settings for the cluster.
    srvAddress String
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    stateName String
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    clusterId string
    The cluster ID.
    connectionStrings ClusterConnectionString[]
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    containerId string
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    id string
    The provider-assigned unique ID for this managed resource.
    mongoDbVersion string
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongoUri string
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongoUriUpdated string
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongoUriWithOptions string
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    providerEncryptEbsVolumeFlag boolean
    snapshotBackupPolicies ClusterSnapshotBackupPolicy[]
    current snapshot schedule and retention settings for the cluster.
    srvAddress string
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    stateName string
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    cluster_id str
    The cluster ID.
    connection_strings Sequence[ClusterConnectionString]
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    container_id str
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    id str
    The provider-assigned unique ID for this managed resource.
    mongo_db_version str
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongo_uri str
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongo_uri_updated str
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongo_uri_with_options str
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    provider_encrypt_ebs_volume_flag bool
    snapshot_backup_policies Sequence[ClusterSnapshotBackupPolicy]
    current snapshot schedule and retention settings for the cluster.
    srv_address str
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    state_name str
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    clusterId String
    The cluster ID.
    connectionStrings List<Property Map>
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    containerId String
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    id String
    The provider-assigned unique ID for this managed resource.
    mongoDbVersion String
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongoUri String
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongoUriUpdated String
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongoUriWithOptions String
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    providerEncryptEbsVolumeFlag Boolean
    snapshotBackupPolicies List<Property Map>
    current snapshot schedule and retention settings for the cluster.
    srvAddress String
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    stateName String
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING

    Look up Existing Cluster Resource

    Get an existing Cluster resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ClusterState, opts?: CustomResourceOptions): Cluster
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            accept_data_risks_and_force_replica_set_reconfig: Optional[str] = None,
            advanced_configuration: Optional[ClusterAdvancedConfigurationArgs] = None,
            auto_scaling_compute_enabled: Optional[bool] = None,
            auto_scaling_compute_scale_down_enabled: Optional[bool] = None,
            auto_scaling_disk_gb_enabled: Optional[bool] = None,
            backing_provider_name: Optional[str] = None,
            backup_enabled: Optional[bool] = None,
            bi_connector_config: Optional[ClusterBiConnectorConfigArgs] = None,
            cloud_backup: Optional[bool] = None,
            cluster_id: Optional[str] = None,
            cluster_type: Optional[str] = None,
            connection_strings: Optional[Sequence[ClusterConnectionStringArgs]] = None,
            container_id: Optional[str] = None,
            disk_size_gb: Optional[float] = None,
            encryption_at_rest_provider: Optional[str] = None,
            labels: Optional[Sequence[ClusterLabelArgs]] = None,
            mongo_db_major_version: Optional[str] = None,
            mongo_db_version: Optional[str] = None,
            mongo_uri: Optional[str] = None,
            mongo_uri_updated: Optional[str] = None,
            mongo_uri_with_options: Optional[str] = None,
            name: Optional[str] = None,
            num_shards: Optional[int] = None,
            paused: Optional[bool] = None,
            pit_enabled: Optional[bool] = None,
            project_id: Optional[str] = None,
            provider_auto_scaling_compute_max_instance_size: Optional[str] = None,
            provider_auto_scaling_compute_min_instance_size: Optional[str] = None,
            provider_disk_iops: Optional[int] = None,
            provider_disk_type_name: Optional[str] = None,
            provider_encrypt_ebs_volume: Optional[bool] = None,
            provider_encrypt_ebs_volume_flag: Optional[bool] = None,
            provider_instance_size_name: Optional[str] = None,
            provider_name: Optional[str] = None,
            provider_region_name: Optional[str] = None,
            provider_volume_type: Optional[str] = None,
            replication_factor: Optional[int] = None,
            replication_specs: Optional[Sequence[ClusterReplicationSpecArgs]] = None,
            retain_backups_enabled: Optional[bool] = None,
            snapshot_backup_policies: Optional[Sequence[ClusterSnapshotBackupPolicyArgs]] = None,
            srv_address: Optional[str] = None,
            state_name: Optional[str] = None,
            tags: Optional[Sequence[ClusterTagArgs]] = None,
            termination_protection_enabled: Optional[bool] = None,
            version_release_system: Optional[str] = None) -> Cluster
    func GetCluster(ctx *Context, name string, id IDInput, state *ClusterState, opts ...ResourceOption) (*Cluster, error)
    public static Cluster Get(string name, Input<string> id, ClusterState? state, CustomResourceOptions? opts = null)
    public static Cluster get(String name, Output<String> id, ClusterState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AcceptDataRisksAndForceReplicaSetReconfig string
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    AdvancedConfiguration ClusterAdvancedConfiguration
    AutoScalingComputeEnabled bool
    AutoScalingComputeScaleDownEnabled bool
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    AutoScalingDiskGbEnabled bool
    BackingProviderName string

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    BackupEnabled bool
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    BiConnectorConfig ClusterBiConnectorConfig
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    CloudBackup bool
    ClusterId string
    The cluster ID.
    ClusterType string

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    ConnectionStrings List<ClusterConnectionString>
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    ContainerId string
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    DiskSizeGb double
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    EncryptionAtRestProvider string
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    Labels List<ClusterLabel>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    MongoDbMajorVersion string
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    MongoDbVersion string
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    MongoUri string
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    MongoUriUpdated string
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    MongoUriWithOptions string
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    Name string
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    NumShards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    Paused bool
    PitEnabled bool
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    ProjectId string
    The unique ID for the project to create the database user.
    ProviderAutoScalingComputeMaxInstanceSize string
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    ProviderAutoScalingComputeMinInstanceSize string
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    ProviderDiskIops int
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    ProviderDiskTypeName string
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    ProviderEncryptEbsVolume bool
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    ProviderEncryptEbsVolumeFlag bool
    ProviderInstanceSizeName string
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    ProviderName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    ProviderRegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    ProviderVolumeType string

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    ReplicationFactor int
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    ReplicationSpecs List<ClusterReplicationSpec>
    Configuration for cluster regions. See Replication Spec below for more details.
    RetainBackupsEnabled bool
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    SnapshotBackupPolicies List<ClusterSnapshotBackupPolicy>
    current snapshot schedule and retention settings for the cluster.
    SrvAddress string
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    StateName string
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    Tags List<ClusterTag>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    TerminationProtectionEnabled bool
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    VersionReleaseSystem string
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    AcceptDataRisksAndForceReplicaSetReconfig string
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    AdvancedConfiguration ClusterAdvancedConfigurationArgs
    AutoScalingComputeEnabled bool
    AutoScalingComputeScaleDownEnabled bool
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    AutoScalingDiskGbEnabled bool
    BackingProviderName string

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    BackupEnabled bool
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    BiConnectorConfig ClusterBiConnectorConfigArgs
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    CloudBackup bool
    ClusterId string
    The cluster ID.
    ClusterType string

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    ConnectionStrings []ClusterConnectionStringArgs
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    ContainerId string
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    DiskSizeGb float64
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    EncryptionAtRestProvider string
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    Labels []ClusterLabelArgs
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    MongoDbMajorVersion string
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    MongoDbVersion string
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    MongoUri string
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    MongoUriUpdated string
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    MongoUriWithOptions string
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    Name string
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    NumShards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    Paused bool
    PitEnabled bool
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    ProjectId string
    The unique ID for the project to create the database user.
    ProviderAutoScalingComputeMaxInstanceSize string
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    ProviderAutoScalingComputeMinInstanceSize string
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    ProviderDiskIops int
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    ProviderDiskTypeName string
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    ProviderEncryptEbsVolume bool
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    ProviderEncryptEbsVolumeFlag bool
    ProviderInstanceSizeName string
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    ProviderName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    ProviderRegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    ProviderVolumeType string

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    ReplicationFactor int
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    ReplicationSpecs []ClusterReplicationSpecArgs
    Configuration for cluster regions. See Replication Spec below for more details.
    RetainBackupsEnabled bool
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    SnapshotBackupPolicies []ClusterSnapshotBackupPolicyArgs
    current snapshot schedule and retention settings for the cluster.
    SrvAddress string
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    StateName string
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    Tags []ClusterTagArgs
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    TerminationProtectionEnabled bool
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    VersionReleaseSystem string
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    acceptDataRisksAndForceReplicaSetReconfig String
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advancedConfiguration ClusterAdvancedConfiguration
    autoScalingComputeEnabled Boolean
    autoScalingComputeScaleDownEnabled Boolean
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    autoScalingDiskGbEnabled Boolean
    backingProviderName String

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backupEnabled Boolean
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    biConnectorConfig ClusterBiConnectorConfig
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloudBackup Boolean
    clusterId String
    The cluster ID.
    clusterType String

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    connectionStrings List<ClusterConnectionString>
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    containerId String
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    diskSizeGb Double
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryptionAtRestProvider String
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels List<ClusterLabel>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongoDbMajorVersion String
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    mongoDbVersion String
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongoUri String
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongoUriUpdated String
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongoUriWithOptions String
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    name String
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    numShards Integer
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused Boolean
    pitEnabled Boolean
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    projectId String
    The unique ID for the project to create the database user.
    providerAutoScalingComputeMaxInstanceSize String
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    providerAutoScalingComputeMinInstanceSize String
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    providerDiskIops Integer
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    providerDiskTypeName String
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    providerEncryptEbsVolume Boolean
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    providerEncryptEbsVolumeFlag Boolean
    providerInstanceSizeName String
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    providerName String

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    providerRegionName String
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    providerVolumeType String

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replicationFactor Integer
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replicationSpecs List<ClusterReplicationSpec>
    Configuration for cluster regions. See Replication Spec below for more details.
    retainBackupsEnabled Boolean
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    snapshotBackupPolicies List<ClusterSnapshotBackupPolicy>
    current snapshot schedule and retention settings for the cluster.
    srvAddress String
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    stateName String
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    tags List<ClusterTag>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    terminationProtectionEnabled Boolean
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    versionReleaseSystem String
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    acceptDataRisksAndForceReplicaSetReconfig string
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advancedConfiguration ClusterAdvancedConfiguration
    autoScalingComputeEnabled boolean
    autoScalingComputeScaleDownEnabled boolean
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    autoScalingDiskGbEnabled boolean
    backingProviderName string

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backupEnabled boolean
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    biConnectorConfig ClusterBiConnectorConfig
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloudBackup boolean
    clusterId string
    The cluster ID.
    clusterType string

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    connectionStrings ClusterConnectionString[]
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    containerId string
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    diskSizeGb number
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryptionAtRestProvider string
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels ClusterLabel[]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongoDbMajorVersion string
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    mongoDbVersion string
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongoUri string
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongoUriUpdated string
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongoUriWithOptions string
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    name string
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    numShards number
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused boolean
    pitEnabled boolean
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    projectId string
    The unique ID for the project to create the database user.
    providerAutoScalingComputeMaxInstanceSize string
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    providerAutoScalingComputeMinInstanceSize string
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    providerDiskIops number
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    providerDiskTypeName string
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    providerEncryptEbsVolume boolean
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    providerEncryptEbsVolumeFlag boolean
    providerInstanceSizeName string
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    providerName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    providerRegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    providerVolumeType string

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replicationFactor number
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replicationSpecs ClusterReplicationSpec[]
    Configuration for cluster regions. See Replication Spec below for more details.
    retainBackupsEnabled boolean
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    snapshotBackupPolicies ClusterSnapshotBackupPolicy[]
    current snapshot schedule and retention settings for the cluster.
    srvAddress string
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    stateName string
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    tags ClusterTag[]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    terminationProtectionEnabled boolean
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    versionReleaseSystem string
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    accept_data_risks_and_force_replica_set_reconfig str
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advanced_configuration ClusterAdvancedConfigurationArgs
    auto_scaling_compute_enabled bool
    auto_scaling_compute_scale_down_enabled bool
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    auto_scaling_disk_gb_enabled bool
    backing_provider_name str

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backup_enabled bool
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    bi_connector_config ClusterBiConnectorConfigArgs
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloud_backup bool
    cluster_id str
    The cluster ID.
    cluster_type str

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    connection_strings Sequence[ClusterConnectionStringArgs]
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    container_id str
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    disk_size_gb float
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryption_at_rest_provider str
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels Sequence[ClusterLabelArgs]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongo_db_major_version str
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    mongo_db_version str
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongo_uri str
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongo_uri_updated str
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongo_uri_with_options str
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    name str
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    num_shards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused bool
    pit_enabled bool
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    project_id str
    The unique ID for the project to create the database user.
    provider_auto_scaling_compute_max_instance_size str
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    provider_auto_scaling_compute_min_instance_size str
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    provider_disk_iops int
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    provider_disk_type_name str
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    provider_encrypt_ebs_volume bool
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    provider_encrypt_ebs_volume_flag bool
    provider_instance_size_name str
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    provider_name str

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    provider_region_name str
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    provider_volume_type str

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replication_factor int
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replication_specs Sequence[ClusterReplicationSpecArgs]
    Configuration for cluster regions. See Replication Spec below for more details.
    retain_backups_enabled bool
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    snapshot_backup_policies Sequence[ClusterSnapshotBackupPolicyArgs]
    current snapshot schedule and retention settings for the cluster.
    srv_address str
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    state_name str
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    tags Sequence[ClusterTagArgs]
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    termination_protection_enabled bool
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    version_release_system str
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:
    acceptDataRisksAndForceReplicaSetReconfig String
    If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set accept_data_risks_and_force_replica_set_reconfig to the current date. Learn more about Reconfiguring a Replica Set during a regional outage here.
    advancedConfiguration Property Map
    autoScalingComputeEnabled Boolean
    autoScalingComputeScaleDownEnabled Boolean
    Set to true to enable the cluster tier to scale down. This option is only available if autoScaling.compute.enabled is true.

    • If this option is enabled, you must specify a value for providerSettings.autoScaling.compute.minInstanceSize
    autoScalingDiskGbEnabled Boolean
    backingProviderName String

    Cloud service provider on which the server for a multi-tenant cluster is provisioned.

    This setting is only valid when providerSetting.providerName is TENANT and providerSetting.instanceSizeName is M2 or M5.

    The possible values are:

    • AWS - Amazon AWS
    • GCP - Google Cloud Platform
    • AZURE - Microsoft Azure
    backupEnabled Boolean
    Legacy Backup - Set to true to enable Atlas legacy backups for the cluster. Important - MongoDB deprecated the Legacy Backup feature. Clusters that use Legacy Backup can continue to use it. MongoDB recommends using Cloud Backups.

    • New Atlas clusters of any type do not support this parameter. These clusters must use Cloud Backup, cloud_backup, to enable Cloud Backup. If you create a new Atlas cluster and set backup_enabled to true, the Provider will respond with an error. This change doesn’t affect existing clusters that use legacy backups.
    • Setting this value to false to disable legacy backups for the cluster will let Atlas delete any stored snapshots. In order to preserve the legacy backups snapshots, disable the legacy backups and enable the cloud backups in the single pulumi up action.
    import * as pulumi from "@pulumi/pulumi";
    
    import pulumi
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    

    return await Deployment.RunAsync(() => { });

    package main
    
    import (
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
        }
    }
    
    {}
    
    • The default value is false. M10 and above only.
    biConnectorConfig Property Map
    Specifies BI Connector for Atlas configuration on this cluster. BI Connector for Atlas is only available for M10+ clusters. See BI Connector below for more details.
    cloudBackup Boolean
    clusterId String
    The cluster ID.
    clusterType String

    Specifies the type of the cluster that you want to modify. You cannot convert a sharded cluster deployment to a replica set deployment.

    WHEN SHOULD YOU USE CLUSTERTYPE? When you set replication_specs, when you are deploying Global Clusters or when you are deploying non-Global replica sets and sharded clusters.

    Accepted values include:

    connectionStrings List<Property Map>
    Set of connection strings that your applications use to connect to this cluster. More info in Connection-strings. Use the parameters in this object to connect your applications to this cluster. To learn more about the formats of connection strings, see Connection String Options. NOTE: Atlas returns the contents of this object after the cluster is operational, not while it builds the cluster.
    containerId String
    The Container ID is the id of the container created when the first cluster in the region (AWS/Azure) or project (GCP) was created.
    diskSizeGb Number
    Capacity, in gigabytes, of the host’s root volume. Increase this number to add capacity, up to a maximum possible value of 4096 (i.e., 4 TB). This value must be a positive integer.

    • The minimum disk size for dedicated clusters is 10GB for AWS and GCP. If you specify diskSizeGB with a lower disk size, Atlas defaults to the minimum disk size value.
    • Note: The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require additional storage space beyond this limitation, consider upgrading your cluster to a higher tier.
    • Cannot be used with clusters with local NVMe SSDs
    • Cannot be used with Azure clusters
    encryptionAtRestProvider String
    Possible values are AWS, GCP, AZURE or NONE. Only needed if you desire to manage the keys, see Encryption at Rest using Customer Key Management for complete documentation. You must configure encryption at rest for the Atlas project before enabling it on any cluster in the project. For complete documentation on configuring Encryption at Rest, see Encryption at Rest using Customer Key Management. Requires M10 or greater. and for legacy backups, backup_enabled, to be false or omitted. Note: Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default.
    labels List<Property Map>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below. DEPRECATED Use tags instead.

    Deprecated: this parameter is deprecated and will be removed by September 2024, please transition to tags

    mongoDbMajorVersion String
    Version of the cluster to deploy. Atlas supports the following MongoDB versions for M10+ clusters: 4.2, 4.4, 5.0, or 6.0. If omitted, Atlas deploys a cluster that runs MongoDB 5.0. If provider_instance_size_name: M0, M2 or M5, Atlas deploys MongoDB 5.0. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
    mongoDbVersion String
    Version of MongoDB the cluster runs, in major-version.minor-version format.
    mongoUri String
    Base connection string for the cluster. Atlas only displays this field after the cluster is operational, not while it builds the cluster.
    mongoUriUpdated String
    Lists when the connection string was last updated. The connection string changes, for example, if you change a replica set to a sharded cluster.
    mongoUriWithOptions String
    connection string for connecting to the Atlas cluster. Includes the replicaSet, ssl, and authSource query parameters in the connection string with values appropriate for the cluster.
    name String
    Name of the cluster as it appears in Atlas. Once the cluster is created, its name cannot be changed. WARNING Changing the name will result in destruction of the existing cluster and the creation of a new cluster.
    numShards Number
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    paused Boolean
    pitEnabled Boolean
    Flag that indicates if the cluster uses Continuous Cloud Backup. If set to true, cloud_backup must also be set to true.
    projectId String
    The unique ID for the project to create the database user.
    providerAutoScalingComputeMaxInstanceSize String
    Maximum instance size to which your cluster can automatically scale (e.g., M40). Required if autoScaling.compute.enabled is true.
    providerAutoScalingComputeMinInstanceSize String
    Minimum instance size to which your cluster can automatically scale (e.g., M10). Required if autoScaling.compute.scaleDownEnabled is true.
    providerDiskIops Number
    The maximum input/output operations per second (IOPS) the system can perform. The possible values depend on the selected provider_instance_size_name and disk_size_gb. This setting requires that provider_instance_size_name to be M30 or greater and cannot be used with clusters with local NVMe SSDs. The default value for provider_disk_iops is the same as the cluster tier's Standard IOPS value, as viewable in the Atlas console. It is used in cases where a higher number of IOPS is needed and possible. If a value is submitted that is lower or equal to the default IOPS value for the cluster tier Atlas ignores the requested value and uses the default. More details available under the providerSettings.diskIOPS parameter: MongoDB API Clusters

    • You do not need to configure IOPS for a STANDARD disk configuration but only for a PROVISIONED configuration.
    providerDiskTypeName String
    Azure disk type of the server’s root volume. If omitted, Atlas uses the default disk type for the selected providerSettings.instanceSizeName. Example disk types and associated storage sizes: P4 - 32GB, P6 - 64GB, P10 - 128GB, P15 - 256GB, P20 - 512GB, P30 - 1024GB, P40 - 2048GB, P50 - 4095GB. More information and the most update to date disk types/storage sizes can be located at https://docs.atlas.mongodb.com/reference/api/clusters-create-one/.
    providerEncryptEbsVolume Boolean
    (Deprecated) The Flag is always true. Flag that indicates whether the Amazon EBS encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Note: This setting is always enabled for clusters with local NVMe SSDs. Atlas encrypts all cluster storage and snapshot volumes, securing all cluster data on disk: a concept known as encryption at rest, by default..

    Deprecated: All EBS volumes are encrypted by default, the option to disable encryption has been removed

    providerEncryptEbsVolumeFlag Boolean
    providerInstanceSizeName String
    Atlas provides different instance sizes, each with a default storage capacity and RAM size. The instance size you select is used for all the data-bearing servers in your cluster. See Create a Cluster providerSettings.instanceSizeName for valid values and default resources.
    providerName String

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    providerRegionName String
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure. Do not specify this field when creating a multi-region cluster using the replicationSpec document or a Global Cluster with the replicationSpecs array.
    providerVolumeType String

    The type of the volume. The possible values are: STANDARD and PROVISIONED. PROVISIONED is ONLY required if setting IOPS higher than the default instance IOPS.

    NOTE: STANDARD is not available for NVME clusters.

    replicationFactor Number
    Number of replica set members. Each member keeps a copy of your databases, providing high availability and data redundancy. The possible values are 3, 5, or 7. The default value is 3.
    replicationSpecs List<Property Map>
    Configuration for cluster regions. See Replication Spec below for more details.
    retainBackupsEnabled Boolean
    Set to true to retain backup snapshots for the deleted cluster. M10 and above only.
    snapshotBackupPolicies List<Property Map>
    current snapshot schedule and retention settings for the cluster.
    srvAddress String
    Connection string for connecting to the Atlas cluster. The +srv modifier forces the connection to use TLS/SSL. See the mongoURI for additional options.
    stateName String
    Current state of the cluster. The possible states are:

    • IDLE
    • CREATING
    • UPDATING
    • DELETING
    • DELETED
    • REPAIRING
    tags List<Property Map>
    Set that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster. See below.
    terminationProtectionEnabled Boolean
    Flag that indicates whether termination protection is enabled on the cluster. If set to true, MongoDB Cloud won't delete the cluster. If set to false, MongoDB Cloud will delete the cluster.
    versionReleaseSystem String
    Release cadence that Atlas uses for this cluster. This parameter defaults to LTS. If you set this field to CONTINUOUS, you must omit the mongo_db_major_version field. Atlas accepts:

    Supporting Types

    ClusterAdvancedConfiguration, ClusterAdvancedConfigurationArgs

    DefaultReadConcern string
    Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.
    DefaultWriteConcern string
    Default level of acknowledgment requested from MongoDB for write operations set for this cluster. MongoDB 4.4 clusters default to 1.
    FailIndexKeyTooLong bool
    When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
    JavascriptEnabled bool
    When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
    MinimumEnabledTlsProtocol string
    Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:

    • TLS1_0
    • TLS1_1
    • TLS1_2
    NoTableScan bool
    When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
    OplogMinRetentionHours int
    Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.

    • Note A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see oplogMinRetentionHours
    OplogSizeMb int
    The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
    SampleRefreshIntervalBiConnector int
    Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    SampleSizeBiConnector int
    Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    TransactionLifetimeLimitSeconds int
    Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
    DefaultReadConcern string
    Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.
    DefaultWriteConcern string
    Default level of acknowledgment requested from MongoDB for write operations set for this cluster. MongoDB 4.4 clusters default to 1.
    FailIndexKeyTooLong bool
    When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
    JavascriptEnabled bool
    When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
    MinimumEnabledTlsProtocol string
    Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:

    • TLS1_0
    • TLS1_1
    • TLS1_2
    NoTableScan bool
    When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
    OplogMinRetentionHours int
    Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.

    • Note A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see oplogMinRetentionHours
    OplogSizeMb int
    The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
    SampleRefreshIntervalBiConnector int
    Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    SampleSizeBiConnector int
    Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    TransactionLifetimeLimitSeconds int
    Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
    defaultReadConcern String
    Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.
    defaultWriteConcern String
    Default level of acknowledgment requested from MongoDB for write operations set for this cluster. MongoDB 4.4 clusters default to 1.
    failIndexKeyTooLong Boolean
    When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
    javascriptEnabled Boolean
    When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
    minimumEnabledTlsProtocol String
    Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:

    • TLS1_0
    • TLS1_1
    • TLS1_2
    noTableScan Boolean
    When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
    oplogMinRetentionHours Integer
    Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.

    • Note A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see oplogMinRetentionHours
    oplogSizeMb Integer
    The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
    sampleRefreshIntervalBiConnector Integer
    Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    sampleSizeBiConnector Integer
    Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    transactionLifetimeLimitSeconds Integer
    Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
    defaultReadConcern string
    Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.
    defaultWriteConcern string
    Default level of acknowledgment requested from MongoDB for write operations set for this cluster. MongoDB 4.4 clusters default to 1.
    failIndexKeyTooLong boolean
    When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
    javascriptEnabled boolean
    When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
    minimumEnabledTlsProtocol string
    Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:

    • TLS1_0
    • TLS1_1
    • TLS1_2
    noTableScan boolean
    When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
    oplogMinRetentionHours number
    Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.

    • Note A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see oplogMinRetentionHours
    oplogSizeMb number
    The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
    sampleRefreshIntervalBiConnector number
    Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    sampleSizeBiConnector number
    Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    transactionLifetimeLimitSeconds number
    Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
    default_read_concern str
    Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.
    default_write_concern str
    Default level of acknowledgment requested from MongoDB for write operations set for this cluster. MongoDB 4.4 clusters default to 1.
    fail_index_key_too_long bool
    When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
    javascript_enabled bool
    When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
    minimum_enabled_tls_protocol str
    Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:

    • TLS1_0
    • TLS1_1
    • TLS1_2
    no_table_scan bool
    When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
    oplog_min_retention_hours int
    Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.

    • Note A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see oplogMinRetentionHours
    oplog_size_mb int
    The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
    sample_refresh_interval_bi_connector int
    Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    sample_size_bi_connector int
    Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    transaction_lifetime_limit_seconds int
    Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
    defaultReadConcern String
    Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.
    defaultWriteConcern String
    Default level of acknowledgment requested from MongoDB for write operations set for this cluster. MongoDB 4.4 clusters default to 1.
    failIndexKeyTooLong Boolean
    When true, documents can only be updated or inserted if, for all indexed fields on the target collection, the corresponding index entries do not exceed 1024 bytes. When false, mongod writes documents that exceed the limit but does not index them.
    javascriptEnabled Boolean
    When true, the cluster allows execution of operations that perform server-side executions of JavaScript. When false, the cluster disables execution of those operations.
    minimumEnabledTlsProtocol String
    Sets the minimum Transport Layer Security (TLS) version the cluster accepts for incoming connections.Valid values are:

    • TLS1_0
    • TLS1_1
    • TLS1_2
    noTableScan Boolean
    When true, the cluster disables the execution of any query that requires a collection scan to return results. When false, the cluster allows the execution of those operations.
    oplogMinRetentionHours Number
    Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.

    • Note A minimum oplog retention is required when seeking to change a cluster's class to Local NVMe SSD. To learn more and for latest guidance see oplogMinRetentionHours
    oplogSizeMb Number
    The custom oplog size of the cluster. Without a value that indicates that the cluster uses the default oplog size calculated by Atlas.
    sampleRefreshIntervalBiConnector Number
    Interval in seconds at which the mongosqld process re-samples data to create its relational schema. The default value is 300. The specified value must be a positive integer. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    sampleSizeBiConnector Number
    Number of documents per database to sample when gathering schema information. Defaults to 100. Available only for Atlas deployments in which BI Connector for Atlas is enabled.
    transactionLifetimeLimitSeconds Number
    Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.

    ClusterBiConnectorConfig, ClusterBiConnectorConfigArgs

    Enabled bool
    Specifies whether or not BI Connector for Atlas is enabled on the cluster.l *

    • Set to true to enable BI Connector for Atlas.
    • Set to false to disable BI Connector for Atlas.
    ReadPreference string

    Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. For details on BI Connector for Atlas read preferences, refer to the BI Connector Read Preferences Table.

    • Set to "primary" to have BI Connector for Atlas read from the primary.

    • Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.

    • Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.

    Enabled bool
    Specifies whether or not BI Connector for Atlas is enabled on the cluster.l *

    • Set to true to enable BI Connector for Atlas.
    • Set to false to disable BI Connector for Atlas.
    ReadPreference string

    Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. For details on BI Connector for Atlas read preferences, refer to the BI Connector Read Preferences Table.

    • Set to "primary" to have BI Connector for Atlas read from the primary.

    • Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.

    • Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.

    enabled Boolean
    Specifies whether or not BI Connector for Atlas is enabled on the cluster.l *

    • Set to true to enable BI Connector for Atlas.
    • Set to false to disable BI Connector for Atlas.
    readPreference String

    Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. For details on BI Connector for Atlas read preferences, refer to the BI Connector Read Preferences Table.

    • Set to "primary" to have BI Connector for Atlas read from the primary.

    • Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.

    • Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.

    enabled boolean
    Specifies whether or not BI Connector for Atlas is enabled on the cluster.l *

    • Set to true to enable BI Connector for Atlas.
    • Set to false to disable BI Connector for Atlas.
    readPreference string

    Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. For details on BI Connector for Atlas read preferences, refer to the BI Connector Read Preferences Table.

    • Set to "primary" to have BI Connector for Atlas read from the primary.

    • Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.

    • Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.

    enabled bool
    Specifies whether or not BI Connector for Atlas is enabled on the cluster.l *

    • Set to true to enable BI Connector for Atlas.
    • Set to false to disable BI Connector for Atlas.
    read_preference str

    Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. For details on BI Connector for Atlas read preferences, refer to the BI Connector Read Preferences Table.

    • Set to "primary" to have BI Connector for Atlas read from the primary.

    • Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.

    • Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.

    enabled Boolean
    Specifies whether or not BI Connector for Atlas is enabled on the cluster.l *

    • Set to true to enable BI Connector for Atlas.
    • Set to false to disable BI Connector for Atlas.
    readPreference String

    Specifies the read preference to be used by BI Connector for Atlas on the cluster. Each BI Connector for Atlas read preference contains a distinct combination of readPreference and readPreferenceTags options. For details on BI Connector for Atlas read preferences, refer to the BI Connector Read Preferences Table.

    • Set to "primary" to have BI Connector for Atlas read from the primary.

    • Set to "secondary" to have BI Connector for Atlas read from a secondary member. Default if there are no analytics nodes in the cluster.

    • Set to "analytics" to have BI Connector for Atlas read from an analytics node. Default if the cluster contains analytics nodes.

    ClusterConnectionString, ClusterConnectionStringArgs

    ClusterConnectionStringPrivateEndpoint, ClusterConnectionStringPrivateEndpointArgs

    ClusterConnectionStringPrivateEndpointEndpoint, ClusterConnectionStringPrivateEndpointEndpointArgs

    EndpointId string
    ProviderName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    Region string
    EndpointId string
    ProviderName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    Region string
    endpointId String
    providerName String

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    region String
    endpointId string
    providerName string

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    region string
    endpoint_id str
    provider_name str

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    region str
    endpointId String
    providerName String

    Cloud service provider on which the servers are provisioned.

    The possible values are:

    region String

    ClusterLabel, ClusterLabelArgs

    Key string
    The key that you want to write.
    Value string

    The value that you want to write.

    NOTE: MongoDB Atlas doesn't display your labels.

    Key string
    The key that you want to write.
    Value string

    The value that you want to write.

    NOTE: MongoDB Atlas doesn't display your labels.

    key String
    The key that you want to write.
    value String

    The value that you want to write.

    NOTE: MongoDB Atlas doesn't display your labels.

    key string
    The key that you want to write.
    value string

    The value that you want to write.

    NOTE: MongoDB Atlas doesn't display your labels.

    key str
    The key that you want to write.
    value str

    The value that you want to write.

    NOTE: MongoDB Atlas doesn't display your labels.

    key String
    The key that you want to write.
    value String

    The value that you want to write.

    NOTE: MongoDB Atlas doesn't display your labels.

    ClusterReplicationSpec, ClusterReplicationSpecArgs

    NumShards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    Id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    RegionsConfigs List<ClusterReplicationSpecRegionsConfig>
    Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
    ZoneName string

    Name for the zone in a Global Cluster.

    Region Config

    NumShards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    Id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    RegionsConfigs []ClusterReplicationSpecRegionsConfig
    Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
    ZoneName string

    Name for the zone in a Global Cluster.

    Region Config

    numShards Integer
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    id String
    Unique identifer of the replication document for a zone in a Global Cluster.
    regionsConfigs List<ClusterReplicationSpecRegionsConfig>
    Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
    zoneName String

    Name for the zone in a Global Cluster.

    Region Config

    numShards number
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    regionsConfigs ClusterReplicationSpecRegionsConfig[]
    Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
    zoneName string

    Name for the zone in a Global Cluster.

    Region Config

    num_shards int
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    id str
    Unique identifer of the replication document for a zone in a Global Cluster.
    regions_configs Sequence[ClusterReplicationSpecRegionsConfig]
    Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
    zone_name str

    Name for the zone in a Global Cluster.

    Region Config

    numShards Number
    Selects whether the cluster is a replica set or a sharded cluster. If you use the replicationSpecs parameter, you must set num_shards.
    id String
    Unique identifer of the replication document for a zone in a Global Cluster.
    regionsConfigs List<Property Map>
    Physical location of the region. Each regionsConfig document describes the region’s priority in elections and the number and type of MongoDB nodes Atlas deploys to the region. You must order each regionsConfigs document by regionsConfig.priority, descending. See Region Config below for more details.
    zoneName String

    Name for the zone in a Global Cluster.

    Region Config

    ClusterReplicationSpecRegionsConfig, ClusterReplicationSpecRegionsConfigArgs

    RegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure.
    AnalyticsNodes int
    The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
    ElectableNodes int
    Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.

    • The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
    • Specify 0 if you do not want any electable nodes in the region.
    • You cannot create electable nodes in a region if priority is 0.
    Priority int
    Election priority of the region. For regions with only read-only nodes, set this value to 0.

    • For regions where electable_nodes is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
    • The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
    • Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
    ReadOnlyNodes int
    Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
    RegionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure.
    AnalyticsNodes int
    The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
    ElectableNodes int
    Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.

    • The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
    • Specify 0 if you do not want any electable nodes in the region.
    • You cannot create electable nodes in a region if priority is 0.
    Priority int
    Election priority of the region. For regions with only read-only nodes, set this value to 0.

    • For regions where electable_nodes is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
    • The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
    • Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
    ReadOnlyNodes int
    Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
    regionName String
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure.
    analyticsNodes Integer
    The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
    electableNodes Integer
    Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.

    • The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
    • Specify 0 if you do not want any electable nodes in the region.
    • You cannot create electable nodes in a region if priority is 0.
    priority Integer
    Election priority of the region. For regions with only read-only nodes, set this value to 0.

    • For regions where electable_nodes is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
    • The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
    • Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
    readOnlyNodes Integer
    Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
    regionName string
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure.
    analyticsNodes number
    The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
    electableNodes number
    Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.

    • The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
    • Specify 0 if you do not want any electable nodes in the region.
    • You cannot create electable nodes in a region if priority is 0.
    priority number
    Election priority of the region. For regions with only read-only nodes, set this value to 0.

    • For regions where electable_nodes is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
    • The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
    • Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
    readOnlyNodes number
    Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
    region_name str
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure.
    analytics_nodes int
    The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
    electable_nodes int
    Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.

    • The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
    • Specify 0 if you do not want any electable nodes in the region.
    • You cannot create electable nodes in a region if priority is 0.
    priority int
    Election priority of the region. For regions with only read-only nodes, set this value to 0.

    • For regions where electable_nodes is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
    • The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
    • Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
    read_only_nodes int
    Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.
    regionName String
    Physical location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. Requires the Atlas region name, see the reference list for AWS, GCP, Azure.
    analyticsNodes Number
    The number of analytics nodes for Atlas to deploy to the region. Analytics nodes are useful for handling analytic data such as reporting queries from BI Connector for Atlas. Analytics nodes are read-only, and can never become the primary. If you do not specify this option, no analytics nodes are deployed to the region.
    electableNodes Number
    Number of electable nodes for Atlas to deploy to the region. Electable nodes can become the primary and can facilitate local reads.

    • The total number of electableNodes across all replication spec regions must total 3, 5, or 7.
    • Specify 0 if you do not want any electable nodes in the region.
    • You cannot create electable nodes in a region if priority is 0.
    priority Number
    Election priority of the region. For regions with only read-only nodes, set this value to 0.

    • For regions where electable_nodes is at least 1, each region must have a priority of exactly one (1) less than the previous region. The first region must have a priority of 7. The lowest possible priority is 1.
    • The priority 7 region identifies the Preferred Region of the cluster. Atlas places the primary node in the Preferred Region. Priorities 1 through 7 are exclusive - no more than one region per cluster can be assigned a given priority.
    • Example: If you have three regions, their priorities would be 7, 6, and 5 respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be 4 and 3 respectively.
    readOnlyNodes Number
    Number of read-only nodes for Atlas to deploy to the region. Read-only nodes can never become the primary, but can facilitate local-reads. Specify 0 if you do not want any read-only nodes in the region.

    ClusterSnapshotBackupPolicy, ClusterSnapshotBackupPolicyArgs

    ClusterSnapshotBackupPolicyPolicy, ClusterSnapshotBackupPolicyPolicyArgs

    Id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    PolicyItems List<ClusterSnapshotBackupPolicyPolicyPolicyItem>
    Id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    PolicyItems []ClusterSnapshotBackupPolicyPolicyPolicyItem
    id String
    Unique identifer of the replication document for a zone in a Global Cluster.
    policyItems List<ClusterSnapshotBackupPolicyPolicyPolicyItem>
    id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    policyItems ClusterSnapshotBackupPolicyPolicyPolicyItem[]
    id str
    Unique identifer of the replication document for a zone in a Global Cluster.
    policy_items Sequence[ClusterSnapshotBackupPolicyPolicyPolicyItem]
    id String
    Unique identifer of the replication document for a zone in a Global Cluster.
    policyItems List<Property Map>

    ClusterSnapshotBackupPolicyPolicyPolicyItem, ClusterSnapshotBackupPolicyPolicyPolicyItemArgs

    FrequencyInterval int
    FrequencyType string
    Id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    RetentionUnit string
    RetentionValue int
    FrequencyInterval int
    FrequencyType string
    Id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    RetentionUnit string
    RetentionValue int
    frequencyInterval Integer
    frequencyType String
    id String
    Unique identifer of the replication document for a zone in a Global Cluster.
    retentionUnit String
    retentionValue Integer
    frequencyInterval number
    frequencyType string
    id string
    Unique identifer of the replication document for a zone in a Global Cluster.
    retentionUnit string
    retentionValue number
    frequency_interval int
    frequency_type str
    id str
    Unique identifer of the replication document for a zone in a Global Cluster.
    retention_unit str
    retention_value int
    frequencyInterval Number
    frequencyType String
    id String
    Unique identifer of the replication document for a zone in a Global Cluster.
    retentionUnit String
    retentionValue Number

    ClusterTag, ClusterTagArgs

    Key string
    Constant that defines the set of the tag.
    Value string

    Variable that belongs to the set of the tag.

    To learn more, see Resource Tags.

    Key string
    Constant that defines the set of the tag.
    Value string

    Variable that belongs to the set of the tag.

    To learn more, see Resource Tags.

    key String
    Constant that defines the set of the tag.
    value String

    Variable that belongs to the set of the tag.

    To learn more, see Resource Tags.

    key string
    Constant that defines the set of the tag.
    value string

    Variable that belongs to the set of the tag.

    To learn more, see Resource Tags.

    key str
    Constant that defines the set of the tag.
    value str

    Variable that belongs to the set of the tag.

    To learn more, see Resource Tags.

    key String
    Constant that defines the set of the tag.
    value String

    Variable that belongs to the set of the tag.

    To learn more, see Resource Tags.

    Package Details

    Repository
    MongoDB Atlas pulumi/pulumi-mongodbatlas
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the mongodbatlas Terraform Provider.
    mongodbatlas logo
    MongoDB Atlas v3.14.3 published on Monday, Apr 1, 2024 by Pulumi