1. Packages
  2. Mongodbatlas Provider
  3. API Docs
  4. Cluster
MongoDB Atlas v3.30.0 published on Friday, Mar 21, 2025 by Pulumi

mongodbatlas.Cluster

Explore with Pulumi AI

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", {
    projectId: "<YOUR-PROJECT-ID>",
    name: "cluster-test",
    clusterType: "REPLICASET",
    replicationSpecs: [{
        numShards: 1,
        regionsConfigs: [{
            regionName: "US_EAST_1",
            electableNodes: 3,
            priority: 7,
            readOnlyNodes: 0,
        }],
    }],
    cloudBackup: true,
    autoScalingDiskGbEnabled: true,
    mongoDbMajorVersion: "7.0",
    providerName: "AWS",
    providerInstanceSizeName: "M40",
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

cluster_test = mongodbatlas.Cluster("cluster-test",
    project_id="<YOUR-PROJECT-ID>",
    name="cluster-test",
    cluster_type="REPLICASET",
    replication_specs=[{
        "num_shards": 1,
        "regions_configs": [{
            "region_name": "US_EAST_1",
            "electable_nodes": 3,
            "priority": 7,
            "read_only_nodes": 0,
        }],
    }],
    cloud_backup=True,
    auto_scaling_disk_gb_enabled=True,
    mongo_db_major_version="7.0",
    provider_name="AWS",
    provider_instance_size_name="M40")
Copy
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{
			ProjectId:   pulumi.String("<YOUR-PROJECT-ID>"),
			Name:        pulumi.String("cluster-test"),
			ClusterType: pulumi.String("REPLICASET"),
			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
				&mongodbatlas.ClusterReplicationSpecArgs{
					NumShards: pulumi.Int(1),
					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("US_EAST_1"),
							ElectableNodes: pulumi.Int(3),
							Priority:       pulumi.Int(7),
							ReadOnlyNodes:  pulumi.Int(0),
						},
					},
				},
			},
			CloudBackup:              pulumi.Bool(true),
			AutoScalingDiskGbEnabled: pulumi.Bool(true),
			MongoDbMajorVersion:      pulumi.String("7.0"),
			ProviderName:             pulumi.String("AWS"),
			ProviderInstanceSizeName: pulumi.String("M40"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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()
    {
        ProjectId = "<YOUR-PROJECT-ID>",
        Name = "cluster-test",
        ClusterType = "REPLICASET",
        ReplicationSpecs = new[]
        {
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                NumShards = 1,
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "US_EAST_1",
                        ElectableNodes = 3,
                        Priority = 7,
                        ReadOnlyNodes = 0,
                    },
                },
            },
        },
        CloudBackup = true,
        AutoScalingDiskGbEnabled = true,
        MongoDbMajorVersion = "7.0",
        ProviderName = "AWS",
        ProviderInstanceSizeName = "M40",
    });

});
Copy
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()
            .projectId("<YOUR-PROJECT-ID>")
            .name("cluster-test")
            .clusterType("REPLICASET")
            .replicationSpecs(ClusterReplicationSpecArgs.builder()
                .numShards(1)
                .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                    .regionName("US_EAST_1")
                    .electableNodes(3)
                    .priority(7)
                    .readOnlyNodes(0)
                    .build())
                .build())
            .cloudBackup(true)
            .autoScalingDiskGbEnabled(true)
            .mongoDbMajorVersion("7.0")
            .providerName("AWS")
            .providerInstanceSizeName("M40")
            .build());

    }
}
Copy
resources:
  cluster-test:
    type: mongodbatlas:Cluster
    properties:
      projectId: <YOUR-PROJECT-ID>
      name: cluster-test
      clusterType: REPLICASET
      replicationSpecs:
        - numShards: 1
          regionsConfigs:
            - regionName: US_EAST_1
              electableNodes: 3
              priority: 7
              readOnlyNodes: 0
      cloudBackup: true
      autoScalingDiskGbEnabled: true
      mongoDbMajorVersion: '7.0'
      providerName: AWS
      providerInstanceSizeName: M40
Copy

Example Azure cluster.

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const test = new mongodbatlas.Cluster("test", {
    projectId: "<YOUR-PROJECT-ID>",
    name: "test",
    clusterType: "REPLICASET",
    replicationSpecs: [{
        numShards: 1,
        regionsConfigs: [{
            regionName: "US_EAST",
            electableNodes: 3,
            priority: 7,
            readOnlyNodes: 0,
        }],
    }],
    cloudBackup: true,
    autoScalingDiskGbEnabled: true,
    mongoDbMajorVersion: "7.0",
    providerName: "AZURE",
    providerDiskTypeName: "P6",
    providerInstanceSizeName: "M30",
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

test = mongodbatlas.Cluster("test",
    project_id="<YOUR-PROJECT-ID>",
    name="test",
    cluster_type="REPLICASET",
    replication_specs=[{
        "num_shards": 1,
        "regions_configs": [{
            "region_name": "US_EAST",
            "electable_nodes": 3,
            "priority": 7,
            "read_only_nodes": 0,
        }],
    }],
    cloud_backup=True,
    auto_scaling_disk_gb_enabled=True,
    mongo_db_major_version="7.0",
    provider_name="AZURE",
    provider_disk_type_name="P6",
    provider_instance_size_name="M30")
Copy
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{
			ProjectId:   pulumi.String("<YOUR-PROJECT-ID>"),
			Name:        pulumi.String("test"),
			ClusterType: pulumi.String("REPLICASET"),
			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
				&mongodbatlas.ClusterReplicationSpecArgs{
					NumShards: pulumi.Int(1),
					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("US_EAST"),
							ElectableNodes: pulumi.Int(3),
							Priority:       pulumi.Int(7),
							ReadOnlyNodes:  pulumi.Int(0),
						},
					},
				},
			},
			CloudBackup:              pulumi.Bool(true),
			AutoScalingDiskGbEnabled: pulumi.Bool(true),
			MongoDbMajorVersion:      pulumi.String("7.0"),
			ProviderName:             pulumi.String("AZURE"),
			ProviderDiskTypeName:     pulumi.String("P6"),
			ProviderInstanceSizeName: pulumi.String("M30"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Mongodbatlas = Pulumi.Mongodbatlas;

return await Deployment.RunAsync(() => 
{
    var test = new Mongodbatlas.Cluster("test", new()
    {
        ProjectId = "<YOUR-PROJECT-ID>",
        Name = "test",
        ClusterType = "REPLICASET",
        ReplicationSpecs = new[]
        {
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                NumShards = 1,
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "US_EAST",
                        ElectableNodes = 3,
                        Priority = 7,
                        ReadOnlyNodes = 0,
                    },
                },
            },
        },
        CloudBackup = true,
        AutoScalingDiskGbEnabled = true,
        MongoDbMajorVersion = "7.0",
        ProviderName = "AZURE",
        ProviderDiskTypeName = "P6",
        ProviderInstanceSizeName = "M30",
    });

});
Copy
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()
            .projectId("<YOUR-PROJECT-ID>")
            .name("test")
            .clusterType("REPLICASET")
            .replicationSpecs(ClusterReplicationSpecArgs.builder()
                .numShards(1)
                .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                    .regionName("US_EAST")
                    .electableNodes(3)
                    .priority(7)
                    .readOnlyNodes(0)
                    .build())
                .build())
            .cloudBackup(true)
            .autoScalingDiskGbEnabled(true)
            .mongoDbMajorVersion("7.0")
            .providerName("AZURE")
            .providerDiskTypeName("P6")
            .providerInstanceSizeName("M30")
            .build());

    }
}
Copy
resources:
  test:
    type: mongodbatlas:Cluster
    properties:
      projectId: <YOUR-PROJECT-ID>
      name: test
      clusterType: REPLICASET
      replicationSpecs:
        - numShards: 1
          regionsConfigs:
            - regionName: US_EAST
              electableNodes: 3
              priority: 7
              readOnlyNodes: 0
      cloudBackup: true
      autoScalingDiskGbEnabled: true
      mongoDbMajorVersion: '7.0'
      providerName: AZURE
      providerDiskTypeName: P6
      providerInstanceSizeName: M30
Copy

Example GCP cluster

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const test = new mongodbatlas.Cluster("test", {
    projectId: "<YOUR-PROJECT-ID>",
    name: "test",
    clusterType: "REPLICASET",
    replicationSpecs: [{
        numShards: 1,
        regionsConfigs: [{
            regionName: "EASTERN_US",
            electableNodes: 3,
            priority: 7,
            readOnlyNodes: 0,
        }],
    }],
    cloudBackup: true,
    autoScalingDiskGbEnabled: true,
    mongoDbMajorVersion: "7.0",
    providerName: "GCP",
    providerInstanceSizeName: "M30",
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

test = mongodbatlas.Cluster("test",
    project_id="<YOUR-PROJECT-ID>",
    name="test",
    cluster_type="REPLICASET",
    replication_specs=[{
        "num_shards": 1,
        "regions_configs": [{
            "region_name": "EASTERN_US",
            "electable_nodes": 3,
            "priority": 7,
            "read_only_nodes": 0,
        }],
    }],
    cloud_backup=True,
    auto_scaling_disk_gb_enabled=True,
    mongo_db_major_version="7.0",
    provider_name="GCP",
    provider_instance_size_name="M30")
Copy
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{
			ProjectId:   pulumi.String("<YOUR-PROJECT-ID>"),
			Name:        pulumi.String("test"),
			ClusterType: pulumi.String("REPLICASET"),
			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
				&mongodbatlas.ClusterReplicationSpecArgs{
					NumShards: pulumi.Int(1),
					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("EASTERN_US"),
							ElectableNodes: pulumi.Int(3),
							Priority:       pulumi.Int(7),
							ReadOnlyNodes:  pulumi.Int(0),
						},
					},
				},
			},
			CloudBackup:              pulumi.Bool(true),
			AutoScalingDiskGbEnabled: pulumi.Bool(true),
			MongoDbMajorVersion:      pulumi.String("7.0"),
			ProviderName:             pulumi.String("GCP"),
			ProviderInstanceSizeName: pulumi.String("M30"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Mongodbatlas = Pulumi.Mongodbatlas;

return await Deployment.RunAsync(() => 
{
    var test = new Mongodbatlas.Cluster("test", new()
    {
        ProjectId = "<YOUR-PROJECT-ID>",
        Name = "test",
        ClusterType = "REPLICASET",
        ReplicationSpecs = new[]
        {
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                NumShards = 1,
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "EASTERN_US",
                        ElectableNodes = 3,
                        Priority = 7,
                        ReadOnlyNodes = 0,
                    },
                },
            },
        },
        CloudBackup = true,
        AutoScalingDiskGbEnabled = true,
        MongoDbMajorVersion = "7.0",
        ProviderName = "GCP",
        ProviderInstanceSizeName = "M30",
    });

});
Copy
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()
            .projectId("<YOUR-PROJECT-ID>")
            .name("test")
            .clusterType("REPLICASET")
            .replicationSpecs(ClusterReplicationSpecArgs.builder()
                .numShards(1)
                .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                    .regionName("EASTERN_US")
                    .electableNodes(3)
                    .priority(7)
                    .readOnlyNodes(0)
                    .build())
                .build())
            .cloudBackup(true)
            .autoScalingDiskGbEnabled(true)
            .mongoDbMajorVersion("7.0")
            .providerName("GCP")
            .providerInstanceSizeName("M30")
            .build());

    }
}
Copy
resources:
  test:
    type: mongodbatlas:Cluster
    properties:
      projectId: <YOUR-PROJECT-ID>
      name: test
      clusterType: REPLICASET
      replicationSpecs:
        - numShards: 1
          regionsConfigs:
            - regionName: EASTERN_US
              electableNodes: 3
              priority: 7
              readOnlyNodes: 0
      cloudBackup: true
      autoScalingDiskGbEnabled: true
      mongoDbMajorVersion: '7.0'
      providerName: GCP
      providerInstanceSizeName: M30
Copy

Example Multi Region cluster

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const cluster_test = new mongodbatlas.Cluster("cluster-test", {
    projectId: "<YOUR-PROJECT-ID>",
    name: "cluster-test-multi-region",
    numShards: 1,
    cloudBackup: true,
    clusterType: "REPLICASET",
    providerName: "AWS",
    providerInstanceSizeName: "M10",
    replicationSpecs: [{
        numShards: 1,
        regionsConfigs: [
            {
                regionName: "US_EAST_1",
                electableNodes: 3,
                priority: 7,
                readOnlyNodes: 0,
            },
            {
                regionName: "US_EAST_2",
                electableNodes: 2,
                priority: 6,
                readOnlyNodes: 0,
            },
            {
                regionName: "US_WEST_1",
                electableNodes: 2,
                priority: 5,
                readOnlyNodes: 2,
            },
        ],
    }],
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

cluster_test = mongodbatlas.Cluster("cluster-test",
    project_id="<YOUR-PROJECT-ID>",
    name="cluster-test-multi-region",
    num_shards=1,
    cloud_backup=True,
    cluster_type="REPLICASET",
    provider_name="AWS",
    provider_instance_size_name="M10",
    replication_specs=[{
        "num_shards": 1,
        "regions_configs": [
            {
                "region_name": "US_EAST_1",
                "electable_nodes": 3,
                "priority": 7,
                "read_only_nodes": 0,
            },
            {
                "region_name": "US_EAST_2",
                "electable_nodes": 2,
                "priority": 6,
                "read_only_nodes": 0,
            },
            {
                "region_name": "US_WEST_1",
                "electable_nodes": 2,
                "priority": 5,
                "read_only_nodes": 2,
            },
        ],
    }])
Copy
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{
			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
			Name:                     pulumi.String("cluster-test-multi-region"),
			NumShards:                pulumi.Int(1),
			CloudBackup:              pulumi.Bool(true),
			ClusterType:              pulumi.String("REPLICASET"),
			ProviderName:             pulumi.String("AWS"),
			ProviderInstanceSizeName: pulumi.String("M10"),
			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
				&mongodbatlas.ClusterReplicationSpecArgs{
					NumShards: pulumi.Int(1),
					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("US_EAST_1"),
							ElectableNodes: pulumi.Int(3),
							Priority:       pulumi.Int(7),
							ReadOnlyNodes:  pulumi.Int(0),
						},
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("US_EAST_2"),
							ElectableNodes: pulumi.Int(2),
							Priority:       pulumi.Int(6),
							ReadOnlyNodes:  pulumi.Int(0),
						},
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("US_WEST_1"),
							ElectableNodes: pulumi.Int(2),
							Priority:       pulumi.Int(5),
							ReadOnlyNodes:  pulumi.Int(2),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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()
    {
        ProjectId = "<YOUR-PROJECT-ID>",
        Name = "cluster-test-multi-region",
        NumShards = 1,
        CloudBackup = true,
        ClusterType = "REPLICASET",
        ProviderName = "AWS",
        ProviderInstanceSizeName = "M10",
        ReplicationSpecs = new[]
        {
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                NumShards = 1,
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "US_EAST_1",
                        ElectableNodes = 3,
                        Priority = 7,
                        ReadOnlyNodes = 0,
                    },
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "US_EAST_2",
                        ElectableNodes = 2,
                        Priority = 6,
                        ReadOnlyNodes = 0,
                    },
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "US_WEST_1",
                        ElectableNodes = 2,
                        Priority = 5,
                        ReadOnlyNodes = 2,
                    },
                },
            },
        },
    });

});
Copy
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()
            .projectId("<YOUR-PROJECT-ID>")
            .name("cluster-test-multi-region")
            .numShards(1)
            .cloudBackup(true)
            .clusterType("REPLICASET")
            .providerName("AWS")
            .providerInstanceSizeName("M10")
            .replicationSpecs(ClusterReplicationSpecArgs.builder()
                .numShards(1)
                .regionsConfigs(                
                    ClusterReplicationSpecRegionsConfigArgs.builder()
                        .regionName("US_EAST_1")
                        .electableNodes(3)
                        .priority(7)
                        .readOnlyNodes(0)
                        .build(),
                    ClusterReplicationSpecRegionsConfigArgs.builder()
                        .regionName("US_EAST_2")
                        .electableNodes(2)
                        .priority(6)
                        .readOnlyNodes(0)
                        .build(),
                    ClusterReplicationSpecRegionsConfigArgs.builder()
                        .regionName("US_WEST_1")
                        .electableNodes(2)
                        .priority(5)
                        .readOnlyNodes(2)
                        .build())
                .build())
            .build());

    }
}
Copy
resources:
  cluster-test:
    type: mongodbatlas:Cluster
    properties:
      projectId: <YOUR-PROJECT-ID>
      name: cluster-test-multi-region
      numShards: 1
      cloudBackup: true
      clusterType: REPLICASET
      providerName: AWS
      providerInstanceSizeName: M10
      replicationSpecs:
        - numShards: 1
          regionsConfigs:
            - regionName: US_EAST_1
              electableNodes: 3
              priority: 7
              readOnlyNodes: 0
            - regionName: US_EAST_2
              electableNodes: 2
              priority: 6
              readOnlyNodes: 0
            - regionName: US_WEST_1
              electableNodes: 2
              priority: 5
              readOnlyNodes: 2
Copy

Example Global cluster

import * as pulumi from "@pulumi/pulumi";
import * as mongodbatlas from "@pulumi/mongodbatlas";

const cluster_test = new mongodbatlas.Cluster("cluster-test", {
    projectId: "<YOUR-PROJECT-ID>",
    name: "cluster-test-global",
    numShards: 1,
    cloudBackup: true,
    clusterType: "GEOSHARDED",
    providerName: "AWS",
    providerInstanceSizeName: "M30",
    replicationSpecs: [
        {
            zoneName: "Zone 1",
            numShards: 2,
            regionsConfigs: [{
                regionName: "US_EAST_1",
                electableNodes: 3,
                priority: 7,
                readOnlyNodes: 0,
            }],
        },
        {
            zoneName: "Zone 2",
            numShards: 2,
            regionsConfigs: [{
                regionName: "EU_CENTRAL_1",
                electableNodes: 3,
                priority: 7,
                readOnlyNodes: 0,
            }],
        },
    ],
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

cluster_test = mongodbatlas.Cluster("cluster-test",
    project_id="<YOUR-PROJECT-ID>",
    name="cluster-test-global",
    num_shards=1,
    cloud_backup=True,
    cluster_type="GEOSHARDED",
    provider_name="AWS",
    provider_instance_size_name="M30",
    replication_specs=[
        {
            "zone_name": "Zone 1",
            "num_shards": 2,
            "regions_configs": [{
                "region_name": "US_EAST_1",
                "electable_nodes": 3,
                "priority": 7,
                "read_only_nodes": 0,
            }],
        },
        {
            "zone_name": "Zone 2",
            "num_shards": 2,
            "regions_configs": [{
                "region_name": "EU_CENTRAL_1",
                "electable_nodes": 3,
                "priority": 7,
                "read_only_nodes": 0,
            }],
        },
    ])
Copy
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{
			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
			Name:                     pulumi.String("cluster-test-global"),
			NumShards:                pulumi.Int(1),
			CloudBackup:              pulumi.Bool(true),
			ClusterType:              pulumi.String("GEOSHARDED"),
			ProviderName:             pulumi.String("AWS"),
			ProviderInstanceSizeName: pulumi.String("M30"),
			ReplicationSpecs: mongodbatlas.ClusterReplicationSpecArray{
				&mongodbatlas.ClusterReplicationSpecArgs{
					ZoneName:  pulumi.String("Zone 1"),
					NumShards: pulumi.Int(2),
					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("US_EAST_1"),
							ElectableNodes: pulumi.Int(3),
							Priority:       pulumi.Int(7),
							ReadOnlyNodes:  pulumi.Int(0),
						},
					},
				},
				&mongodbatlas.ClusterReplicationSpecArgs{
					ZoneName:  pulumi.String("Zone 2"),
					NumShards: pulumi.Int(2),
					RegionsConfigs: mongodbatlas.ClusterReplicationSpecRegionsConfigArray{
						&mongodbatlas.ClusterReplicationSpecRegionsConfigArgs{
							RegionName:     pulumi.String("EU_CENTRAL_1"),
							ElectableNodes: pulumi.Int(3),
							Priority:       pulumi.Int(7),
							ReadOnlyNodes:  pulumi.Int(0),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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()
    {
        ProjectId = "<YOUR-PROJECT-ID>",
        Name = "cluster-test-global",
        NumShards = 1,
        CloudBackup = true,
        ClusterType = "GEOSHARDED",
        ProviderName = "AWS",
        ProviderInstanceSizeName = "M30",
        ReplicationSpecs = new[]
        {
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                ZoneName = "Zone 1",
                NumShards = 2,
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "US_EAST_1",
                        ElectableNodes = 3,
                        Priority = 7,
                        ReadOnlyNodes = 0,
                    },
                },
            },
            new Mongodbatlas.Inputs.ClusterReplicationSpecArgs
            {
                ZoneName = "Zone 2",
                NumShards = 2,
                RegionsConfigs = new[]
                {
                    new Mongodbatlas.Inputs.ClusterReplicationSpecRegionsConfigArgs
                    {
                        RegionName = "EU_CENTRAL_1",
                        ElectableNodes = 3,
                        Priority = 7,
                        ReadOnlyNodes = 0,
                    },
                },
            },
        },
    });

});
Copy
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()
            .projectId("<YOUR-PROJECT-ID>")
            .name("cluster-test-global")
            .numShards(1)
            .cloudBackup(true)
            .clusterType("GEOSHARDED")
            .providerName("AWS")
            .providerInstanceSizeName("M30")
            .replicationSpecs(            
                ClusterReplicationSpecArgs.builder()
                    .zoneName("Zone 1")
                    .numShards(2)
                    .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                        .regionName("US_EAST_1")
                        .electableNodes(3)
                        .priority(7)
                        .readOnlyNodes(0)
                        .build())
                    .build(),
                ClusterReplicationSpecArgs.builder()
                    .zoneName("Zone 2")
                    .numShards(2)
                    .regionsConfigs(ClusterReplicationSpecRegionsConfigArgs.builder()
                        .regionName("EU_CENTRAL_1")
                        .electableNodes(3)
                        .priority(7)
                        .readOnlyNodes(0)
                        .build())
                    .build())
            .build());

    }
}
Copy
resources:
  cluster-test:
    type: mongodbatlas:Cluster
    properties:
      projectId: <YOUR-PROJECT-ID>
      name: cluster-test-global
      numShards: 1
      cloudBackup: true
      clusterType: GEOSHARDED
      providerName: AWS
      providerInstanceSizeName: M30
      replicationSpecs:
        - zoneName: Zone 1
          numShards: 2
          regionsConfigs:
            - regionName: US_EAST_1
              electableNodes: 3
              priority: 7
              readOnlyNodes: 0
        - zoneName: Zone 2
          numShards: 2
          regionsConfigs:
            - regionName: EU_CENTRAL_1
              electableNodes: 3
              priority: 7
              readOnlyNodes: 0
Copy

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", {
    projectId: "<YOUR-PROJECT-ID>",
    name: "cluster-test-global",
    providerName: "TENANT",
    backingProviderName: "AWS",
    providerRegionName: "US_EAST_1",
    providerInstanceSizeName: "M0",
});
Copy
import pulumi
import pulumi_mongodbatlas as mongodbatlas

cluster_test = mongodbatlas.Cluster("cluster-test",
    project_id="<YOUR-PROJECT-ID>",
    name="cluster-test-global",
    provider_name="TENANT",
    backing_provider_name="AWS",
    provider_region_name="US_EAST_1",
    provider_instance_size_name="M0")
Copy
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{
			ProjectId:                pulumi.String("<YOUR-PROJECT-ID>"),
			Name:                     pulumi.String("cluster-test-global"),
			ProviderName:             pulumi.String("TENANT"),
			BackingProviderName:      pulumi.String("AWS"),
			ProviderRegionName:       pulumi.String("US_EAST_1"),
			ProviderInstanceSizeName: pulumi.String("M0"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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()
    {
        ProjectId = "<YOUR-PROJECT-ID>",
        Name = "cluster-test-global",
        ProviderName = "TENANT",
        BackingProviderName = "AWS",
        ProviderRegionName = "US_EAST_1",
        ProviderInstanceSizeName = "M0",
    });

});
Copy
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()
            .projectId("<YOUR-PROJECT-ID>")
            .name("cluster-test-global")
            .providerName("TENANT")
            .backingProviderName("AWS")
            .providerRegionName("US_EAST_1")
            .providerInstanceSizeName("M0")
            .build());

    }
}
Copy
resources:
  cluster-test:
    type: mongodbatlas:Cluster
    properties:
      projectId: <YOUR-PROJECT-ID>
      name: cluster-test-global
      providerName: TENANT
      backingProviderName: AWS
      providerRegionName: US_EAST_1
      providerInstanceSizeName: M0
Copy

Example - Return a Connection String

Standard

import * as pulumi from "@pulumi/pulumi";

export const standard = cluster_test.connectionStrings[0].standard;
Copy
import pulumi

pulumi.export("standard", cluster_test["connectionStrings"][0]["standard"])
Copy
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ctx.Export("standard", cluster_test.ConnectionStrings[0].Standard)
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;

return await Deployment.RunAsync(() => 
{
    return new Dictionary<string, object?>
    {
        ["standard"] = cluster_test.ConnectionStrings[0].Standard,
    };
});
Copy
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", cluster_test.connectionStrings()[0].standard());
    }
}
Copy
outputs:
  standard: ${["cluster-test"].connectionStrings[0].standard}
Copy

Standard srv

import * as pulumi from "@pulumi/pulumi";

export const standardSrv = cluster_test.connectionStrings[0].standardSrv;
Copy
import pulumi

pulumi.export("standardSrv", cluster_test["connectionStrings"][0]["standardSrv"])
Copy
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ctx.Export("standardSrv", cluster_test.ConnectionStrings[0].StandardSrv)
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;

return await Deployment.RunAsync(() => 
{
    return new Dictionary<string, object?>
    {
        ["standardSrv"] = cluster_test.ConnectionStrings[0].StandardSrv,
    };
});
Copy
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", cluster_test.connectionStrings()[0].standardSrv());
    }
}
Copy
outputs:
  standardSrv: ${["cluster-test"].connectionStrings[0].standardSrv}
Copy

Private with Network peering and Custom DNS AWS enabled

import * as pulumi from "@pulumi/pulumi";

export = async () => {
    return {
        "private": cluster_test.connectionStrings[0]["private"],
    };
}
Copy
import pulumi

pulumi.export("private", cluster_test["connectionStrings"][0]["private"])
Copy
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ctx.Export("private", cluster_test.ConnectionStrings[0].Private)
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;

return await Deployment.RunAsync(() => 
{
    return new Dictionary<string, object?>
    {
        ["private"] = cluster_test.ConnectionStrings[0].Private,
    };
});
Copy
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", cluster_test.connectionStrings()[0].private());
    }
}
Copy
outputs:
  private: ${["cluster-test"].connectionStrings[0].private}
Copy

Private srv with Network peering and Custom DNS AWS enabled

import * as pulumi from "@pulumi/pulumi";

export const privateSrv = cluster_test.connectionStrings[0].privateSrv;
Copy
import pulumi

pulumi.export("privateSrv", cluster_test["connectionStrings"][0]["privateSrv"])
Copy
package main

import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ctx.Export("privateSrv", cluster_test.ConnectionStrings[0].PrivateSrv)
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;

return await Deployment.RunAsync(() => 
{
    return new Dictionary<string, object?>
    {
        ["privateSrv"] = cluster_test.ConnectionStrings[0].PrivateSrv,
    };
});
Copy
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", cluster_test.connectionStrings()[0].privateSrv());
    }
}
Copy
outputs:
  privateSrv: ${["cluster-test"].connectionStrings[0].privateSrv}
Copy

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
Copy

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,
            pit_enabled: Optional[bool] = None,
            provider_auto_scaling_compute_max_instance_size: Optional[str] = None,
            backing_provider_name: Optional[str] = None,
            backup_enabled: Optional[bool] = None,
            bi_connector_config: Optional[ClusterBiConnectorConfigArgs] = None,
            cloud_backup: Optional[bool] = 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,
            pinned_fcv: Optional[ClusterPinnedFcvArgs] = None,
            accept_data_risks_and_force_replica_set_reconfig: Optional[str] = None,
            auto_scaling_disk_gb_enabled: Optional[bool] = None,
            provider_auto_scaling_compute_min_instance_size: Optional[str] = None,
            auto_scaling_compute_scale_down_enabled: Optional[bool] = 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,
            redact_client_log_data: Optional[bool] = 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,
            version_release_system: Optional[str] = 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 This property is required. string
The unique name of the resource.
args This property is required. ClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. 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 This property is required. string
The unique name of the resource.
args This property is required. ClusterArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. ClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ClusterArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor 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",
    PitEnabled = false,
    ProviderAutoScalingComputeMaxInstanceSize = "string",
    BackingProviderName = "string",
    BackupEnabled = false,
    BiConnectorConfig = new Mongodbatlas.Inputs.ClusterBiConnectorConfigArgs
    {
        Enabled = false,
        ReadPreference = "string",
    },
    CloudBackup = false,
    ClusterType = "string",
    DiskSizeGb = 0,
    EncryptionAtRestProvider = "string",
    Labels = new[]
    {
        new Mongodbatlas.Inputs.ClusterLabelArgs
        {
            Key = "string",
            Value = "string",
        },
    },
    MongoDbMajorVersion = "string",
    Name = "string",
    NumShards = 0,
    Paused = false,
    PinnedFcv = new Mongodbatlas.Inputs.ClusterPinnedFcvArgs
    {
        ExpirationDate = "string",
        Version = "string",
    },
    AcceptDataRisksAndForceReplicaSetReconfig = "string",
    AutoScalingDiskGbEnabled = false,
    ProviderAutoScalingComputeMinInstanceSize = "string",
    AutoScalingComputeScaleDownEnabled = false,
    ProviderDiskIops = 0,
    ProviderDiskTypeName = "string",
    AutoScalingComputeEnabled = false,
    AdvancedConfiguration = new Mongodbatlas.Inputs.ClusterAdvancedConfigurationArgs
    {
        ChangeStreamOptionsPreAndPostImagesExpireAfterSeconds = 0,
        CustomOpensslCipherConfigTls12s = new[]
        {
            "string",
        },
        DefaultMaxTimeMs = 0,
        DefaultWriteConcern = "string",
        JavascriptEnabled = false,
        MinimumEnabledTlsProtocol = "string",
        NoTableScan = false,
        OplogMinRetentionHours = 0,
        OplogSizeMb = 0,
        SampleRefreshIntervalBiConnector = 0,
        SampleSizeBiConnector = 0,
        TlsCipherConfigMode = "string",
        TransactionLifetimeLimitSeconds = 0,
    },
    ProviderRegionName = "string",
    ProviderVolumeType = "string",
    RedactClientLogData = false,
    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,
    VersionReleaseSystem = "string",
});
Copy
example, err := mongodbatlas.NewCluster(ctx, "clusterResource", &mongodbatlas.ClusterArgs{
	ProjectId:                pulumi.String("string"),
	ProviderName:             pulumi.String("string"),
	ProviderInstanceSizeName: pulumi.String("string"),
	PitEnabled:               pulumi.Bool(false),
	ProviderAutoScalingComputeMaxInstanceSize: pulumi.String("string"),
	BackingProviderName:                       pulumi.String("string"),
	BackupEnabled:                             pulumi.Bool(false),
	BiConnectorConfig: &mongodbatlas.ClusterBiConnectorConfigArgs{
		Enabled:        pulumi.Bool(false),
		ReadPreference: pulumi.String("string"),
	},
	CloudBackup:              pulumi.Bool(false),
	ClusterType:              pulumi.String("string"),
	DiskSizeGb:               pulumi.Float64(0),
	EncryptionAtRestProvider: pulumi.String("string"),
	Labels: mongodbatlas.ClusterLabelArray{
		&mongodbatlas.ClusterLabelArgs{
			Key:   pulumi.String("string"),
			Value: pulumi.String("string"),
		},
	},
	MongoDbMajorVersion: pulumi.String("string"),
	Name:                pulumi.String("string"),
	NumShards:           pulumi.Int(0),
	Paused:              pulumi.Bool(false),
	PinnedFcv: &mongodbatlas.ClusterPinnedFcvArgs{
		ExpirationDate: pulumi.String("string"),
		Version:        pulumi.String("string"),
	},
	AcceptDataRisksAndForceReplicaSetReconfig: pulumi.String("string"),
	AutoScalingDiskGbEnabled:                  pulumi.Bool(false),
	ProviderAutoScalingComputeMinInstanceSize: pulumi.String("string"),
	AutoScalingComputeScaleDownEnabled:        pulumi.Bool(false),
	ProviderDiskIops:                          pulumi.Int(0),
	ProviderDiskTypeName:                      pulumi.String("string"),
	AutoScalingComputeEnabled:                 pulumi.Bool(false),
	AdvancedConfiguration: &mongodbatlas.ClusterAdvancedConfigurationArgs{
		ChangeStreamOptionsPreAndPostImagesExpireAfterSeconds: pulumi.Int(0),
		CustomOpensslCipherConfigTls12s: pulumi.StringArray{
			pulumi.String("string"),
		},
		DefaultMaxTimeMs:                 pulumi.Int(0),
		DefaultWriteConcern:              pulumi.String("string"),
		JavascriptEnabled:                pulumi.Bool(false),
		MinimumEnabledTlsProtocol:        pulumi.String("string"),
		NoTableScan:                      pulumi.Bool(false),
		OplogMinRetentionHours:           pulumi.Float64(0),
		OplogSizeMb:                      pulumi.Int(0),
		SampleRefreshIntervalBiConnector: pulumi.Int(0),
		SampleSizeBiConnector:            pulumi.Int(0),
		TlsCipherConfigMode:              pulumi.String("string"),
		TransactionLifetimeLimitSeconds:  pulumi.Int(0),
	},
	ProviderRegionName:  pulumi.String("string"),
	ProviderVolumeType:  pulumi.String("string"),
	RedactClientLogData: pulumi.Bool(false),
	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),
	VersionReleaseSystem:         pulumi.String("string"),
})
Copy
var clusterResource = new Cluster("clusterResource", ClusterArgs.builder()
    .projectId("string")
    .providerName("string")
    .providerInstanceSizeName("string")
    .pitEnabled(false)
    .providerAutoScalingComputeMaxInstanceSize("string")
    .backingProviderName("string")
    .backupEnabled(false)
    .biConnectorConfig(ClusterBiConnectorConfigArgs.builder()
        .enabled(false)
        .readPreference("string")
        .build())
    .cloudBackup(false)
    .clusterType("string")
    .diskSizeGb(0)
    .encryptionAtRestProvider("string")
    .labels(ClusterLabelArgs.builder()
        .key("string")
        .value("string")
        .build())
    .mongoDbMajorVersion("string")
    .name("string")
    .numShards(0)
    .paused(false)
    .pinnedFcv(ClusterPinnedFcvArgs.builder()
        .expirationDate("string")
        .version("string")
        .build())
    .acceptDataRisksAndForceReplicaSetReconfig("string")
    .autoScalingDiskGbEnabled(false)
    .providerAutoScalingComputeMinInstanceSize("string")
    .autoScalingComputeScaleDownEnabled(false)
    .providerDiskIops(0)
    .providerDiskTypeName("string")
    .autoScalingComputeEnabled(false)
    .advancedConfiguration(ClusterAdvancedConfigurationArgs.builder()
        .changeStreamOptionsPreAndPostImagesExpireAfterSeconds(0)
        .customOpensslCipherConfigTls12s("string")
        .defaultMaxTimeMs(0)
        .defaultWriteConcern("string")
        .javascriptEnabled(false)
        .minimumEnabledTlsProtocol("string")
        .noTableScan(false)
        .oplogMinRetentionHours(0)
        .oplogSizeMb(0)
        .sampleRefreshIntervalBiConnector(0)
        .sampleSizeBiConnector(0)
        .tlsCipherConfigMode("string")
        .transactionLifetimeLimitSeconds(0)
        .build())
    .providerRegionName("string")
    .providerVolumeType("string")
    .redactClientLogData(false)
    .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)
    .versionReleaseSystem("string")
    .build());
Copy
cluster_resource = mongodbatlas.Cluster("clusterResource",
    project_id="string",
    provider_name="string",
    provider_instance_size_name="string",
    pit_enabled=False,
    provider_auto_scaling_compute_max_instance_size="string",
    backing_provider_name="string",
    backup_enabled=False,
    bi_connector_config={
        "enabled": False,
        "read_preference": "string",
    },
    cloud_backup=False,
    cluster_type="string",
    disk_size_gb=0,
    encryption_at_rest_provider="string",
    labels=[{
        "key": "string",
        "value": "string",
    }],
    mongo_db_major_version="string",
    name="string",
    num_shards=0,
    paused=False,
    pinned_fcv={
        "expiration_date": "string",
        "version": "string",
    },
    accept_data_risks_and_force_replica_set_reconfig="string",
    auto_scaling_disk_gb_enabled=False,
    provider_auto_scaling_compute_min_instance_size="string",
    auto_scaling_compute_scale_down_enabled=False,
    provider_disk_iops=0,
    provider_disk_type_name="string",
    auto_scaling_compute_enabled=False,
    advanced_configuration={
        "change_stream_options_pre_and_post_images_expire_after_seconds": 0,
        "custom_openssl_cipher_config_tls12s": ["string"],
        "default_max_time_ms": 0,
        "default_write_concern": "string",
        "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,
        "tls_cipher_config_mode": "string",
        "transaction_lifetime_limit_seconds": 0,
    },
    provider_region_name="string",
    provider_volume_type="string",
    redact_client_log_data=False,
    replication_factor=0,
    replication_specs=[{
        "num_shards": 0,
        "id": "string",
        "regions_configs": [{
            "region_name": "string",
            "analytics_nodes": 0,
            "electable_nodes": 0,
            "priority": 0,
            "read_only_nodes": 0,
        }],
        "zone_name": "string",
    }],
    retain_backups_enabled=False,
    tags=[{
        "key": "string",
        "value": "string",
    }],
    termination_protection_enabled=False,
    version_release_system="string")
Copy
const clusterResource = new mongodbatlas.Cluster("clusterResource", {
    projectId: "string",
    providerName: "string",
    providerInstanceSizeName: "string",
    pitEnabled: false,
    providerAutoScalingComputeMaxInstanceSize: "string",
    backingProviderName: "string",
    backupEnabled: false,
    biConnectorConfig: {
        enabled: false,
        readPreference: "string",
    },
    cloudBackup: false,
    clusterType: "string",
    diskSizeGb: 0,
    encryptionAtRestProvider: "string",
    labels: [{
        key: "string",
        value: "string",
    }],
    mongoDbMajorVersion: "string",
    name: "string",
    numShards: 0,
    paused: false,
    pinnedFcv: {
        expirationDate: "string",
        version: "string",
    },
    acceptDataRisksAndForceReplicaSetReconfig: "string",
    autoScalingDiskGbEnabled: false,
    providerAutoScalingComputeMinInstanceSize: "string",
    autoScalingComputeScaleDownEnabled: false,
    providerDiskIops: 0,
    providerDiskTypeName: "string",
    autoScalingComputeEnabled: false,
    advancedConfiguration: {
        changeStreamOptionsPreAndPostImagesExpireAfterSeconds: 0,
        customOpensslCipherConfigTls12s: ["string"],
        defaultMaxTimeMs: 0,
        defaultWriteConcern: "string",
        javascriptEnabled: false,
        minimumEnabledTlsProtocol: "string",
        noTableScan: false,
        oplogMinRetentionHours: 0,
        oplogSizeMb: 0,
        sampleRefreshIntervalBiConnector: 0,
        sampleSizeBiConnector: 0,
        tlsCipherConfigMode: "string",
        transactionLifetimeLimitSeconds: 0,
    },
    providerRegionName: "string",
    providerVolumeType: "string",
    redactClientLogData: false,
    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,
    versionReleaseSystem: "string",
});
Copy
type: mongodbatlas:Cluster
properties:
    acceptDataRisksAndForceReplicaSetReconfig: string
    advancedConfiguration:
        changeStreamOptionsPreAndPostImagesExpireAfterSeconds: 0
        customOpensslCipherConfigTls12s:
            - string
        defaultMaxTimeMs: 0
        defaultWriteConcern: string
        javascriptEnabled: false
        minimumEnabledTlsProtocol: string
        noTableScan: false
        oplogMinRetentionHours: 0
        oplogSizeMb: 0
        sampleRefreshIntervalBiConnector: 0
        sampleSizeBiConnector: 0
        tlsCipherConfigMode: string
        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
    labels:
        - key: string
          value: string
    mongoDbMajorVersion: string
    name: string
    numShards: 0
    paused: false
    pinnedFcv:
        expirationDate: string
        version: string
    pitEnabled: false
    projectId: string
    providerAutoScalingComputeMaxInstanceSize: string
    providerAutoScalingComputeMinInstanceSize: string
    providerDiskIops: 0
    providerDiskTypeName: string
    providerInstanceSizeName: string
    providerName: string
    providerRegionName: string
    providerVolumeType: string
    redactClientLogData: false
    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
Copy

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

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Cluster resource accepts the following input properties:

ProjectId
This property is required.
Changes to this property will trigger replacement.
string
The unique ID for the project to create the cluster.
ProviderInstanceSizeName This property is required. 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 This property is required. string

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
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.
MongoDbMajorVersion string
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
Name Changes to this property will trigger replacement. 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
PinnedFcv ClusterPinnedFcv
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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.

RedactClientLogData bool
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
ProjectId
This property is required.
Changes to this property will trigger replacement.
string
The unique ID for the project to create the cluster.
ProviderInstanceSizeName This property is required. 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 This property is required. string

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
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.
MongoDbMajorVersion string
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
Name Changes to this property will trigger replacement. 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
PinnedFcv ClusterPinnedFcvArgs
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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.

RedactClientLogData bool
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
projectId
This property is required.
Changes to this property will trigger replacement.
String
The unique ID for the project to create the cluster.
providerInstanceSizeName This property is required. 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 This property is required. String

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
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.
mongoDbMajorVersion String
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
name Changes to this property will trigger replacement. 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
pinnedFcv ClusterPinnedFcv
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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.

redactClientLogData Boolean
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
projectId
This property is required.
Changes to this property will trigger replacement.
string
The unique ID for the project to create the cluster.
providerInstanceSizeName This property is required. 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 This property is required. string

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
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.
mongoDbMajorVersion string
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
name Changes to this property will trigger replacement. 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
pinnedFcv ClusterPinnedFcv
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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.

redactClientLogData boolean
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
project_id
This property is required.
Changes to this property will trigger replacement.
str
The unique ID for the project to create the cluster.
provider_instance_size_name This property is required. 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 This property is required. str

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
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.
mongo_db_major_version str
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
name Changes to this property will trigger replacement. 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
pinned_fcv ClusterPinnedFcvArgs
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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.

redact_client_log_data bool
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
projectId
This property is required.
Changes to this property will trigger replacement.
String
The unique ID for the project to create the cluster.
providerInstanceSizeName This property is required. 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 This property is required. String

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
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.
mongoDbMajorVersion String
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. Atlas always deploys the cluster with the latest stable release of the specified version. See Release Notes for latest Current Stable Release.
name Changes to this property will trigger replacement. 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
pinnedFcv Property Map
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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.

redactClientLogData Boolean
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.

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 information 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 information 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 information 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 information 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 information 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 information 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,
        pinned_fcv: Optional[ClusterPinnedFcvArgs] = 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,
        redact_client_log_data: Optional[bool] = 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)
resources:  _:    type: mongodbatlas:Cluster    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
ConnectionStrings List<ClusterConnectionString>
Set of connection strings that your applications use to connect to this cluster. More information 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.
MongoDbMajorVersion string
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. 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 Changes to this property will trigger replacement. 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
PinnedFcv ClusterPinnedFcv
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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 Changes to this property will trigger replacement. string
The unique ID for the project to create the cluster.
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:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

RedactClientLogData bool
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
ConnectionStrings []ClusterConnectionStringArgs
Set of connection strings that your applications use to connect to this cluster. More information 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.
MongoDbMajorVersion string
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. 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 Changes to this property will trigger replacement. 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
PinnedFcv ClusterPinnedFcvArgs
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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 Changes to this property will trigger replacement. string
The unique ID for the project to create the cluster.
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:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

RedactClientLogData bool
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
connectionStrings List<ClusterConnectionString>
Set of connection strings that your applications use to connect to this cluster. More information 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.
mongoDbMajorVersion String
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. 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 Changes to this property will trigger replacement. 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
pinnedFcv ClusterPinnedFcv
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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 Changes to this property will trigger replacement. String
The unique ID for the project to create the cluster.
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:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

redactClientLogData Boolean
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
connectionStrings ClusterConnectionString[]
Set of connection strings that your applications use to connect to this cluster. More information 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.
mongoDbMajorVersion string
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. 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 Changes to this property will trigger replacement. 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
pinnedFcv ClusterPinnedFcv
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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 Changes to this property will trigger replacement. string
The unique ID for the project to create the cluster.
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:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

redactClientLogData boolean
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
connection_strings Sequence[ClusterConnectionStringArgs]
Set of connection strings that your applications use to connect to this cluster. More information 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.
mongo_db_major_version str
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. 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 Changes to this property will trigger replacement. 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
pinned_fcv ClusterPinnedFcvArgs
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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 Changes to this property will trigger replacement. str
The unique ID for the project to create the cluster.
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:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

redact_client_log_data bool
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.
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 M0.

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.
backup_enabled = "false"
cloud_backup = "true"
  • 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:

  • REPLICASET Replica set
  • SHARDED Sharded cluster
  • GEOSHARDED Global Cluster
connectionStrings List<Property Map>
Set of connection strings that your applications use to connect to this cluster. More information 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.
mongoDbMajorVersion String
Version of the cluster to deploy. Atlas supports all the MongoDB versions that have not reached End of Live for M10+ clusters. If omitted, Atlas deploys the cluster with the default version. For more details, see documentation. 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 Changes to this property will trigger replacement. 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
pinnedFcv Property Map
Pins the Feature Compatibility Version (FCV) to the current MongoDB version with a provided expiration date. To unpin the FCV the pinned_fcv attribute must be removed. This operation can take several minutes as the request processes through the MongoDB data plane. Once FCV is unpinned it will not be possible to downgrade the mongo_db_major_version. It is advised that updates to pinned_fcv are done isolated from other cluster changes. If a plan contains multiple changes, the FCV change will be applied first. If FCV is unpinned past the expiration date the pinned_fcv attribute must be removed. The following knowledge hub article and FCV documentation can be referenced for more details. See below.
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 Changes to this property will trigger replacement. String
The unique ID for the project to create the cluster.
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:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

redactClientLogData Boolean
Flag that enables or disables log redaction, see the manual for more information. Use this in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements. Note: Changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated. The log redaction field is updated via an Atlas API call after cluster creation. Consequently, there may be a brief period during resource creation when log redaction is not yet enabled. To ensure complete log redaction from the outset, use mongodbatlas.AdvancedCluster.
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:

  • CONTINUOUS: Atlas creates your cluster using the most recent MongoDB release. Atlas automatically updates your cluster to the latest major and rapid MongoDB releases as they become available.
  • LTS: Atlas creates your cluster using the latest patch release of the MongoDB version that you specify in the mongoDBMajorVersion field. Atlas automatically updates your cluster to subsequent patch releases of this MongoDB version. Atlas doesn't update your cluster to newer rapid or major MongoDB releases as they become available.

Supporting Types

ClusterAdvancedConfiguration
, ClusterAdvancedConfigurationArgs

ChangeStreamOptionsPreAndPostImagesExpireAfterSeconds int
The minimum pre- and post-image retention time in seconds. This option corresponds to the changeStreamOptions.preAndPostImages.expireAfterSeconds cluster parameter. Defaults to -1(off). This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively.expireAfterSeconds controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. This parameter is only supported for MongoDB version 6.0 and above.
CustomOpensslCipherConfigTls12s List<string>
The custom OpenSSL cipher suite list for TLS 1.2. This field is only valid when tls_cipher_config_mode is set to CUSTOM.
DefaultMaxTimeMs int
DefaultReadConcern string
Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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 double
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.
TlsCipherConfigMode string
The TLS cipher suite configuration mode. Valid values include CUSTOM or DEFAULT. The DEFAULT mode uses the default cipher suites. The CUSTOM mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3. To unset, this should be set back to DEFAULT.
TransactionLifetimeLimitSeconds int
Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
ChangeStreamOptionsPreAndPostImagesExpireAfterSeconds int
The minimum pre- and post-image retention time in seconds. This option corresponds to the changeStreamOptions.preAndPostImages.expireAfterSeconds cluster parameter. Defaults to -1(off). This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively.expireAfterSeconds controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. This parameter is only supported for MongoDB version 6.0 and above.
CustomOpensslCipherConfigTls12s []string
The custom OpenSSL cipher suite list for TLS 1.2. This field is only valid when tls_cipher_config_mode is set to CUSTOM.
DefaultMaxTimeMs int
DefaultReadConcern string
Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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 float64
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.
TlsCipherConfigMode string
The TLS cipher suite configuration mode. Valid values include CUSTOM or DEFAULT. The DEFAULT mode uses the default cipher suites. The CUSTOM mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3. To unset, this should be set back to DEFAULT.
TransactionLifetimeLimitSeconds int
Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
changeStreamOptionsPreAndPostImagesExpireAfterSeconds Integer
The minimum pre- and post-image retention time in seconds. This option corresponds to the changeStreamOptions.preAndPostImages.expireAfterSeconds cluster parameter. Defaults to -1(off). This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively.expireAfterSeconds controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. This parameter is only supported for MongoDB version 6.0 and above.
customOpensslCipherConfigTls12s List<String>
The custom OpenSSL cipher suite list for TLS 1.2. This field is only valid when tls_cipher_config_mode is set to CUSTOM.
defaultMaxTimeMs Integer
defaultReadConcern String
Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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 Double
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.
tlsCipherConfigMode String
The TLS cipher suite configuration mode. Valid values include CUSTOM or DEFAULT. The DEFAULT mode uses the default cipher suites. The CUSTOM mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3. To unset, this should be set back to DEFAULT.
transactionLifetimeLimitSeconds Integer
Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
changeStreamOptionsPreAndPostImagesExpireAfterSeconds number
The minimum pre- and post-image retention time in seconds. This option corresponds to the changeStreamOptions.preAndPostImages.expireAfterSeconds cluster parameter. Defaults to -1(off). This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively.expireAfterSeconds controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. This parameter is only supported for MongoDB version 6.0 and above.
customOpensslCipherConfigTls12s string[]
The custom OpenSSL cipher suite list for TLS 1.2. This field is only valid when tls_cipher_config_mode is set to CUSTOM.
defaultMaxTimeMs number
defaultReadConcern string
Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.
tlsCipherConfigMode string
The TLS cipher suite configuration mode. Valid values include CUSTOM or DEFAULT. The DEFAULT mode uses the default cipher suites. The CUSTOM mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3. To unset, this should be set back to DEFAULT.
transactionLifetimeLimitSeconds number
Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
change_stream_options_pre_and_post_images_expire_after_seconds int
The minimum pre- and post-image retention time in seconds. This option corresponds to the changeStreamOptions.preAndPostImages.expireAfterSeconds cluster parameter. Defaults to -1(off). This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively.expireAfterSeconds controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. This parameter is only supported for MongoDB version 6.0 and above.
custom_openssl_cipher_config_tls12s Sequence[str]
The custom OpenSSL cipher suite list for TLS 1.2. This field is only valid when tls_cipher_config_mode is set to CUSTOM.
default_max_time_ms int
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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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 float
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.
tls_cipher_config_mode str
The TLS cipher suite configuration mode. Valid values include CUSTOM or DEFAULT. The DEFAULT mode uses the default cipher suites. The CUSTOM mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3. To unset, this should be set back to DEFAULT.
transaction_lifetime_limit_seconds int
Lifetime, in seconds, of multi-document transactions. Defaults to 60 seconds.
changeStreamOptionsPreAndPostImagesExpireAfterSeconds Number
The minimum pre- and post-image retention time in seconds. This option corresponds to the changeStreamOptions.preAndPostImages.expireAfterSeconds cluster parameter. Defaults to -1(off). This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively.expireAfterSeconds controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. This parameter is only supported for MongoDB version 6.0 and above.
customOpensslCipherConfigTls12s List<String>
The custom OpenSSL cipher suite list for TLS 1.2. This field is only valid when tls_cipher_config_mode is set to CUSTOM.
defaultMaxTimeMs Number
defaultReadConcern String
Default level of acknowledgment requested from MongoDB for read operations set for this cluster. MongoDB 4.4 clusters default to available.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.

Deprecated: This parameter is deprecated. Please refer to our examples, documentation, and 1.18.0 migration guide for more details at https://registry.terraform.io/providers/mongodb/mongodbatlas/latest/docs/guides/1.18.0-upgrade-guide.html.markdown

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.
tlsCipherConfigMode String
The TLS cipher suite configuration mode. Valid values include CUSTOM or DEFAULT. The DEFAULT mode uses the default cipher suites. The CUSTOM mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3. To unset, this should be set back to DEFAULT.
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. *

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

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

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

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

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

  • 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

Private string
Network-peering-endpoint-aware mongodb://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
PrivateEndpoints List<ClusterConnectionStringPrivateEndpoint>
Private endpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

  • connection_strings.private_endpoint.#.connection_string - Private-endpoint-aware mongodb://connection string for this private endpoint.
  • connection_strings.private_endpoint.#.srv_connection_string - Private-endpoint-aware mongodb+srv:// connection string for this private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS . Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don't need to: Append the seed list or Change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connection_strings.private_endpoint[#].connection_string
  • connection_strings.private_endpoint.#.srv_shard_optimized_connection_string - Private endpoint-aware connection string optimized for sharded clusters that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster support it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[#].srvConnectionString.
  • connection_strings.private_endpoint.#.type - Type of MongoDB process that you connect to with the connection strings. Atlas returns MONGOD for replica sets, or MONGOS for sharded clusters.
  • connection_strings.private_endpoint.#.endpoints - Private endpoint through which you connect to Atlas when you use connection_strings.private_endpoint[#].connection_string or connection_strings.private_endpoint[#].srv_connection_string
  • connection_strings.private_endpoint.#.endpoints.#.endpoint_id - Unique identifier of the private endpoint.
  • connection_strings.private_endpoint.#.endpoints.#.provider_name - Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
  • connection_strings.private_endpoint.#.endpoints.#.region - Region to which you deployed the private endpoint.
PrivateSrv string
Network-peering-endpoint-aware mongodb+srv://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
Standard string
Public mongodb:// connection string for this cluster.
StandardSrv string
Public mongodb+srv:// connection string for this cluster. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS. Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don’t need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn’t , use connectionStrings.standard.
Private string
Network-peering-endpoint-aware mongodb://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
PrivateEndpoints []ClusterConnectionStringPrivateEndpoint
Private endpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

  • connection_strings.private_endpoint.#.connection_string - Private-endpoint-aware mongodb://connection string for this private endpoint.
  • connection_strings.private_endpoint.#.srv_connection_string - Private-endpoint-aware mongodb+srv:// connection string for this private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS . Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don't need to: Append the seed list or Change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connection_strings.private_endpoint[#].connection_string
  • connection_strings.private_endpoint.#.srv_shard_optimized_connection_string - Private endpoint-aware connection string optimized for sharded clusters that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster support it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[#].srvConnectionString.
  • connection_strings.private_endpoint.#.type - Type of MongoDB process that you connect to with the connection strings. Atlas returns MONGOD for replica sets, or MONGOS for sharded clusters.
  • connection_strings.private_endpoint.#.endpoints - Private endpoint through which you connect to Atlas when you use connection_strings.private_endpoint[#].connection_string or connection_strings.private_endpoint[#].srv_connection_string
  • connection_strings.private_endpoint.#.endpoints.#.endpoint_id - Unique identifier of the private endpoint.
  • connection_strings.private_endpoint.#.endpoints.#.provider_name - Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
  • connection_strings.private_endpoint.#.endpoints.#.region - Region to which you deployed the private endpoint.
PrivateSrv string
Network-peering-endpoint-aware mongodb+srv://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
Standard string
Public mongodb:// connection string for this cluster.
StandardSrv string
Public mongodb+srv:// connection string for this cluster. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS. Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don’t need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn’t , use connectionStrings.standard.
privateEndpoints List<ClusterConnectionStringPrivateEndpoint>
Private endpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

  • connection_strings.private_endpoint.#.connection_string - Private-endpoint-aware mongodb://connection string for this private endpoint.
  • connection_strings.private_endpoint.#.srv_connection_string - Private-endpoint-aware mongodb+srv:// connection string for this private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS . Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don't need to: Append the seed list or Change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connection_strings.private_endpoint[#].connection_string
  • connection_strings.private_endpoint.#.srv_shard_optimized_connection_string - Private endpoint-aware connection string optimized for sharded clusters that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster support it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[#].srvConnectionString.
  • connection_strings.private_endpoint.#.type - Type of MongoDB process that you connect to with the connection strings. Atlas returns MONGOD for replica sets, or MONGOS for sharded clusters.
  • connection_strings.private_endpoint.#.endpoints - Private endpoint through which you connect to Atlas when you use connection_strings.private_endpoint[#].connection_string or connection_strings.private_endpoint[#].srv_connection_string
  • connection_strings.private_endpoint.#.endpoints.#.endpoint_id - Unique identifier of the private endpoint.
  • connection_strings.private_endpoint.#.endpoints.#.provider_name - Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
  • connection_strings.private_endpoint.#.endpoints.#.region - Region to which you deployed the private endpoint.
privateSrv String
Network-peering-endpoint-aware mongodb+srv://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
private_ String
Network-peering-endpoint-aware mongodb://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
standard String
Public mongodb:// connection string for this cluster.
standardSrv String
Public mongodb+srv:// connection string for this cluster. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS. Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don’t need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn’t , use connectionStrings.standard.
private string
Network-peering-endpoint-aware mongodb://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
privateEndpoints ClusterConnectionStringPrivateEndpoint[]
Private endpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

  • connection_strings.private_endpoint.#.connection_string - Private-endpoint-aware mongodb://connection string for this private endpoint.
  • connection_strings.private_endpoint.#.srv_connection_string - Private-endpoint-aware mongodb+srv:// connection string for this private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS . Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don't need to: Append the seed list or Change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connection_strings.private_endpoint[#].connection_string
  • connection_strings.private_endpoint.#.srv_shard_optimized_connection_string - Private endpoint-aware connection string optimized for sharded clusters that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster support it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[#].srvConnectionString.
  • connection_strings.private_endpoint.#.type - Type of MongoDB process that you connect to with the connection strings. Atlas returns MONGOD for replica sets, or MONGOS for sharded clusters.
  • connection_strings.private_endpoint.#.endpoints - Private endpoint through which you connect to Atlas when you use connection_strings.private_endpoint[#].connection_string or connection_strings.private_endpoint[#].srv_connection_string
  • connection_strings.private_endpoint.#.endpoints.#.endpoint_id - Unique identifier of the private endpoint.
  • connection_strings.private_endpoint.#.endpoints.#.provider_name - Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
  • connection_strings.private_endpoint.#.endpoints.#.region - Region to which you deployed the private endpoint.
privateSrv string
Network-peering-endpoint-aware mongodb+srv://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
standard string
Public mongodb:// connection string for this cluster.
standardSrv string
Public mongodb+srv:// connection string for this cluster. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS. Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don’t need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn’t , use connectionStrings.standard.
private str
Network-peering-endpoint-aware mongodb://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
private_endpoints Sequence[ClusterConnectionStringPrivateEndpoint]
Private endpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

  • connection_strings.private_endpoint.#.connection_string - Private-endpoint-aware mongodb://connection string for this private endpoint.
  • connection_strings.private_endpoint.#.srv_connection_string - Private-endpoint-aware mongodb+srv:// connection string for this private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS . Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don't need to: Append the seed list or Change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connection_strings.private_endpoint[#].connection_string
  • connection_strings.private_endpoint.#.srv_shard_optimized_connection_string - Private endpoint-aware connection string optimized for sharded clusters that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster support it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[#].srvConnectionString.
  • connection_strings.private_endpoint.#.type - Type of MongoDB process that you connect to with the connection strings. Atlas returns MONGOD for replica sets, or MONGOS for sharded clusters.
  • connection_strings.private_endpoint.#.endpoints - Private endpoint through which you connect to Atlas when you use connection_strings.private_endpoint[#].connection_string or connection_strings.private_endpoint[#].srv_connection_string
  • connection_strings.private_endpoint.#.endpoints.#.endpoint_id - Unique identifier of the private endpoint.
  • connection_strings.private_endpoint.#.endpoints.#.provider_name - Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
  • connection_strings.private_endpoint.#.endpoints.#.region - Region to which you deployed the private endpoint.
private_srv str
Network-peering-endpoint-aware mongodb+srv://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
standard str
Public mongodb:// connection string for this cluster.
standard_srv str
Public mongodb+srv:// connection string for this cluster. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS. Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don’t need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn’t , use connectionStrings.standard.
private String
Network-peering-endpoint-aware mongodb://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
privateEndpoints List<Property Map>
Private endpoint connection strings. Each object describes the connection strings you can use to connect to this cluster through a private endpoint. Atlas returns this parameter only if you deployed a private endpoint to all regions to which you deployed this cluster's nodes.

  • connection_strings.private_endpoint.#.connection_string - Private-endpoint-aware mongodb://connection string for this private endpoint.
  • connection_strings.private_endpoint.#.srv_connection_string - Private-endpoint-aware mongodb+srv:// connection string for this private endpoint. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS . Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don't need to: Append the seed list or Change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use connection_strings.private_endpoint[#].connection_string
  • connection_strings.private_endpoint.#.srv_shard_optimized_connection_string - Private endpoint-aware connection string optimized for sharded clusters that uses the mongodb+srv:// protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster support it. If it doesn't, use and consult the documentation for connectionStrings.privateEndpoint[#].srvConnectionString.
  • connection_strings.private_endpoint.#.type - Type of MongoDB process that you connect to with the connection strings. Atlas returns MONGOD for replica sets, or MONGOS for sharded clusters.
  • connection_strings.private_endpoint.#.endpoints - Private endpoint through which you connect to Atlas when you use connection_strings.private_endpoint[#].connection_string or connection_strings.private_endpoint[#].srv_connection_string
  • connection_strings.private_endpoint.#.endpoints.#.endpoint_id - Unique identifier of the private endpoint.
  • connection_strings.private_endpoint.#.endpoints.#.provider_name - Cloud provider to which you deployed the private endpoint. Atlas returns AWS or AZURE.
  • connection_strings.private_endpoint.#.endpoints.#.region - Region to which you deployed the private endpoint.
privateSrv String
Network-peering-endpoint-aware mongodb+srv://connection strings for each interface VPC endpoint you configured to connect to this cluster. Returned only if you created a network peering connection to this cluster.
standard String
Public mongodb:// connection string for this cluster.
standardSrv String
Public mongodb+srv:// connection string for this cluster. The mongodb+srv protocol tells the driver to look up the seed list of hosts in DNS. Atlas synchronizes this list with the nodes in a cluster. If the connection string uses this URI format, you don’t need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn’t , use connectionStrings.standard.

ClusterConnectionStringPrivateEndpoint
, ClusterConnectionStringPrivateEndpointArgs

ClusterConnectionStringPrivateEndpointEndpoint
, ClusterConnectionStringPrivateEndpointEndpointArgs

EndpointId string
ProviderName string

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
Region string
EndpointId string
ProviderName string

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
Region string
endpointId String
providerName String

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
region String
endpointId string
providerName string

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
region string
endpoint_id str
provider_name str

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
region str
endpointId String
providerName String

Cloud service provider on which the servers are provisioned.

The possible values are:

  • AWS - Amazon AWS
  • GCP - Google Cloud Platform
  • AZURE - Microsoft Azure
  • TENANT - A multi-tenant deployment on one of the supported cloud service providers. Only valid when providerSettings.instanceSizeName is M0.
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.

ClusterPinnedFcv
, ClusterPinnedFcvArgs

ExpirationDate This property is required. string
Expiration date of the fixed FCV. This value is in the ISO 8601 timestamp format (e.g. "2024-12-04T16:25:00Z"). Note that this field cannot exceed 4 weeks from the pinned date.
Version string
Feature compatibility version of the cluster.
ExpirationDate This property is required. string
Expiration date of the fixed FCV. This value is in the ISO 8601 timestamp format (e.g. "2024-12-04T16:25:00Z"). Note that this field cannot exceed 4 weeks from the pinned date.
Version string
Feature compatibility version of the cluster.
expirationDate This property is required. String
Expiration date of the fixed FCV. This value is in the ISO 8601 timestamp format (e.g. "2024-12-04T16:25:00Z"). Note that this field cannot exceed 4 weeks from the pinned date.
version String
Feature compatibility version of the cluster.
expirationDate This property is required. string
Expiration date of the fixed FCV. This value is in the ISO 8601 timestamp format (e.g. "2024-12-04T16:25:00Z"). Note that this field cannot exceed 4 weeks from the pinned date.
version string
Feature compatibility version of the cluster.
expiration_date This property is required. str
Expiration date of the fixed FCV. This value is in the ISO 8601 timestamp format (e.g. "2024-12-04T16:25:00Z"). Note that this field cannot exceed 4 weeks from the pinned date.
version str
Feature compatibility version of the cluster.
expirationDate This property is required. String
Expiration date of the fixed FCV. This value is in the ISO 8601 timestamp format (e.g. "2024-12-04T16:25:00Z"). Note that this field cannot exceed 4 weeks from the pinned date.
version String
Feature compatibility version of the cluster.

ClusterReplicationSpec
, ClusterReplicationSpecArgs

NumShards This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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 This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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 This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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 This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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 This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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 This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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 This property is required. 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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
PolicyItems List<ClusterSnapshotBackupPolicyPolicyPolicyItem>
Id string
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
PolicyItems []ClusterSnapshotBackupPolicyPolicyPolicyItem
id String
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
policyItems List<ClusterSnapshotBackupPolicyPolicyPolicyItem>
id string
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
policyItems ClusterSnapshotBackupPolicyPolicyPolicyItem[]
id str
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
policy_items Sequence[ClusterSnapshotBackupPolicyPolicyPolicyItem]
id String
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
RetentionUnit string
RetentionValue int
FrequencyInterval int
FrequencyType string
Id string
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
RetentionUnit string
RetentionValue int
frequencyInterval Integer
frequencyType String
id String
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
retentionUnit String
retentionValue Integer
frequencyInterval number
frequencyType string
id string
Unique identifer of the replication document for a zone in a Global Cluster. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
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. This value corresponds to the legacy sharding schema (no independent shard scaling) and is different from the Shard ID you may see in the Atlas UI.
retentionUnit String
retentionValue Number

ClusterTag
, ClusterTagArgs

Key This property is required. string
Constant that defines the set of the tag.
Value This property is required. string

Variable that belongs to the set of the tag.

To learn more, see Resource Tags.

Key This property is required. string
Constant that defines the set of the tag.
Value This property is required. string

Variable that belongs to the set of the tag.

To learn more, see Resource Tags.

key This property is required. String
Constant that defines the set of the tag.
value This property is required. String

Variable that belongs to the set of the tag.

To learn more, see Resource Tags.

key This property is required. string
Constant that defines the set of the tag.
value This property is required. string

Variable that belongs to the set of the tag.

To learn more, see Resource Tags.

key This property is required. str
Constant that defines the set of the tag.
value This property is required. str

Variable that belongs to the set of the tag.

To learn more, see Resource Tags.

key This property is required. String
Constant that defines the set of the tag.
value This property is required. 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.