1. Packages
  2. Azure Native v2
  3. API Docs
  4. dbforpostgresql
  5. Cluster
These are the docs for Azure Native v2. We recommenend using the latest version, Azure Native v3.
Azure Native v2 v2.90.0 published on Thursday, Mar 27, 2025 by Pulumi

azure-native-v2.dbforpostgresql.Cluster

Explore with Pulumi AI

Represents a cluster. Azure REST API version: 2022-11-08.

Other available API versions: 2023-03-02-preview.

Example Usage

Create a new cluster as a point in time restore

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var cluster = new AzureNative.DBforPostgreSQL.Cluster("cluster", new()
    {
        ClusterName = "testcluster",
        Location = "westus",
        PointInTimeUTC = "2017-12-14T00:00:37.467Z",
        ResourceGroupName = "TestGroup",
        SourceLocation = "westus",
        SourceResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/source-cluster",
    });

});
Copy
package main

import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewCluster(ctx, "cluster", &dbforpostgresql.ClusterArgs{
			ClusterName:       pulumi.String("testcluster"),
			Location:          pulumi.String("westus"),
			PointInTimeUTC:    pulumi.String("2017-12-14T00:00:37.467Z"),
			ResourceGroupName: pulumi.String("TestGroup"),
			SourceLocation:    pulumi.String("westus"),
			SourceResourceId:  pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/source-cluster"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.Cluster;
import com.pulumi.azurenative.dbforpostgresql.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 = new Cluster("cluster", ClusterArgs.builder()
            .clusterName("testcluster")
            .location("westus")
            .pointInTimeUTC("2017-12-14T00:00:37.467Z")
            .resourceGroupName("TestGroup")
            .sourceLocation("westus")
            .sourceResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/source-cluster")
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const cluster = new azure_native.dbforpostgresql.Cluster("cluster", {
    clusterName: "testcluster",
    location: "westus",
    pointInTimeUTC: "2017-12-14T00:00:37.467Z",
    resourceGroupName: "TestGroup",
    sourceLocation: "westus",
    sourceResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/source-cluster",
});
Copy
import pulumi
import pulumi_azure_native as azure_native

cluster = azure_native.dbforpostgresql.Cluster("cluster",
    cluster_name="testcluster",
    location="westus",
    point_in_time_utc="2017-12-14T00:00:37.467Z",
    resource_group_name="TestGroup",
    source_location="westus",
    source_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/source-cluster")
Copy
resources:
  cluster:
    type: azure-native:dbforpostgresql:Cluster
    properties:
      clusterName: testcluster
      location: westus
      pointInTimeUTC: 2017-12-14T00:00:37.467Z
      resourceGroupName: TestGroup
      sourceLocation: westus
      sourceResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/source-cluster
Copy

Create a new cluster as a read replica

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var cluster = new AzureNative.DBforPostgreSQL.Cluster("cluster", new()
    {
        ClusterName = "testcluster",
        Location = "westus",
        ResourceGroupName = "TestGroup",
        SourceLocation = "westus",
        SourceResourceId = "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/sourcecluster",
    });

});
Copy
package main

import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewCluster(ctx, "cluster", &dbforpostgresql.ClusterArgs{
			ClusterName:       pulumi.String("testcluster"),
			Location:          pulumi.String("westus"),
			ResourceGroupName: pulumi.String("TestGroup"),
			SourceLocation:    pulumi.String("westus"),
			SourceResourceId:  pulumi.String("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/sourcecluster"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.Cluster;
import com.pulumi.azurenative.dbforpostgresql.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 = new Cluster("cluster", ClusterArgs.builder()
            .clusterName("testcluster")
            .location("westus")
            .resourceGroupName("TestGroup")
            .sourceLocation("westus")
            .sourceResourceId("/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/sourcecluster")
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const cluster = new azure_native.dbforpostgresql.Cluster("cluster", {
    clusterName: "testcluster",
    location: "westus",
    resourceGroupName: "TestGroup",
    sourceLocation: "westus",
    sourceResourceId: "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/sourcecluster",
});
Copy
import pulumi
import pulumi_azure_native as azure_native

cluster = azure_native.dbforpostgresql.Cluster("cluster",
    cluster_name="testcluster",
    location="westus",
    resource_group_name="TestGroup",
    source_location="westus",
    source_resource_id="/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/sourcecluster")
Copy
resources:
  cluster:
    type: azure-native:dbforpostgresql:Cluster
    properties:
      clusterName: testcluster
      location: westus
      resourceGroupName: TestGroup
      sourceLocation: westus
      sourceResourceId: /subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/sourcecluster
Copy

Create a new multi-node cluster

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var cluster = new AzureNative.DBforPostgreSQL.Cluster("cluster", new()
    {
        AdministratorLoginPassword = "password",
        CitusVersion = "11.1",
        ClusterName = "testcluster-multinode",
        CoordinatorEnablePublicIpAccess = true,
        CoordinatorServerEdition = "GeneralPurpose",
        CoordinatorStorageQuotaInMb = 524288,
        CoordinatorVCores = 4,
        EnableHa = true,
        EnableShardsOnCoordinator = false,
        Location = "westus",
        NodeCount = 3,
        NodeEnablePublicIpAccess = false,
        NodeServerEdition = "MemoryOptimized",
        NodeStorageQuotaInMb = 524288,
        NodeVCores = 8,
        PostgresqlVersion = "15",
        PreferredPrimaryZone = "1",
        ResourceGroupName = "TestGroup",
        Tags = null,
    });

});
Copy
package main

import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewCluster(ctx, "cluster", &dbforpostgresql.ClusterArgs{
			AdministratorLoginPassword:      pulumi.String("password"),
			CitusVersion:                    pulumi.String("11.1"),
			ClusterName:                     pulumi.String("testcluster-multinode"),
			CoordinatorEnablePublicIpAccess: pulumi.Bool(true),
			CoordinatorServerEdition:        pulumi.String("GeneralPurpose"),
			CoordinatorStorageQuotaInMb:     pulumi.Int(524288),
			CoordinatorVCores:               pulumi.Int(4),
			EnableHa:                        pulumi.Bool(true),
			EnableShardsOnCoordinator:       pulumi.Bool(false),
			Location:                        pulumi.String("westus"),
			NodeCount:                       pulumi.Int(3),
			NodeEnablePublicIpAccess:        pulumi.Bool(false),
			NodeServerEdition:               pulumi.String("MemoryOptimized"),
			NodeStorageQuotaInMb:            pulumi.Int(524288),
			NodeVCores:                      pulumi.Int(8),
			PostgresqlVersion:               pulumi.String("15"),
			PreferredPrimaryZone:            pulumi.String("1"),
			ResourceGroupName:               pulumi.String("TestGroup"),
			Tags:                            pulumi.StringMap{},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.Cluster;
import com.pulumi.azurenative.dbforpostgresql.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 = new Cluster("cluster", ClusterArgs.builder()
            .administratorLoginPassword("password")
            .citusVersion("11.1")
            .clusterName("testcluster-multinode")
            .coordinatorEnablePublicIpAccess(true)
            .coordinatorServerEdition("GeneralPurpose")
            .coordinatorStorageQuotaInMb(524288)
            .coordinatorVCores(4)
            .enableHa(true)
            .enableShardsOnCoordinator(false)
            .location("westus")
            .nodeCount(3)
            .nodeEnablePublicIpAccess(false)
            .nodeServerEdition("MemoryOptimized")
            .nodeStorageQuotaInMb(524288)
            .nodeVCores(8)
            .postgresqlVersion("15")
            .preferredPrimaryZone("1")
            .resourceGroupName("TestGroup")
            .tags()
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const cluster = new azure_native.dbforpostgresql.Cluster("cluster", {
    administratorLoginPassword: "password",
    citusVersion: "11.1",
    clusterName: "testcluster-multinode",
    coordinatorEnablePublicIpAccess: true,
    coordinatorServerEdition: "GeneralPurpose",
    coordinatorStorageQuotaInMb: 524288,
    coordinatorVCores: 4,
    enableHa: true,
    enableShardsOnCoordinator: false,
    location: "westus",
    nodeCount: 3,
    nodeEnablePublicIpAccess: false,
    nodeServerEdition: "MemoryOptimized",
    nodeStorageQuotaInMb: 524288,
    nodeVCores: 8,
    postgresqlVersion: "15",
    preferredPrimaryZone: "1",
    resourceGroupName: "TestGroup",
    tags: {},
});
Copy
import pulumi
import pulumi_azure_native as azure_native

cluster = azure_native.dbforpostgresql.Cluster("cluster",
    administrator_login_password="password",
    citus_version="11.1",
    cluster_name="testcluster-multinode",
    coordinator_enable_public_ip_access=True,
    coordinator_server_edition="GeneralPurpose",
    coordinator_storage_quota_in_mb=524288,
    coordinator_v_cores=4,
    enable_ha=True,
    enable_shards_on_coordinator=False,
    location="westus",
    node_count=3,
    node_enable_public_ip_access=False,
    node_server_edition="MemoryOptimized",
    node_storage_quota_in_mb=524288,
    node_v_cores=8,
    postgresql_version="15",
    preferred_primary_zone="1",
    resource_group_name="TestGroup",
    tags={})
Copy
resources:
  cluster:
    type: azure-native:dbforpostgresql:Cluster
    properties:
      administratorLoginPassword: password
      citusVersion: '11.1'
      clusterName: testcluster-multinode
      coordinatorEnablePublicIpAccess: true
      coordinatorServerEdition: GeneralPurpose
      coordinatorStorageQuotaInMb: 524288
      coordinatorVCores: 4
      enableHa: true
      enableShardsOnCoordinator: false
      location: westus
      nodeCount: 3
      nodeEnablePublicIpAccess: false
      nodeServerEdition: MemoryOptimized
      nodeStorageQuotaInMb: 524288
      nodeVCores: 8
      postgresqlVersion: '15'
      preferredPrimaryZone: '1'
      resourceGroupName: TestGroup
      tags: {}
Copy

Create a new single node Burstable 1 vCore cluster

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var cluster = new AzureNative.DBforPostgreSQL.Cluster("cluster", new()
    {
        AdministratorLoginPassword = "password",
        CitusVersion = "11.3",
        ClusterName = "testcluster-burstablev1",
        CoordinatorEnablePublicIpAccess = true,
        CoordinatorServerEdition = "BurstableMemoryOptimized",
        CoordinatorStorageQuotaInMb = 131072,
        CoordinatorVCores = 1,
        EnableHa = false,
        EnableShardsOnCoordinator = true,
        Location = "westus",
        NodeCount = 0,
        PostgresqlVersion = "15",
        PreferredPrimaryZone = "1",
        ResourceGroupName = "TestGroup",
        Tags = 
        {
            { "owner", "JohnDoe" },
        },
    });

});
Copy
package main

import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewCluster(ctx, "cluster", &dbforpostgresql.ClusterArgs{
			AdministratorLoginPassword:      pulumi.String("password"),
			CitusVersion:                    pulumi.String("11.3"),
			ClusterName:                     pulumi.String("testcluster-burstablev1"),
			CoordinatorEnablePublicIpAccess: pulumi.Bool(true),
			CoordinatorServerEdition:        pulumi.String("BurstableMemoryOptimized"),
			CoordinatorStorageQuotaInMb:     pulumi.Int(131072),
			CoordinatorVCores:               pulumi.Int(1),
			EnableHa:                        pulumi.Bool(false),
			EnableShardsOnCoordinator:       pulumi.Bool(true),
			Location:                        pulumi.String("westus"),
			NodeCount:                       pulumi.Int(0),
			PostgresqlVersion:               pulumi.String("15"),
			PreferredPrimaryZone:            pulumi.String("1"),
			ResourceGroupName:               pulumi.String("TestGroup"),
			Tags: pulumi.StringMap{
				"owner": pulumi.String("JohnDoe"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.Cluster;
import com.pulumi.azurenative.dbforpostgresql.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 = new Cluster("cluster", ClusterArgs.builder()
            .administratorLoginPassword("password")
            .citusVersion("11.3")
            .clusterName("testcluster-burstablev1")
            .coordinatorEnablePublicIpAccess(true)
            .coordinatorServerEdition("BurstableMemoryOptimized")
            .coordinatorStorageQuotaInMb(131072)
            .coordinatorVCores(1)
            .enableHa(false)
            .enableShardsOnCoordinator(true)
            .location("westus")
            .nodeCount(0)
            .postgresqlVersion("15")
            .preferredPrimaryZone("1")
            .resourceGroupName("TestGroup")
            .tags(Map.of("owner", "JohnDoe"))
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const cluster = new azure_native.dbforpostgresql.Cluster("cluster", {
    administratorLoginPassword: "password",
    citusVersion: "11.3",
    clusterName: "testcluster-burstablev1",
    coordinatorEnablePublicIpAccess: true,
    coordinatorServerEdition: "BurstableMemoryOptimized",
    coordinatorStorageQuotaInMb: 131072,
    coordinatorVCores: 1,
    enableHa: false,
    enableShardsOnCoordinator: true,
    location: "westus",
    nodeCount: 0,
    postgresqlVersion: "15",
    preferredPrimaryZone: "1",
    resourceGroupName: "TestGroup",
    tags: {
        owner: "JohnDoe",
    },
});
Copy
import pulumi
import pulumi_azure_native as azure_native

cluster = azure_native.dbforpostgresql.Cluster("cluster",
    administrator_login_password="password",
    citus_version="11.3",
    cluster_name="testcluster-burstablev1",
    coordinator_enable_public_ip_access=True,
    coordinator_server_edition="BurstableMemoryOptimized",
    coordinator_storage_quota_in_mb=131072,
    coordinator_v_cores=1,
    enable_ha=False,
    enable_shards_on_coordinator=True,
    location="westus",
    node_count=0,
    postgresql_version="15",
    preferred_primary_zone="1",
    resource_group_name="TestGroup",
    tags={
        "owner": "JohnDoe",
    })
Copy
resources:
  cluster:
    type: azure-native:dbforpostgresql:Cluster
    properties:
      administratorLoginPassword: password
      citusVersion: '11.3'
      clusterName: testcluster-burstablev1
      coordinatorEnablePublicIpAccess: true
      coordinatorServerEdition: BurstableMemoryOptimized
      coordinatorStorageQuotaInMb: 131072
      coordinatorVCores: 1
      enableHa: false
      enableShardsOnCoordinator: true
      location: westus
      nodeCount: 0
      postgresqlVersion: '15'
      preferredPrimaryZone: '1'
      resourceGroupName: TestGroup
      tags:
        owner: JohnDoe
Copy

Create a new single node Burstable 2 vCores cluster

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var cluster = new AzureNative.DBforPostgreSQL.Cluster("cluster", new()
    {
        AdministratorLoginPassword = "password",
        CitusVersion = "11.3",
        ClusterName = "testcluster-burstablev2",
        CoordinatorEnablePublicIpAccess = true,
        CoordinatorServerEdition = "BurstableGeneralPurpose",
        CoordinatorStorageQuotaInMb = 131072,
        CoordinatorVCores = 2,
        EnableHa = false,
        EnableShardsOnCoordinator = true,
        Location = "westus",
        NodeCount = 0,
        PostgresqlVersion = "15",
        PreferredPrimaryZone = "1",
        ResourceGroupName = "TestGroup",
        Tags = 
        {
            { "owner", "JohnDoe" },
        },
    });

});
Copy
package main

import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewCluster(ctx, "cluster", &dbforpostgresql.ClusterArgs{
			AdministratorLoginPassword:      pulumi.String("password"),
			CitusVersion:                    pulumi.String("11.3"),
			ClusterName:                     pulumi.String("testcluster-burstablev2"),
			CoordinatorEnablePublicIpAccess: pulumi.Bool(true),
			CoordinatorServerEdition:        pulumi.String("BurstableGeneralPurpose"),
			CoordinatorStorageQuotaInMb:     pulumi.Int(131072),
			CoordinatorVCores:               pulumi.Int(2),
			EnableHa:                        pulumi.Bool(false),
			EnableShardsOnCoordinator:       pulumi.Bool(true),
			Location:                        pulumi.String("westus"),
			NodeCount:                       pulumi.Int(0),
			PostgresqlVersion:               pulumi.String("15"),
			PreferredPrimaryZone:            pulumi.String("1"),
			ResourceGroupName:               pulumi.String("TestGroup"),
			Tags: pulumi.StringMap{
				"owner": pulumi.String("JohnDoe"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.Cluster;
import com.pulumi.azurenative.dbforpostgresql.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 = new Cluster("cluster", ClusterArgs.builder()
            .administratorLoginPassword("password")
            .citusVersion("11.3")
            .clusterName("testcluster-burstablev2")
            .coordinatorEnablePublicIpAccess(true)
            .coordinatorServerEdition("BurstableGeneralPurpose")
            .coordinatorStorageQuotaInMb(131072)
            .coordinatorVCores(2)
            .enableHa(false)
            .enableShardsOnCoordinator(true)
            .location("westus")
            .nodeCount(0)
            .postgresqlVersion("15")
            .preferredPrimaryZone("1")
            .resourceGroupName("TestGroup")
            .tags(Map.of("owner", "JohnDoe"))
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const cluster = new azure_native.dbforpostgresql.Cluster("cluster", {
    administratorLoginPassword: "password",
    citusVersion: "11.3",
    clusterName: "testcluster-burstablev2",
    coordinatorEnablePublicIpAccess: true,
    coordinatorServerEdition: "BurstableGeneralPurpose",
    coordinatorStorageQuotaInMb: 131072,
    coordinatorVCores: 2,
    enableHa: false,
    enableShardsOnCoordinator: true,
    location: "westus",
    nodeCount: 0,
    postgresqlVersion: "15",
    preferredPrimaryZone: "1",
    resourceGroupName: "TestGroup",
    tags: {
        owner: "JohnDoe",
    },
});
Copy
import pulumi
import pulumi_azure_native as azure_native

cluster = azure_native.dbforpostgresql.Cluster("cluster",
    administrator_login_password="password",
    citus_version="11.3",
    cluster_name="testcluster-burstablev2",
    coordinator_enable_public_ip_access=True,
    coordinator_server_edition="BurstableGeneralPurpose",
    coordinator_storage_quota_in_mb=131072,
    coordinator_v_cores=2,
    enable_ha=False,
    enable_shards_on_coordinator=True,
    location="westus",
    node_count=0,
    postgresql_version="15",
    preferred_primary_zone="1",
    resource_group_name="TestGroup",
    tags={
        "owner": "JohnDoe",
    })
Copy
resources:
  cluster:
    type: azure-native:dbforpostgresql:Cluster
    properties:
      administratorLoginPassword: password
      citusVersion: '11.3'
      clusterName: testcluster-burstablev2
      coordinatorEnablePublicIpAccess: true
      coordinatorServerEdition: BurstableGeneralPurpose
      coordinatorStorageQuotaInMb: 131072
      coordinatorVCores: 2
      enableHa: false
      enableShardsOnCoordinator: true
      location: westus
      nodeCount: 0
      postgresqlVersion: '15'
      preferredPrimaryZone: '1'
      resourceGroupName: TestGroup
      tags:
        owner: JohnDoe
Copy

Create a new single node cluster

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var cluster = new AzureNative.DBforPostgreSQL.Cluster("cluster", new()
    {
        AdministratorLoginPassword = "password",
        CitusVersion = "11.3",
        ClusterName = "testcluster-singlenode",
        CoordinatorEnablePublicIpAccess = true,
        CoordinatorServerEdition = "GeneralPurpose",
        CoordinatorStorageQuotaInMb = 131072,
        CoordinatorVCores = 8,
        EnableHa = true,
        EnableShardsOnCoordinator = true,
        Location = "westus",
        NodeCount = 0,
        PostgresqlVersion = "15",
        PreferredPrimaryZone = "1",
        ResourceGroupName = "TestGroup",
        Tags = 
        {
            { "owner", "JohnDoe" },
        },
    });

});
Copy
package main

import (
	dbforpostgresql "github.com/pulumi/pulumi-azure-native-sdk/dbforpostgresql/v2"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := dbforpostgresql.NewCluster(ctx, "cluster", &dbforpostgresql.ClusterArgs{
			AdministratorLoginPassword:      pulumi.String("password"),
			CitusVersion:                    pulumi.String("11.3"),
			ClusterName:                     pulumi.String("testcluster-singlenode"),
			CoordinatorEnablePublicIpAccess: pulumi.Bool(true),
			CoordinatorServerEdition:        pulumi.String("GeneralPurpose"),
			CoordinatorStorageQuotaInMb:     pulumi.Int(131072),
			CoordinatorVCores:               pulumi.Int(8),
			EnableHa:                        pulumi.Bool(true),
			EnableShardsOnCoordinator:       pulumi.Bool(true),
			Location:                        pulumi.String("westus"),
			NodeCount:                       pulumi.Int(0),
			PostgresqlVersion:               pulumi.String("15"),
			PreferredPrimaryZone:            pulumi.String("1"),
			ResourceGroupName:               pulumi.String("TestGroup"),
			Tags: pulumi.StringMap{
				"owner": pulumi.String("JohnDoe"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.dbforpostgresql.Cluster;
import com.pulumi.azurenative.dbforpostgresql.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 = new Cluster("cluster", ClusterArgs.builder()
            .administratorLoginPassword("password")
            .citusVersion("11.3")
            .clusterName("testcluster-singlenode")
            .coordinatorEnablePublicIpAccess(true)
            .coordinatorServerEdition("GeneralPurpose")
            .coordinatorStorageQuotaInMb(131072)
            .coordinatorVCores(8)
            .enableHa(true)
            .enableShardsOnCoordinator(true)
            .location("westus")
            .nodeCount(0)
            .postgresqlVersion("15")
            .preferredPrimaryZone("1")
            .resourceGroupName("TestGroup")
            .tags(Map.of("owner", "JohnDoe"))
            .build());

    }
}
Copy
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const cluster = new azure_native.dbforpostgresql.Cluster("cluster", {
    administratorLoginPassword: "password",
    citusVersion: "11.3",
    clusterName: "testcluster-singlenode",
    coordinatorEnablePublicIpAccess: true,
    coordinatorServerEdition: "GeneralPurpose",
    coordinatorStorageQuotaInMb: 131072,
    coordinatorVCores: 8,
    enableHa: true,
    enableShardsOnCoordinator: true,
    location: "westus",
    nodeCount: 0,
    postgresqlVersion: "15",
    preferredPrimaryZone: "1",
    resourceGroupName: "TestGroup",
    tags: {
        owner: "JohnDoe",
    },
});
Copy
import pulumi
import pulumi_azure_native as azure_native

cluster = azure_native.dbforpostgresql.Cluster("cluster",
    administrator_login_password="password",
    citus_version="11.3",
    cluster_name="testcluster-singlenode",
    coordinator_enable_public_ip_access=True,
    coordinator_server_edition="GeneralPurpose",
    coordinator_storage_quota_in_mb=131072,
    coordinator_v_cores=8,
    enable_ha=True,
    enable_shards_on_coordinator=True,
    location="westus",
    node_count=0,
    postgresql_version="15",
    preferred_primary_zone="1",
    resource_group_name="TestGroup",
    tags={
        "owner": "JohnDoe",
    })
Copy
resources:
  cluster:
    type: azure-native:dbforpostgresql:Cluster
    properties:
      administratorLoginPassword: password
      citusVersion: '11.3'
      clusterName: testcluster-singlenode
      coordinatorEnablePublicIpAccess: true
      coordinatorServerEdition: GeneralPurpose
      coordinatorStorageQuotaInMb: 131072
      coordinatorVCores: 8
      enableHa: true
      enableShardsOnCoordinator: true
      location: westus
      nodeCount: 0
      postgresqlVersion: '15'
      preferredPrimaryZone: '1'
      resourceGroupName: TestGroup
      tags:
        owner: JohnDoe
Copy

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,
            resource_group_name: Optional[str] = None,
            maintenance_window: Optional[MaintenanceWindowArgs] = None,
            coordinator_enable_public_ip_access: Optional[bool] = None,
            node_enable_public_ip_access: Optional[bool] = None,
            coordinator_server_edition: Optional[str] = None,
            coordinator_storage_quota_in_mb: Optional[int] = None,
            coordinator_v_cores: Optional[int] = None,
            enable_ha: Optional[bool] = None,
            enable_shards_on_coordinator: Optional[bool] = None,
            node_server_edition: Optional[str] = None,
            administrator_login_password: Optional[str] = None,
            tags: Optional[Mapping[str, str]] = None,
            cluster_name: Optional[str] = None,
            location: Optional[str] = None,
            node_storage_quota_in_mb: Optional[int] = None,
            node_v_cores: Optional[int] = None,
            point_in_time_utc: Optional[str] = None,
            postgresql_version: Optional[str] = None,
            preferred_primary_zone: Optional[str] = None,
            citus_version: Optional[str] = None,
            source_location: Optional[str] = None,
            source_resource_id: Optional[str] = None,
            node_count: Optional[int] = 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: azure-native:dbforpostgresql: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 exampleclusterResourceResourceFromDbforpostgresql = new AzureNative.Dbforpostgresql.Cluster("exampleclusterResourceResourceFromDbforpostgresql", new()
{
    ResourceGroupName = "string",
    MaintenanceWindow = 
    {
        { "customWindow", "string" },
        { "dayOfWeek", 0 },
        { "startHour", 0 },
        { "startMinute", 0 },
    },
    CoordinatorEnablePublicIpAccess = false,
    NodeEnablePublicIpAccess = false,
    CoordinatorServerEdition = "string",
    CoordinatorStorageQuotaInMb = 0,
    CoordinatorVCores = 0,
    EnableHa = false,
    EnableShardsOnCoordinator = false,
    NodeServerEdition = "string",
    AdministratorLoginPassword = "string",
    Tags = 
    {
        { "string", "string" },
    },
    ClusterName = "string",
    Location = "string",
    NodeStorageQuotaInMb = 0,
    NodeVCores = 0,
    PointInTimeUTC = "string",
    PostgresqlVersion = "string",
    PreferredPrimaryZone = "string",
    CitusVersion = "string",
    SourceLocation = "string",
    SourceResourceId = "string",
    NodeCount = 0,
});
Copy
example, err := dbforpostgresql.NewCluster(ctx, "exampleclusterResourceResourceFromDbforpostgresql", &dbforpostgresql.ClusterArgs{
	ResourceGroupName: "string",
	MaintenanceWindow: map[string]interface{}{
		"customWindow": "string",
		"dayOfWeek":    0,
		"startHour":    0,
		"startMinute":  0,
	},
	CoordinatorEnablePublicIpAccess: false,
	NodeEnablePublicIpAccess:        false,
	CoordinatorServerEdition:        "string",
	CoordinatorStorageQuotaInMb:     0,
	CoordinatorVCores:               0,
	EnableHa:                        false,
	EnableShardsOnCoordinator:       false,
	NodeServerEdition:               "string",
	AdministratorLoginPassword:      "string",
	Tags: map[string]interface{}{
		"string": "string",
	},
	ClusterName:          "string",
	Location:             "string",
	NodeStorageQuotaInMb: 0,
	NodeVCores:           0,
	PointInTimeUTC:       "string",
	PostgresqlVersion:    "string",
	PreferredPrimaryZone: "string",
	CitusVersion:         "string",
	SourceLocation:       "string",
	SourceResourceId:     "string",
	NodeCount:            0,
})
Copy
var exampleclusterResourceResourceFromDbforpostgresql = new Cluster("exampleclusterResourceResourceFromDbforpostgresql", ClusterArgs.builder()
    .resourceGroupName("string")
    .maintenanceWindow(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .coordinatorEnablePublicIpAccess(false)
    .nodeEnablePublicIpAccess(false)
    .coordinatorServerEdition("string")
    .coordinatorStorageQuotaInMb(0)
    .coordinatorVCores(0)
    .enableHa(false)
    .enableShardsOnCoordinator(false)
    .nodeServerEdition("string")
    .administratorLoginPassword("string")
    .tags(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
    .clusterName("string")
    .location("string")
    .nodeStorageQuotaInMb(0)
    .nodeVCores(0)
    .pointInTimeUTC("string")
    .postgresqlVersion("string")
    .preferredPrimaryZone("string")
    .citusVersion("string")
    .sourceLocation("string")
    .sourceResourceId("string")
    .nodeCount(0)
    .build());
Copy
examplecluster_resource_resource_from_dbforpostgresql = azure_native.dbforpostgresql.Cluster("exampleclusterResourceResourceFromDbforpostgresql",
    resource_group_name=string,
    maintenance_window={
        customWindow: string,
        dayOfWeek: 0,
        startHour: 0,
        startMinute: 0,
    },
    coordinator_enable_public_ip_access=False,
    node_enable_public_ip_access=False,
    coordinator_server_edition=string,
    coordinator_storage_quota_in_mb=0,
    coordinator_v_cores=0,
    enable_ha=False,
    enable_shards_on_coordinator=False,
    node_server_edition=string,
    administrator_login_password=string,
    tags={
        string: string,
    },
    cluster_name=string,
    location=string,
    node_storage_quota_in_mb=0,
    node_v_cores=0,
    point_in_time_utc=string,
    postgresql_version=string,
    preferred_primary_zone=string,
    citus_version=string,
    source_location=string,
    source_resource_id=string,
    node_count=0)
Copy
const exampleclusterResourceResourceFromDbforpostgresql = new azure_native.dbforpostgresql.Cluster("exampleclusterResourceResourceFromDbforpostgresql", {
    resourceGroupName: "string",
    maintenanceWindow: {
        customWindow: "string",
        dayOfWeek: 0,
        startHour: 0,
        startMinute: 0,
    },
    coordinatorEnablePublicIpAccess: false,
    nodeEnablePublicIpAccess: false,
    coordinatorServerEdition: "string",
    coordinatorStorageQuotaInMb: 0,
    coordinatorVCores: 0,
    enableHa: false,
    enableShardsOnCoordinator: false,
    nodeServerEdition: "string",
    administratorLoginPassword: "string",
    tags: {
        string: "string",
    },
    clusterName: "string",
    location: "string",
    nodeStorageQuotaInMb: 0,
    nodeVCores: 0,
    pointInTimeUTC: "string",
    postgresqlVersion: "string",
    preferredPrimaryZone: "string",
    citusVersion: "string",
    sourceLocation: "string",
    sourceResourceId: "string",
    nodeCount: 0,
});
Copy
type: azure-native:dbforpostgresql:Cluster
properties:
    administratorLoginPassword: string
    citusVersion: string
    clusterName: string
    coordinatorEnablePublicIpAccess: false
    coordinatorServerEdition: string
    coordinatorStorageQuotaInMb: 0
    coordinatorVCores: 0
    enableHa: false
    enableShardsOnCoordinator: false
    location: string
    maintenanceWindow:
        customWindow: string
        dayOfWeek: 0
        startHour: 0
        startMinute: 0
    nodeCount: 0
    nodeEnablePublicIpAccess: false
    nodeServerEdition: string
    nodeStorageQuotaInMb: 0
    nodeVCores: 0
    pointInTimeUTC: string
    postgresqlVersion: string
    preferredPrimaryZone: string
    resourceGroupName: string
    sourceLocation: string
    sourceResourceId: string
    tags:
        string: 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:

ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
AdministratorLoginPassword string
The password of the administrator login. Required for creation.
CitusVersion string
The Citus extension version on all cluster servers.
ClusterName Changes to this property will trigger replacement. string
The name of the cluster.
CoordinatorEnablePublicIpAccess bool
If public access is enabled on coordinator.
CoordinatorServerEdition string
The edition of a coordinator server (default: GeneralPurpose). Required for creation.
CoordinatorStorageQuotaInMb int
The storage of a server in MB. Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
CoordinatorVCores int
The vCores count of a server (max: 96). Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
EnableHa bool
If high availability (HA) is enabled or not for the cluster.
EnableShardsOnCoordinator bool
If distributed tables are placed on coordinator or not. Should be set to 'true' on single node clusters. Requires shard rebalancing after value is changed.
Location Changes to this property will trigger replacement. string
The geo-location where the resource lives
MaintenanceWindow Pulumi.AzureNative.DBforPostgreSQL.Inputs.MaintenanceWindow
Maintenance window of a cluster.
NodeCount int
Worker node count of the cluster. When node count is 0, it represents a single node configuration with the ability to create distributed tables on that node. 2 or more worker nodes represent multi-node configuration. Node count value cannot be 1. Required for creation.
NodeEnablePublicIpAccess bool
If public access is enabled on worker nodes.
NodeServerEdition string
The edition of a node server (default: MemoryOptimized).
NodeStorageQuotaInMb int
The storage in MB on each worker node. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
NodeVCores int
The compute in vCores on each worker node (max: 104). See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
PointInTimeUTC string
Date and time in UTC (ISO8601 format) for cluster restore.
PostgresqlVersion string
The major PostgreSQL version on all cluster servers.
PreferredPrimaryZone string
Preferred primary availability zone (AZ) for all cluster servers.
SourceLocation string
The Azure region of source cluster for read replica clusters.
SourceResourceId string
The resource id of source cluster for read replica clusters.
Tags Dictionary<string, string>
Resource tags.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
AdministratorLoginPassword string
The password of the administrator login. Required for creation.
CitusVersion string
The Citus extension version on all cluster servers.
ClusterName Changes to this property will trigger replacement. string
The name of the cluster.
CoordinatorEnablePublicIpAccess bool
If public access is enabled on coordinator.
CoordinatorServerEdition string
The edition of a coordinator server (default: GeneralPurpose). Required for creation.
CoordinatorStorageQuotaInMb int
The storage of a server in MB. Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
CoordinatorVCores int
The vCores count of a server (max: 96). Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
EnableHa bool
If high availability (HA) is enabled or not for the cluster.
EnableShardsOnCoordinator bool
If distributed tables are placed on coordinator or not. Should be set to 'true' on single node clusters. Requires shard rebalancing after value is changed.
Location Changes to this property will trigger replacement. string
The geo-location where the resource lives
MaintenanceWindow MaintenanceWindowArgs
Maintenance window of a cluster.
NodeCount int
Worker node count of the cluster. When node count is 0, it represents a single node configuration with the ability to create distributed tables on that node. 2 or more worker nodes represent multi-node configuration. Node count value cannot be 1. Required for creation.
NodeEnablePublicIpAccess bool
If public access is enabled on worker nodes.
NodeServerEdition string
The edition of a node server (default: MemoryOptimized).
NodeStorageQuotaInMb int
The storage in MB on each worker node. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
NodeVCores int
The compute in vCores on each worker node (max: 104). See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
PointInTimeUTC string
Date and time in UTC (ISO8601 format) for cluster restore.
PostgresqlVersion string
The major PostgreSQL version on all cluster servers.
PreferredPrimaryZone string
Preferred primary availability zone (AZ) for all cluster servers.
SourceLocation string
The Azure region of source cluster for read replica clusters.
SourceResourceId string
The resource id of source cluster for read replica clusters.
Tags map[string]string
Resource tags.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group. The name is case insensitive.
administratorLoginPassword String
The password of the administrator login. Required for creation.
citusVersion String
The Citus extension version on all cluster servers.
clusterName Changes to this property will trigger replacement. String
The name of the cluster.
coordinatorEnablePublicIpAccess Boolean
If public access is enabled on coordinator.
coordinatorServerEdition String
The edition of a coordinator server (default: GeneralPurpose). Required for creation.
coordinatorStorageQuotaInMb Integer
The storage of a server in MB. Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
coordinatorVCores Integer
The vCores count of a server (max: 96). Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
enableHa Boolean
If high availability (HA) is enabled or not for the cluster.
enableShardsOnCoordinator Boolean
If distributed tables are placed on coordinator or not. Should be set to 'true' on single node clusters. Requires shard rebalancing after value is changed.
location Changes to this property will trigger replacement. String
The geo-location where the resource lives
maintenanceWindow MaintenanceWindow
Maintenance window of a cluster.
nodeCount Integer
Worker node count of the cluster. When node count is 0, it represents a single node configuration with the ability to create distributed tables on that node. 2 or more worker nodes represent multi-node configuration. Node count value cannot be 1. Required for creation.
nodeEnablePublicIpAccess Boolean
If public access is enabled on worker nodes.
nodeServerEdition String
The edition of a node server (default: MemoryOptimized).
nodeStorageQuotaInMb Integer
The storage in MB on each worker node. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
nodeVCores Integer
The compute in vCores on each worker node (max: 104). See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
pointInTimeUTC String
Date and time in UTC (ISO8601 format) for cluster restore.
postgresqlVersion String
The major PostgreSQL version on all cluster servers.
preferredPrimaryZone String
Preferred primary availability zone (AZ) for all cluster servers.
sourceLocation String
The Azure region of source cluster for read replica clusters.
sourceResourceId String
The resource id of source cluster for read replica clusters.
tags Map<String,String>
Resource tags.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the resource group. The name is case insensitive.
administratorLoginPassword string
The password of the administrator login. Required for creation.
citusVersion string
The Citus extension version on all cluster servers.
clusterName Changes to this property will trigger replacement. string
The name of the cluster.
coordinatorEnablePublicIpAccess boolean
If public access is enabled on coordinator.
coordinatorServerEdition string
The edition of a coordinator server (default: GeneralPurpose). Required for creation.
coordinatorStorageQuotaInMb number
The storage of a server in MB. Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
coordinatorVCores number
The vCores count of a server (max: 96). Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
enableHa boolean
If high availability (HA) is enabled or not for the cluster.
enableShardsOnCoordinator boolean
If distributed tables are placed on coordinator or not. Should be set to 'true' on single node clusters. Requires shard rebalancing after value is changed.
location Changes to this property will trigger replacement. string
The geo-location where the resource lives
maintenanceWindow MaintenanceWindow
Maintenance window of a cluster.
nodeCount number
Worker node count of the cluster. When node count is 0, it represents a single node configuration with the ability to create distributed tables on that node. 2 or more worker nodes represent multi-node configuration. Node count value cannot be 1. Required for creation.
nodeEnablePublicIpAccess boolean
If public access is enabled on worker nodes.
nodeServerEdition string
The edition of a node server (default: MemoryOptimized).
nodeStorageQuotaInMb number
The storage in MB on each worker node. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
nodeVCores number
The compute in vCores on each worker node (max: 104). See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
pointInTimeUTC string
Date and time in UTC (ISO8601 format) for cluster restore.
postgresqlVersion string
The major PostgreSQL version on all cluster servers.
preferredPrimaryZone string
Preferred primary availability zone (AZ) for all cluster servers.
sourceLocation string
The Azure region of source cluster for read replica clusters.
sourceResourceId string
The resource id of source cluster for read replica clusters.
tags {[key: string]: string}
Resource tags.
resource_group_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the resource group. The name is case insensitive.
administrator_login_password str
The password of the administrator login. Required for creation.
citus_version str
The Citus extension version on all cluster servers.
cluster_name Changes to this property will trigger replacement. str
The name of the cluster.
coordinator_enable_public_ip_access bool
If public access is enabled on coordinator.
coordinator_server_edition str
The edition of a coordinator server (default: GeneralPurpose). Required for creation.
coordinator_storage_quota_in_mb int
The storage of a server in MB. Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
coordinator_v_cores int
The vCores count of a server (max: 96). Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
enable_ha bool
If high availability (HA) is enabled or not for the cluster.
enable_shards_on_coordinator bool
If distributed tables are placed on coordinator or not. Should be set to 'true' on single node clusters. Requires shard rebalancing after value is changed.
location Changes to this property will trigger replacement. str
The geo-location where the resource lives
maintenance_window MaintenanceWindowArgs
Maintenance window of a cluster.
node_count int
Worker node count of the cluster. When node count is 0, it represents a single node configuration with the ability to create distributed tables on that node. 2 or more worker nodes represent multi-node configuration. Node count value cannot be 1. Required for creation.
node_enable_public_ip_access bool
If public access is enabled on worker nodes.
node_server_edition str
The edition of a node server (default: MemoryOptimized).
node_storage_quota_in_mb int
The storage in MB on each worker node. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
node_v_cores int
The compute in vCores on each worker node (max: 104). See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
point_in_time_utc str
Date and time in UTC (ISO8601 format) for cluster restore.
postgresql_version str
The major PostgreSQL version on all cluster servers.
preferred_primary_zone str
Preferred primary availability zone (AZ) for all cluster servers.
source_location str
The Azure region of source cluster for read replica clusters.
source_resource_id str
The resource id of source cluster for read replica clusters.
tags Mapping[str, str]
Resource tags.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the resource group. The name is case insensitive.
administratorLoginPassword String
The password of the administrator login. Required for creation.
citusVersion String
The Citus extension version on all cluster servers.
clusterName Changes to this property will trigger replacement. String
The name of the cluster.
coordinatorEnablePublicIpAccess Boolean
If public access is enabled on coordinator.
coordinatorServerEdition String
The edition of a coordinator server (default: GeneralPurpose). Required for creation.
coordinatorStorageQuotaInMb Number
The storage of a server in MB. Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
coordinatorVCores Number
The vCores count of a server (max: 96). Required for creation. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
enableHa Boolean
If high availability (HA) is enabled or not for the cluster.
enableShardsOnCoordinator Boolean
If distributed tables are placed on coordinator or not. Should be set to 'true' on single node clusters. Requires shard rebalancing after value is changed.
location Changes to this property will trigger replacement. String
The geo-location where the resource lives
maintenanceWindow Property Map
Maintenance window of a cluster.
nodeCount Number
Worker node count of the cluster. When node count is 0, it represents a single node configuration with the ability to create distributed tables on that node. 2 or more worker nodes represent multi-node configuration. Node count value cannot be 1. Required for creation.
nodeEnablePublicIpAccess Boolean
If public access is enabled on worker nodes.
nodeServerEdition String
The edition of a node server (default: MemoryOptimized).
nodeStorageQuotaInMb Number
The storage in MB on each worker node. See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
nodeVCores Number
The compute in vCores on each worker node (max: 104). See https://learn.microsoft.com/azure/cosmos-db/postgresql/resources-compute for more information.
pointInTimeUTC String
Date and time in UTC (ISO8601 format) for cluster restore.
postgresqlVersion String
The major PostgreSQL version on all cluster servers.
preferredPrimaryZone String
Preferred primary availability zone (AZ) for all cluster servers.
sourceLocation String
The Azure region of source cluster for read replica clusters.
sourceResourceId String
The resource id of source cluster for read replica clusters.
tags Map<String>
Resource tags.

Outputs

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

AdministratorLogin string
The administrator's login name of the servers in the cluster.
EarliestRestoreTime string
The earliest restore point time (ISO8601 format) for the cluster.
Id string
The provider-assigned unique ID for this managed resource.
Name string
The name of the resource
PrivateEndpointConnections List<Pulumi.AzureNative.DBforPostgreSQL.Outputs.SimplePrivateEndpointConnectionResponse>
The private endpoint connections for a cluster.
ProvisioningState string
Provisioning state of the cluster
ReadReplicas List<string>
The array of read replica clusters.
ServerNames List<Pulumi.AzureNative.DBforPostgreSQL.Outputs.ServerNameItemResponse>
The list of server names in the cluster
State string
A state of a cluster/server that is visible to user.
SystemData Pulumi.AzureNative.DBforPostgreSQL.Outputs.SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
Type string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
AdministratorLogin string
The administrator's login name of the servers in the cluster.
EarliestRestoreTime string
The earliest restore point time (ISO8601 format) for the cluster.
Id string
The provider-assigned unique ID for this managed resource.
Name string
The name of the resource
PrivateEndpointConnections []SimplePrivateEndpointConnectionResponse
The private endpoint connections for a cluster.
ProvisioningState string
Provisioning state of the cluster
ReadReplicas []string
The array of read replica clusters.
ServerNames []ServerNameItemResponse
The list of server names in the cluster
State string
A state of a cluster/server that is visible to user.
SystemData SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
Type string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
administratorLogin String
The administrator's login name of the servers in the cluster.
earliestRestoreTime String
The earliest restore point time (ISO8601 format) for the cluster.
id String
The provider-assigned unique ID for this managed resource.
name String
The name of the resource
privateEndpointConnections List<SimplePrivateEndpointConnectionResponse>
The private endpoint connections for a cluster.
provisioningState String
Provisioning state of the cluster
readReplicas List<String>
The array of read replica clusters.
serverNames List<ServerNameItemResponse>
The list of server names in the cluster
state String
A state of a cluster/server that is visible to user.
systemData SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type String
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
administratorLogin string
The administrator's login name of the servers in the cluster.
earliestRestoreTime string
The earliest restore point time (ISO8601 format) for the cluster.
id string
The provider-assigned unique ID for this managed resource.
name string
The name of the resource
privateEndpointConnections SimplePrivateEndpointConnectionResponse[]
The private endpoint connections for a cluster.
provisioningState string
Provisioning state of the cluster
readReplicas string[]
The array of read replica clusters.
serverNames ServerNameItemResponse[]
The list of server names in the cluster
state string
A state of a cluster/server that is visible to user.
systemData SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
administrator_login str
The administrator's login name of the servers in the cluster.
earliest_restore_time str
The earliest restore point time (ISO8601 format) for the cluster.
id str
The provider-assigned unique ID for this managed resource.
name str
The name of the resource
private_endpoint_connections Sequence[SimplePrivateEndpointConnectionResponse]
The private endpoint connections for a cluster.
provisioning_state str
Provisioning state of the cluster
read_replicas Sequence[str]
The array of read replica clusters.
server_names Sequence[ServerNameItemResponse]
The list of server names in the cluster
state str
A state of a cluster/server that is visible to user.
system_data SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type str
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
administratorLogin String
The administrator's login name of the servers in the cluster.
earliestRestoreTime String
The earliest restore point time (ISO8601 format) for the cluster.
id String
The provider-assigned unique ID for this managed resource.
name String
The name of the resource
privateEndpointConnections List<Property Map>
The private endpoint connections for a cluster.
provisioningState String
Provisioning state of the cluster
readReplicas List<String>
The array of read replica clusters.
serverNames List<Property Map>
The list of server names in the cluster
state String
A state of a cluster/server that is visible to user.
systemData Property Map
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type String
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

Supporting Types

MaintenanceWindow
, MaintenanceWindowArgs

CustomWindow string
indicates whether custom window is enabled or disabled
DayOfWeek int
day of week for maintenance window
StartHour int
start hour for maintenance window
StartMinute int
start minute for maintenance window
CustomWindow string
indicates whether custom window is enabled or disabled
DayOfWeek int
day of week for maintenance window
StartHour int
start hour for maintenance window
StartMinute int
start minute for maintenance window
customWindow String
indicates whether custom window is enabled or disabled
dayOfWeek Integer
day of week for maintenance window
startHour Integer
start hour for maintenance window
startMinute Integer
start minute for maintenance window
customWindow string
indicates whether custom window is enabled or disabled
dayOfWeek number
day of week for maintenance window
startHour number
start hour for maintenance window
startMinute number
start minute for maintenance window
custom_window str
indicates whether custom window is enabled or disabled
day_of_week int
day of week for maintenance window
start_hour int
start hour for maintenance window
start_minute int
start minute for maintenance window
customWindow String
indicates whether custom window is enabled or disabled
dayOfWeek Number
day of week for maintenance window
startHour Number
start hour for maintenance window
startMinute Number
start minute for maintenance window

MaintenanceWindowResponse
, MaintenanceWindowResponseArgs

CustomWindow string
indicates whether custom window is enabled or disabled
DayOfWeek int
day of week for maintenance window
StartHour int
start hour for maintenance window
StartMinute int
start minute for maintenance window
CustomWindow string
indicates whether custom window is enabled or disabled
DayOfWeek int
day of week for maintenance window
StartHour int
start hour for maintenance window
StartMinute int
start minute for maintenance window
customWindow String
indicates whether custom window is enabled or disabled
dayOfWeek Integer
day of week for maintenance window
startHour Integer
start hour for maintenance window
startMinute Integer
start minute for maintenance window
customWindow string
indicates whether custom window is enabled or disabled
dayOfWeek number
day of week for maintenance window
startHour number
start hour for maintenance window
startMinute number
start minute for maintenance window
custom_window str
indicates whether custom window is enabled or disabled
day_of_week int
day of week for maintenance window
start_hour int
start hour for maintenance window
start_minute int
start minute for maintenance window
customWindow String
indicates whether custom window is enabled or disabled
dayOfWeek Number
day of week for maintenance window
startHour Number
start hour for maintenance window
startMinute Number
start minute for maintenance window

PrivateEndpointPropertyResponse
, PrivateEndpointPropertyResponseArgs

Id string
Resource id of the private endpoint.
Id string
Resource id of the private endpoint.
id String
Resource id of the private endpoint.
id string
Resource id of the private endpoint.
id str
Resource id of the private endpoint.
id String
Resource id of the private endpoint.

PrivateLinkServiceConnectionStateResponse
, PrivateLinkServiceConnectionStateResponseArgs

ActionsRequired string
A message indicating if changes on the service provider require any updates on the consumer.
Description string
The reason for approval/rejection of the connection.
Status string
Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
ActionsRequired string
A message indicating if changes on the service provider require any updates on the consumer.
Description string
The reason for approval/rejection of the connection.
Status string
Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
actionsRequired String
A message indicating if changes on the service provider require any updates on the consumer.
description String
The reason for approval/rejection of the connection.
status String
Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
actionsRequired string
A message indicating if changes on the service provider require any updates on the consumer.
description string
The reason for approval/rejection of the connection.
status string
Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
actions_required str
A message indicating if changes on the service provider require any updates on the consumer.
description str
The reason for approval/rejection of the connection.
status str
Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.
actionsRequired String
A message indicating if changes on the service provider require any updates on the consumer.
description String
The reason for approval/rejection of the connection.
status String
Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service.

ServerNameItemResponse
, ServerNameItemResponseArgs

FullyQualifiedDomainName This property is required. string
The fully qualified domain name of a server.
Name string
The name of a server.
FullyQualifiedDomainName This property is required. string
The fully qualified domain name of a server.
Name string
The name of a server.
fullyQualifiedDomainName This property is required. String
The fully qualified domain name of a server.
name String
The name of a server.
fullyQualifiedDomainName This property is required. string
The fully qualified domain name of a server.
name string
The name of a server.
fully_qualified_domain_name This property is required. str
The fully qualified domain name of a server.
name str
The name of a server.
fullyQualifiedDomainName This property is required. String
The fully qualified domain name of a server.
name String
The name of a server.

SimplePrivateEndpointConnectionResponse
, SimplePrivateEndpointConnectionResponseArgs

Id This property is required. string
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
Name This property is required. string
The name of the resource
SystemData This property is required. Pulumi.AzureNative.DBforPostgreSQL.Inputs.SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
Type This property is required. string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
GroupIds List<string>
Group ids of the private endpoint connection.
PrivateEndpoint Pulumi.AzureNative.DBforPostgreSQL.Inputs.PrivateEndpointPropertyResponse
Private endpoint which the connection belongs to.
PrivateLinkServiceConnectionState Pulumi.AzureNative.DBforPostgreSQL.Inputs.PrivateLinkServiceConnectionStateResponse
A collection of information about the state of the connection between service consumer and provider.
Id This property is required. string
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
Name This property is required. string
The name of the resource
SystemData This property is required. SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
Type This property is required. string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
GroupIds []string
Group ids of the private endpoint connection.
PrivateEndpoint PrivateEndpointPropertyResponse
Private endpoint which the connection belongs to.
PrivateLinkServiceConnectionState PrivateLinkServiceConnectionStateResponse
A collection of information about the state of the connection between service consumer and provider.
id This property is required. String
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
name This property is required. String
The name of the resource
systemData This property is required. SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type This property is required. String
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
groupIds List<String>
Group ids of the private endpoint connection.
privateEndpoint PrivateEndpointPropertyResponse
Private endpoint which the connection belongs to.
privateLinkServiceConnectionState PrivateLinkServiceConnectionStateResponse
A collection of information about the state of the connection between service consumer and provider.
id This property is required. string
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
name This property is required. string
The name of the resource
systemData This property is required. SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type This property is required. string
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
groupIds string[]
Group ids of the private endpoint connection.
privateEndpoint PrivateEndpointPropertyResponse
Private endpoint which the connection belongs to.
privateLinkServiceConnectionState PrivateLinkServiceConnectionStateResponse
A collection of information about the state of the connection between service consumer and provider.
id This property is required. str
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
name This property is required. str
The name of the resource
system_data This property is required. SystemDataResponse
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type This property is required. str
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
group_ids Sequence[str]
Group ids of the private endpoint connection.
private_endpoint PrivateEndpointPropertyResponse
Private endpoint which the connection belongs to.
private_link_service_connection_state PrivateLinkServiceConnectionStateResponse
A collection of information about the state of the connection between service consumer and provider.
id This property is required. String
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
name This property is required. String
The name of the resource
systemData This property is required. Property Map
Azure Resource Manager metadata containing createdBy and modifiedBy information.
type This property is required. String
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
groupIds List<String>
Group ids of the private endpoint connection.
privateEndpoint Property Map
Private endpoint which the connection belongs to.
privateLinkServiceConnectionState Property Map
A collection of information about the state of the connection between service consumer and provider.

SystemDataResponse
, SystemDataResponseArgs

CreatedAt string
The timestamp of resource creation (UTC).
CreatedBy string
The identity that created the resource.
CreatedByType string
The type of identity that created the resource.
LastModifiedAt string
The timestamp of resource last modification (UTC)
LastModifiedBy string
The identity that last modified the resource.
LastModifiedByType string
The type of identity that last modified the resource.
CreatedAt string
The timestamp of resource creation (UTC).
CreatedBy string
The identity that created the resource.
CreatedByType string
The type of identity that created the resource.
LastModifiedAt string
The timestamp of resource last modification (UTC)
LastModifiedBy string
The identity that last modified the resource.
LastModifiedByType string
The type of identity that last modified the resource.
createdAt String
The timestamp of resource creation (UTC).
createdBy String
The identity that created the resource.
createdByType String
The type of identity that created the resource.
lastModifiedAt String
The timestamp of resource last modification (UTC)
lastModifiedBy String
The identity that last modified the resource.
lastModifiedByType String
The type of identity that last modified the resource.
createdAt string
The timestamp of resource creation (UTC).
createdBy string
The identity that created the resource.
createdByType string
The type of identity that created the resource.
lastModifiedAt string
The timestamp of resource last modification (UTC)
lastModifiedBy string
The identity that last modified the resource.
lastModifiedByType string
The type of identity that last modified the resource.
created_at str
The timestamp of resource creation (UTC).
created_by str
The identity that created the resource.
created_by_type str
The type of identity that created the resource.
last_modified_at str
The timestamp of resource last modification (UTC)
last_modified_by str
The identity that last modified the resource.
last_modified_by_type str
The type of identity that last modified the resource.
createdAt String
The timestamp of resource creation (UTC).
createdBy String
The identity that created the resource.
createdByType String
The type of identity that created the resource.
lastModifiedAt String
The timestamp of resource last modification (UTC)
lastModifiedBy String
The identity that last modified the resource.
lastModifiedByType String
The type of identity that last modified the resource.

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:dbforpostgresql:Cluster testcluster-singlenode /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DBforPostgreSQL/serverGroupsv2/{clusterName} 
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
azure-native-v2 pulumi/pulumi-azure-native
License
Apache-2.0