1. Packages
  2. Vkcs Provider
  3. API Docs
  4. DbCluster
vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs

vkcs.DbCluster

Explore with Pulumi AI

vkcs logo
vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs

    Provides a db cluster resource. This can be used to create, modify and delete db cluster for galera_mysql, postgresql, tarantool datastores.

    Example Usage

    Basic cluster

    import * as pulumi from "@pulumi/pulumi";
    import * as vkcs from "@pulumi/vkcs";
    
    const pgCluster = new vkcs.DbCluster("pgCluster", {
        availabilityZone: "GZ1",
        datastore: {
            type: "postgresql",
            version: "16",
        },
        clusterSize: 3,
        flavorId: data.vkcs_compute_flavor.basic.id,
        cloudMonitoringEnabled: true,
        volumeSize: 10,
        volumeType: "ceph-ssd",
        networks: [{
            uuid: vkcs_networking_network.db.id,
        }],
    }, {
        dependsOn: [vkcs_networking_router_interface.db],
    });
    const loadbalancer = vkcs.getLbLoadbalancerOutput({
        id: pgCluster.loadbalancerId,
    });
    const loadbalancerPort = loadbalancer.apply(loadbalancer => vkcs.getNetworkingPortOutput({
        id: loadbalancer.vipPortId,
    }));
    export const clusterIps = loadbalancerPort.apply(loadbalancerPort => loadbalancerPort.allFixedIps);
    
    import pulumi
    import pulumi_vkcs as vkcs
    
    pg_cluster = vkcs.DbCluster("pgCluster",
        availability_zone="GZ1",
        datastore={
            "type": "postgresql",
            "version": "16",
        },
        cluster_size=3,
        flavor_id=data["vkcs_compute_flavor"]["basic"]["id"],
        cloud_monitoring_enabled=True,
        volume_size=10,
        volume_type="ceph-ssd",
        networks=[{
            "uuid": vkcs_networking_network["db"]["id"],
        }],
        opts = pulumi.ResourceOptions(depends_on=[vkcs_networking_router_interface["db"]]))
    loadbalancer = vkcs.get_lb_loadbalancer_output(id=pg_cluster.loadbalancer_id)
    loadbalancer_port = loadbalancer.apply(lambda loadbalancer: vkcs.get_networking_port_output(id=loadbalancer.vip_port_id))
    pulumi.export("clusterIps", loadbalancer_port.all_fixed_ips)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    func main() {
    pulumi.Run(func(ctx *pulumi.Context) error {
    pgCluster, err := vkcs.NewDbCluster(ctx, "pgCluster", &vkcs.DbClusterArgs{
    AvailabilityZone: pulumi.String("GZ1"),
    Datastore: &vkcs.DbClusterDatastoreArgs{
    Type: pulumi.String("postgresql"),
    Version: pulumi.String("16"),
    },
    ClusterSize: pulumi.Float64(3),
    FlavorId: pulumi.Any(data.Vkcs_compute_flavor.Basic.Id),
    CloudMonitoringEnabled: pulumi.Bool(true),
    VolumeSize: pulumi.Float64(10),
    VolumeType: pulumi.String("ceph-ssd"),
    Networks: vkcs.DbClusterNetworkArray{
    &vkcs.DbClusterNetworkArgs{
    Uuid: pulumi.Any(vkcs_networking_network.Db.Id),
    },
    },
    }, pulumi.DependsOn([]pulumi.Resource{
    vkcs_networking_router_interface.Db,
    }))
    if err != nil {
    return err
    }
    loadbalancer := vkcs.LookupLbLoadbalancerOutput(ctx, vkcs.GetLbLoadbalancerOutputArgs{
    Id: pgCluster.LoadbalancerId,
    }, nil);
    loadbalancerPort := loadbalancer.ApplyT(func(loadbalancer vkcs.GetLbLoadbalancerResult) (vkcs.GetNetworkingPortResult, error) {
    return vkcs.GetNetworkingPortResult(interface{}(vkcs.LookupNetworkingPortOutput(ctx, vkcs.GetNetworkingPortOutputArgs{
    Id: loadbalancer.VipPortId,
    }, nil))), nil
    }).(vkcs.GetNetworkingPortResultOutput)
    ctx.Export("clusterIps", loadbalancerPort.ApplyT(func(loadbalancerPort vkcs.GetNetworkingPortResult) (interface{}, error) {
    return loadbalancerPort.AllFixedIps, nil
    }).(pulumi.Interface{}Output))
    return nil
    })
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vkcs = Pulumi.Vkcs;
    
    return await Deployment.RunAsync(() => 
    {
        var pgCluster = new Vkcs.DbCluster("pgCluster", new()
        {
            AvailabilityZone = "GZ1",
            Datastore = new Vkcs.Inputs.DbClusterDatastoreArgs
            {
                Type = "postgresql",
                Version = "16",
            },
            ClusterSize = 3,
            FlavorId = data.Vkcs_compute_flavor.Basic.Id,
            CloudMonitoringEnabled = true,
            VolumeSize = 10,
            VolumeType = "ceph-ssd",
            Networks = new[]
            {
                new Vkcs.Inputs.DbClusterNetworkArgs
                {
                    Uuid = vkcs_networking_network.Db.Id,
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                vkcs_networking_router_interface.Db,
            },
        });
    
        var loadbalancer = Vkcs.GetLbLoadbalancer.Invoke(new()
        {
            Id = pgCluster.LoadbalancerId,
        });
    
        var loadbalancerPort = Vkcs.GetNetworkingPort.Invoke(new()
        {
            Id = loadbalancer.Apply(getLbLoadbalancerResult => getLbLoadbalancerResult.VipPortId),
        });
    
        return new Dictionary<string, object?>
        {
            ["clusterIps"] = loadbalancerPort.Apply(getNetworkingPortResult => getNetworkingPortResult.AllFixedIps),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vkcs.DbCluster;
    import com.pulumi.vkcs.DbClusterArgs;
    import com.pulumi.vkcs.inputs.DbClusterDatastoreArgs;
    import com.pulumi.vkcs.inputs.DbClusterNetworkArgs;
    import com.pulumi.vkcs.VkcsFunctions;
    import com.pulumi.vkcs.inputs.GetLbLoadbalancerArgs;
    import com.pulumi.vkcs.inputs.GetNetworkingPortArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 pgCluster = new DbCluster("pgCluster", DbClusterArgs.builder()
                .availabilityZone("GZ1")
                .datastore(DbClusterDatastoreArgs.builder()
                    .type("postgresql")
                    .version("16")
                    .build())
                .clusterSize(3)
                .flavorId(data.vkcs_compute_flavor().basic().id())
                .cloudMonitoringEnabled(true)
                .volumeSize(10)
                .volumeType("ceph-ssd")
                .networks(DbClusterNetworkArgs.builder()
                    .uuid(vkcs_networking_network.db().id())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(vkcs_networking_router_interface.db())
                    .build());
    
            final var loadbalancer = VkcsFunctions.getLbLoadbalancer(GetLbLoadbalancerArgs.builder()
                .id(pgCluster.loadbalancerId())
                .build());
    
            final var loadbalancerPort = VkcsFunctions.getNetworkingPort(GetNetworkingPortArgs.builder()
                .id(loadbalancer.applyValue(getLbLoadbalancerResult -> getLbLoadbalancerResult).applyValue(loadbalancer -> loadbalancer.applyValue(getLbLoadbalancerResult -> getLbLoadbalancerResult.vipPortId())))
                .build());
    
            ctx.export("clusterIps", loadbalancerPort.applyValue(getNetworkingPortResult -> getNetworkingPortResult).applyValue(loadbalancerPort -> loadbalancerPort.applyValue(getNetworkingPortResult -> getNetworkingPortResult.allFixedIps())));
        }
    }
    
    resources:
      pgCluster:
        type: vkcs:DbCluster
        properties:
          availabilityZone: GZ1
          datastore:
            type: postgresql
            version: '16'
          clusterSize: 3
          flavorId: ${data.vkcs_compute_flavor.basic.id}
          cloudMonitoringEnabled: true
          volumeSize: 10
          volumeType: ceph-ssd
          networks:
            - uuid: ${vkcs_networking_network.db.id}
        options:
          dependsOn:
            - ${vkcs_networking_router_interface.db}
    variables:
      loadbalancer:
        fn::invoke:
          function: vkcs:getLbLoadbalancer
          arguments:
            id: ${pgCluster.loadbalancerId}
      loadbalancerPort:
        fn::invoke:
          function: vkcs:getNetworkingPort
          arguments:
            id: ${loadbalancer.vipPortId}
    outputs:
      clusterIps: ${loadbalancerPort.allFixedIps}
    

    Cluster restored from backup

    import * as pulumi from "@pulumi/pulumi";
    import * as vkcs from "@pulumi/vkcs";
    
    const mydbCluster = new vkcs.DbCluster("mydbCluster", {
        clusterSize: 3,
        datastore: {
            type: "postgresql",
            version: "16",
        },
        flavorId: "9e931469-1490-489e-88af-29a289681c53",
        networks: [{
            uuid: "3ee9b184-3311-4d85-840b-7a9c48e7beac",
        }],
        restorePoint: {
            backupId: "backup_id",
        },
        volumeSize: 10,
        volumeType: "ceph-ssd",
    });
    
    import pulumi
    import pulumi_vkcs as vkcs
    
    mydb_cluster = vkcs.DbCluster("mydbCluster",
        cluster_size=3,
        datastore={
            "type": "postgresql",
            "version": "16",
        },
        flavor_id="9e931469-1490-489e-88af-29a289681c53",
        networks=[{
            "uuid": "3ee9b184-3311-4d85-840b-7a9c48e7beac",
        }],
        restore_point={
            "backup_id": "backup_id",
        },
        volume_size=10,
        volume_type="ceph-ssd")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := vkcs.NewDbCluster(ctx, "mydbCluster", &vkcs.DbClusterArgs{
    			ClusterSize: pulumi.Float64(3),
    			Datastore: &vkcs.DbClusterDatastoreArgs{
    				Type:    pulumi.String("postgresql"),
    				Version: pulumi.String("16"),
    			},
    			FlavorId: pulumi.String("9e931469-1490-489e-88af-29a289681c53"),
    			Networks: vkcs.DbClusterNetworkArray{
    				&vkcs.DbClusterNetworkArgs{
    					Uuid: pulumi.String("3ee9b184-3311-4d85-840b-7a9c48e7beac"),
    				},
    			},
    			RestorePoint: &vkcs.DbClusterRestorePointArgs{
    				BackupId: pulumi.String("backup_id"),
    			},
    			VolumeSize: pulumi.Float64(10),
    			VolumeType: pulumi.String("ceph-ssd"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vkcs = Pulumi.Vkcs;
    
    return await Deployment.RunAsync(() => 
    {
        var mydbCluster = new Vkcs.DbCluster("mydbCluster", new()
        {
            ClusterSize = 3,
            Datastore = new Vkcs.Inputs.DbClusterDatastoreArgs
            {
                Type = "postgresql",
                Version = "16",
            },
            FlavorId = "9e931469-1490-489e-88af-29a289681c53",
            Networks = new[]
            {
                new Vkcs.Inputs.DbClusterNetworkArgs
                {
                    Uuid = "3ee9b184-3311-4d85-840b-7a9c48e7beac",
                },
            },
            RestorePoint = new Vkcs.Inputs.DbClusterRestorePointArgs
            {
                BackupId = "backup_id",
            },
            VolumeSize = 10,
            VolumeType = "ceph-ssd",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vkcs.DbCluster;
    import com.pulumi.vkcs.DbClusterArgs;
    import com.pulumi.vkcs.inputs.DbClusterDatastoreArgs;
    import com.pulumi.vkcs.inputs.DbClusterNetworkArgs;
    import com.pulumi.vkcs.inputs.DbClusterRestorePointArgs;
    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 mydbCluster = new DbCluster("mydbCluster", DbClusterArgs.builder()
                .clusterSize(3)
                .datastore(DbClusterDatastoreArgs.builder()
                    .type("postgresql")
                    .version("16")
                    .build())
                .flavorId("9e931469-1490-489e-88af-29a289681c53")
                .networks(DbClusterNetworkArgs.builder()
                    .uuid("3ee9b184-3311-4d85-840b-7a9c48e7beac")
                    .build())
                .restorePoint(DbClusterRestorePointArgs.builder()
                    .backupId("backup_id")
                    .build())
                .volumeSize(10)
                .volumeType("ceph-ssd")
                .build());
    
        }
    }
    
    resources:
      mydbCluster:
        type: vkcs:DbCluster
        properties:
          clusterSize: 3
          datastore:
            type: postgresql
            version: '16'
          flavorId: 9e931469-1490-489e-88af-29a289681c53
          networks:
            - uuid: 3ee9b184-3311-4d85-840b-7a9c48e7beac
          restorePoint:
            backupId: backup_id
          volumeSize: 10
          volumeType: ceph-ssd
    

    Cluster with scheduled PITR backup

    import * as pulumi from "@pulumi/pulumi";
    import * as vkcs from "@pulumi/vkcs";
    
    const pgWithBackup = new vkcs.DbCluster("pgWithBackup", {
        availabilityZone: "GZ1",
        datastore: {
            type: "postgresql",
            version: "16",
        },
        clusterSize: 3,
        flavorId: data.vkcs_compute_flavor.basic.id,
        volumeSize: 10,
        volumeType: "ceph-ssd",
        networks: [{
            uuid: vkcs_networking_network.db.id,
        }],
        backupSchedule: {
            name: "three_hours_backup_tf_example",
            startHours: 16,
            startMinutes: 20,
            intervalHours: 3,
            keepCount: 3,
        },
    }, {
        dependsOn: [vkcs_networking_router_interface.db],
    });
    
    import pulumi
    import pulumi_vkcs as vkcs
    
    pg_with_backup = vkcs.DbCluster("pgWithBackup",
        availability_zone="GZ1",
        datastore={
            "type": "postgresql",
            "version": "16",
        },
        cluster_size=3,
        flavor_id=data["vkcs_compute_flavor"]["basic"]["id"],
        volume_size=10,
        volume_type="ceph-ssd",
        networks=[{
            "uuid": vkcs_networking_network["db"]["id"],
        }],
        backup_schedule={
            "name": "three_hours_backup_tf_example",
            "start_hours": 16,
            "start_minutes": 20,
            "interval_hours": 3,
            "keep_count": 3,
        },
        opts = pulumi.ResourceOptions(depends_on=[vkcs_networking_router_interface["db"]]))
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := vkcs.NewDbCluster(ctx, "pgWithBackup", &vkcs.DbClusterArgs{
    			AvailabilityZone: pulumi.String("GZ1"),
    			Datastore: &vkcs.DbClusterDatastoreArgs{
    				Type:    pulumi.String("postgresql"),
    				Version: pulumi.String("16"),
    			},
    			ClusterSize: pulumi.Float64(3),
    			FlavorId:    pulumi.Any(data.Vkcs_compute_flavor.Basic.Id),
    			VolumeSize:  pulumi.Float64(10),
    			VolumeType:  pulumi.String("ceph-ssd"),
    			Networks: vkcs.DbClusterNetworkArray{
    				&vkcs.DbClusterNetworkArgs{
    					Uuid: pulumi.Any(vkcs_networking_network.Db.Id),
    				},
    			},
    			BackupSchedule: &vkcs.DbClusterBackupScheduleArgs{
    				Name:          pulumi.String("three_hours_backup_tf_example"),
    				StartHours:    pulumi.Float64(16),
    				StartMinutes:  pulumi.Float64(20),
    				IntervalHours: pulumi.Float64(3),
    				KeepCount:     pulumi.Float64(3),
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			vkcs_networking_router_interface.Db,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vkcs = Pulumi.Vkcs;
    
    return await Deployment.RunAsync(() => 
    {
        var pgWithBackup = new Vkcs.DbCluster("pgWithBackup", new()
        {
            AvailabilityZone = "GZ1",
            Datastore = new Vkcs.Inputs.DbClusterDatastoreArgs
            {
                Type = "postgresql",
                Version = "16",
            },
            ClusterSize = 3,
            FlavorId = data.Vkcs_compute_flavor.Basic.Id,
            VolumeSize = 10,
            VolumeType = "ceph-ssd",
            Networks = new[]
            {
                new Vkcs.Inputs.DbClusterNetworkArgs
                {
                    Uuid = vkcs_networking_network.Db.Id,
                },
            },
            BackupSchedule = new Vkcs.Inputs.DbClusterBackupScheduleArgs
            {
                Name = "three_hours_backup_tf_example",
                StartHours = 16,
                StartMinutes = 20,
                IntervalHours = 3,
                KeepCount = 3,
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                vkcs_networking_router_interface.Db,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vkcs.DbCluster;
    import com.pulumi.vkcs.DbClusterArgs;
    import com.pulumi.vkcs.inputs.DbClusterDatastoreArgs;
    import com.pulumi.vkcs.inputs.DbClusterNetworkArgs;
    import com.pulumi.vkcs.inputs.DbClusterBackupScheduleArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 pgWithBackup = new DbCluster("pgWithBackup", DbClusterArgs.builder()
                .availabilityZone("GZ1")
                .datastore(DbClusterDatastoreArgs.builder()
                    .type("postgresql")
                    .version("16")
                    .build())
                .clusterSize(3)
                .flavorId(data.vkcs_compute_flavor().basic().id())
                .volumeSize(10)
                .volumeType("ceph-ssd")
                .networks(DbClusterNetworkArgs.builder()
                    .uuid(vkcs_networking_network.db().id())
                    .build())
                .backupSchedule(DbClusterBackupScheduleArgs.builder()
                    .name("three_hours_backup_tf_example")
                    .startHours(16)
                    .startMinutes(20)
                    .intervalHours(3)
                    .keepCount(3)
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(vkcs_networking_router_interface.db())
                    .build());
    
        }
    }
    
    resources:
      pgWithBackup:
        type: vkcs:DbCluster
        properties:
          availabilityZone: GZ1
          datastore:
            type: postgresql
            version: '16'
          clusterSize: 3
          flavorId: ${data.vkcs_compute_flavor.basic.id}
          volumeSize: 10
          volumeType: ceph-ssd
          networks:
            - uuid: ${vkcs_networking_network.db.id}
          backupSchedule:
            name: three_hours_backup_tf_example
            startHours: 16
            startMinutes: 20
            intervalHours: 3
            keepCount: 3
        options:
          dependsOn:
            - ${vkcs_networking_router_interface.db}
    

    Multi-zone PostgreSQL cluster

    In order to improve reliability and fault tolerance, you can set up a cluster in multiple availability zones. To achieve this, use the specific datastore combined with list of availability zones to deploy into. To get the cluster IP address, use the “vrrp_port_id” attribute.

    import * as pulumi from "@pulumi/pulumi";
    import * as vkcs from "@pulumi/vkcs";
    
    const cluster = new vkcs.DbCluster("cluster", {
        availabilityZones: [
            "GZ1",
            "MS1",
        ],
        clusterSize: 3,
        flavorId: data.vkcs_compute_flavor.basic.id,
        volumeSize: 10,
        volumeType: "ceph-ssd",
        datastore: {
            version: "16",
            type: "postgresql_multiaz",
        },
        networks: [{
            uuid: vkcs_networking_network.db.id,
        }],
    }, {
        dependsOn: [vkcs_networking_router_interface.db],
    });
    const vrrpPort = vkcs.getNetworkingPortOutput({
        id: cluster.vrrpPortId,
    });
    export const clusterIp = vrrpPort.apply(vrrpPort => vrrpPort.allFixedIps?.[0]);
    
    import pulumi
    import pulumi_vkcs as vkcs
    
    cluster = vkcs.DbCluster("cluster",
        availability_zones=[
            "GZ1",
            "MS1",
        ],
        cluster_size=3,
        flavor_id=data["vkcs_compute_flavor"]["basic"]["id"],
        volume_size=10,
        volume_type="ceph-ssd",
        datastore={
            "version": "16",
            "type": "postgresql_multiaz",
        },
        networks=[{
            "uuid": vkcs_networking_network["db"]["id"],
        }],
        opts = pulumi.ResourceOptions(depends_on=[vkcs_networking_router_interface["db"]]))
    vrrp_port = vkcs.get_networking_port_output(id=cluster.vrrp_port_id)
    pulumi.export("clusterIp", vrrp_port.all_fixed_ips[0])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/vkcs/vkcs"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		cluster, err := vkcs.NewDbCluster(ctx, "cluster", &vkcs.DbClusterArgs{
    			AvailabilityZones: pulumi.StringArray{
    				pulumi.String("GZ1"),
    				pulumi.String("MS1"),
    			},
    			ClusterSize: pulumi.Float64(3),
    			FlavorId:    pulumi.Any(data.Vkcs_compute_flavor.Basic.Id),
    			VolumeSize:  pulumi.Float64(10),
    			VolumeType:  pulumi.String("ceph-ssd"),
    			Datastore: &vkcs.DbClusterDatastoreArgs{
    				Version: pulumi.String("16"),
    				Type:    pulumi.String("postgresql_multiaz"),
    			},
    			Networks: vkcs.DbClusterNetworkArray{
    				&vkcs.DbClusterNetworkArgs{
    					Uuid: pulumi.Any(vkcs_networking_network.Db.Id),
    				},
    			},
    		}, pulumi.DependsOn([]pulumi.Resource{
    			vkcs_networking_router_interface.Db,
    		}))
    		if err != nil {
    			return err
    		}
    		vrrpPort := vkcs.LookupNetworkingPortOutput(ctx, vkcs.GetNetworkingPortOutputArgs{
    			Id: cluster.VrrpPortId,
    		}, nil)
    		ctx.Export("clusterIp", vrrpPort.ApplyT(func(vrrpPort vkcs.GetNetworkingPortResult) (*string, error) {
    			return &vrrpPort.AllFixedIps[0], nil
    		}).(pulumi.StringPtrOutput))
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Vkcs = Pulumi.Vkcs;
    
    return await Deployment.RunAsync(() => 
    {
        var cluster = new Vkcs.DbCluster("cluster", new()
        {
            AvailabilityZones = new[]
            {
                "GZ1",
                "MS1",
            },
            ClusterSize = 3,
            FlavorId = data.Vkcs_compute_flavor.Basic.Id,
            VolumeSize = 10,
            VolumeType = "ceph-ssd",
            Datastore = new Vkcs.Inputs.DbClusterDatastoreArgs
            {
                Version = "16",
                Type = "postgresql_multiaz",
            },
            Networks = new[]
            {
                new Vkcs.Inputs.DbClusterNetworkArgs
                {
                    Uuid = vkcs_networking_network.Db.Id,
                },
            },
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                vkcs_networking_router_interface.Db,
            },
        });
    
        var vrrpPort = Vkcs.GetNetworkingPort.Invoke(new()
        {
            Id = cluster.VrrpPortId,
        });
    
        return new Dictionary<string, object?>
        {
            ["clusterIp"] = vrrpPort.Apply(getNetworkingPortResult => getNetworkingPortResult.AllFixedIps[0]),
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.vkcs.DbCluster;
    import com.pulumi.vkcs.DbClusterArgs;
    import com.pulumi.vkcs.inputs.DbClusterDatastoreArgs;
    import com.pulumi.vkcs.inputs.DbClusterNetworkArgs;
    import com.pulumi.vkcs.VkcsFunctions;
    import com.pulumi.vkcs.inputs.GetNetworkingPortArgs;
    import com.pulumi.resources.CustomResourceOptions;
    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 DbCluster("cluster", DbClusterArgs.builder()
                .availabilityZones(            
                    "GZ1",
                    "MS1")
                .clusterSize(3)
                .flavorId(data.vkcs_compute_flavor().basic().id())
                .volumeSize(10)
                .volumeType("ceph-ssd")
                .datastore(DbClusterDatastoreArgs.builder()
                    .version("16")
                    .type("postgresql_multiaz")
                    .build())
                .networks(DbClusterNetworkArgs.builder()
                    .uuid(vkcs_networking_network.db().id())
                    .build())
                .build(), CustomResourceOptions.builder()
                    .dependsOn(vkcs_networking_router_interface.db())
                    .build());
    
            final var vrrpPort = VkcsFunctions.getNetworkingPort(GetNetworkingPortArgs.builder()
                .id(cluster.vrrpPortId())
                .build());
    
            ctx.export("clusterIp", vrrpPort.applyValue(getNetworkingPortResult -> getNetworkingPortResult).applyValue(vrrpPort -> vrrpPort.applyValue(getNetworkingPortResult -> getNetworkingPortResult.allFixedIps()[0])));
        }
    }
    
    resources:
      cluster:
        type: vkcs:DbCluster
        properties:
          availabilityZones:
            - GZ1
            - MS1
          clusterSize: 3
          flavorId: ${data.vkcs_compute_flavor.basic.id}
          volumeSize: 10
          volumeType: ceph-ssd
          datastore:
            version: '16'
            type: postgresql_multiaz
          networks:
            - uuid: ${vkcs_networking_network.db.id}
        options:
          dependsOn:
            - ${vkcs_networking_router_interface.db}
    variables:
      vrrpPort:
        fn::invoke:
          function: vkcs:getNetworkingPort
          arguments:
            id: ${cluster.vrrpPortId}
    outputs:
      clusterIp: ${vrrpPort.allFixedIps[0]}
    

    Create DbCluster Resource

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

    Constructor syntax

    new DbCluster(name: string, args: DbClusterArgs, opts?: CustomResourceOptions);
    @overload
    def DbCluster(resource_name: str,
                  args: DbClusterArgs,
                  opts: Optional[ResourceOptions] = None)
    
    @overload
    def DbCluster(resource_name: str,
                  opts: Optional[ResourceOptions] = None,
                  cluster_size: Optional[float] = None,
                  volume_type: Optional[str] = None,
                  volume_size: Optional[float] = None,
                  flavor_id: Optional[str] = None,
                  datastore: Optional[DbClusterDatastoreArgs] = None,
                  keypair: Optional[str] = None,
                  restore_point: Optional[DbClusterRestorePointArgs] = None,
                  cloud_monitoring_enabled: Optional[bool] = None,
                  db_cluster_id: Optional[str] = None,
                  disk_autoexpand: Optional[DbClusterDiskAutoexpandArgs] = None,
                  capabilities: Optional[Sequence[DbClusterCapabilityArgs]] = None,
                  floating_ip_enabled: Optional[bool] = None,
                  availability_zone: Optional[str] = None,
                  name: Optional[str] = None,
                  networks: Optional[Sequence[DbClusterNetworkArgs]] = None,
                  region: Optional[str] = None,
                  configuration_id: Optional[str] = None,
                  root_enabled: Optional[bool] = None,
                  root_password: Optional[str] = None,
                  shrink_options: Optional[Sequence[str]] = None,
                  timeouts: Optional[DbClusterTimeoutsArgs] = None,
                  vendor_options: Optional[DbClusterVendorOptionsArgs] = None,
                  backup_schedule: Optional[DbClusterBackupScheduleArgs] = None,
                  availability_zones: Optional[Sequence[str]] = None,
                  wal_disk_autoexpand: Optional[DbClusterWalDiskAutoexpandArgs] = None,
                  wal_volumes: Optional[Sequence[DbClusterWalVolumeArgs]] = None)
    func NewDbCluster(ctx *Context, name string, args DbClusterArgs, opts ...ResourceOption) (*DbCluster, error)
    public DbCluster(string name, DbClusterArgs args, CustomResourceOptions? opts = null)
    public DbCluster(String name, DbClusterArgs args)
    public DbCluster(String name, DbClusterArgs args, CustomResourceOptions options)
    
    type: vkcs:DbCluster
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args DbClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args DbClusterArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args DbClusterArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DbClusterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DbClusterArgs
    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 dbClusterResource = new Vkcs.DbCluster("dbClusterResource", new()
    {
        ClusterSize = 0,
        VolumeType = "string",
        VolumeSize = 0,
        FlavorId = "string",
        Datastore = new Vkcs.Inputs.DbClusterDatastoreArgs
        {
            Type = "string",
            Version = "string",
        },
        Keypair = "string",
        RestorePoint = new Vkcs.Inputs.DbClusterRestorePointArgs
        {
            BackupId = "string",
            Target = "string",
        },
        CloudMonitoringEnabled = false,
        DbClusterId = "string",
        DiskAutoexpand = new Vkcs.Inputs.DbClusterDiskAutoexpandArgs
        {
            Autoexpand = false,
            MaxDiskSize = 0,
        },
        Capabilities = new[]
        {
            new Vkcs.Inputs.DbClusterCapabilityArgs
            {
                Name = "string",
                Settings = 
                {
                    { "string", "string" },
                },
            },
        },
        FloatingIpEnabled = false,
        AvailabilityZone = "string",
        Name = "string",
        Networks = new[]
        {
            new Vkcs.Inputs.DbClusterNetworkArgs
            {
                SecurityGroups = new[]
                {
                    "string",
                },
                SubnetId = "string",
                Uuid = "string",
            },
        },
        Region = "string",
        ConfigurationId = "string",
        RootEnabled = false,
        RootPassword = "string",
        ShrinkOptions = new[]
        {
            "string",
        },
        Timeouts = new Vkcs.Inputs.DbClusterTimeoutsArgs
        {
            Create = "string",
            Delete = "string",
        },
        VendorOptions = new Vkcs.Inputs.DbClusterVendorOptionsArgs
        {
            RestartConfirmed = false,
        },
        BackupSchedule = new Vkcs.Inputs.DbClusterBackupScheduleArgs
        {
            IntervalHours = 0,
            KeepCount = 0,
            Name = "string",
            StartHours = 0,
            StartMinutes = 0,
        },
        AvailabilityZones = new[]
        {
            "string",
        },
        WalDiskAutoexpand = new Vkcs.Inputs.DbClusterWalDiskAutoexpandArgs
        {
            Autoexpand = false,
            MaxDiskSize = 0,
        },
        WalVolumes = new[]
        {
            new Vkcs.Inputs.DbClusterWalVolumeArgs
            {
                Size = 0,
                VolumeType = "string",
            },
        },
    });
    
    example, err := vkcs.NewDbCluster(ctx, "dbClusterResource", &vkcs.DbClusterArgs{
    	ClusterSize: pulumi.Float64(0),
    	VolumeType:  pulumi.String("string"),
    	VolumeSize:  pulumi.Float64(0),
    	FlavorId:    pulumi.String("string"),
    	Datastore: &vkcs.DbClusterDatastoreArgs{
    		Type:    pulumi.String("string"),
    		Version: pulumi.String("string"),
    	},
    	Keypair: pulumi.String("string"),
    	RestorePoint: &vkcs.DbClusterRestorePointArgs{
    		BackupId: pulumi.String("string"),
    		Target:   pulumi.String("string"),
    	},
    	CloudMonitoringEnabled: pulumi.Bool(false),
    	DbClusterId:            pulumi.String("string"),
    	DiskAutoexpand: &vkcs.DbClusterDiskAutoexpandArgs{
    		Autoexpand:  pulumi.Bool(false),
    		MaxDiskSize: pulumi.Float64(0),
    	},
    	Capabilities: vkcs.DbClusterCapabilityArray{
    		&vkcs.DbClusterCapabilityArgs{
    			Name: pulumi.String("string"),
    			Settings: pulumi.StringMap{
    				"string": pulumi.String("string"),
    			},
    		},
    	},
    	FloatingIpEnabled: pulumi.Bool(false),
    	AvailabilityZone:  pulumi.String("string"),
    	Name:              pulumi.String("string"),
    	Networks: vkcs.DbClusterNetworkArray{
    		&vkcs.DbClusterNetworkArgs{
    			SecurityGroups: pulumi.StringArray{
    				pulumi.String("string"),
    			},
    			SubnetId: pulumi.String("string"),
    			Uuid:     pulumi.String("string"),
    		},
    	},
    	Region:          pulumi.String("string"),
    	ConfigurationId: pulumi.String("string"),
    	RootEnabled:     pulumi.Bool(false),
    	RootPassword:    pulumi.String("string"),
    	ShrinkOptions: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Timeouts: &vkcs.DbClusterTimeoutsArgs{
    		Create: pulumi.String("string"),
    		Delete: pulumi.String("string"),
    	},
    	VendorOptions: &vkcs.DbClusterVendorOptionsArgs{
    		RestartConfirmed: pulumi.Bool(false),
    	},
    	BackupSchedule: &vkcs.DbClusterBackupScheduleArgs{
    		IntervalHours: pulumi.Float64(0),
    		KeepCount:     pulumi.Float64(0),
    		Name:          pulumi.String("string"),
    		StartHours:    pulumi.Float64(0),
    		StartMinutes:  pulumi.Float64(0),
    	},
    	AvailabilityZones: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	WalDiskAutoexpand: &vkcs.DbClusterWalDiskAutoexpandArgs{
    		Autoexpand:  pulumi.Bool(false),
    		MaxDiskSize: pulumi.Float64(0),
    	},
    	WalVolumes: vkcs.DbClusterWalVolumeArray{
    		&vkcs.DbClusterWalVolumeArgs{
    			Size:       pulumi.Float64(0),
    			VolumeType: pulumi.String("string"),
    		},
    	},
    })
    
    var dbClusterResource = new DbCluster("dbClusterResource", DbClusterArgs.builder()
        .clusterSize(0)
        .volumeType("string")
        .volumeSize(0)
        .flavorId("string")
        .datastore(DbClusterDatastoreArgs.builder()
            .type("string")
            .version("string")
            .build())
        .keypair("string")
        .restorePoint(DbClusterRestorePointArgs.builder()
            .backupId("string")
            .target("string")
            .build())
        .cloudMonitoringEnabled(false)
        .dbClusterId("string")
        .diskAutoexpand(DbClusterDiskAutoexpandArgs.builder()
            .autoexpand(false)
            .maxDiskSize(0)
            .build())
        .capabilities(DbClusterCapabilityArgs.builder()
            .name("string")
            .settings(Map.of("string", "string"))
            .build())
        .floatingIpEnabled(false)
        .availabilityZone("string")
        .name("string")
        .networks(DbClusterNetworkArgs.builder()
            .securityGroups("string")
            .subnetId("string")
            .uuid("string")
            .build())
        .region("string")
        .configurationId("string")
        .rootEnabled(false)
        .rootPassword("string")
        .shrinkOptions("string")
        .timeouts(DbClusterTimeoutsArgs.builder()
            .create("string")
            .delete("string")
            .build())
        .vendorOptions(DbClusterVendorOptionsArgs.builder()
            .restartConfirmed(false)
            .build())
        .backupSchedule(DbClusterBackupScheduleArgs.builder()
            .intervalHours(0)
            .keepCount(0)
            .name("string")
            .startHours(0)
            .startMinutes(0)
            .build())
        .availabilityZones("string")
        .walDiskAutoexpand(DbClusterWalDiskAutoexpandArgs.builder()
            .autoexpand(false)
            .maxDiskSize(0)
            .build())
        .walVolumes(DbClusterWalVolumeArgs.builder()
            .size(0)
            .volumeType("string")
            .build())
        .build());
    
    db_cluster_resource = vkcs.DbCluster("dbClusterResource",
        cluster_size=0,
        volume_type="string",
        volume_size=0,
        flavor_id="string",
        datastore={
            "type": "string",
            "version": "string",
        },
        keypair="string",
        restore_point={
            "backup_id": "string",
            "target": "string",
        },
        cloud_monitoring_enabled=False,
        db_cluster_id="string",
        disk_autoexpand={
            "autoexpand": False,
            "max_disk_size": 0,
        },
        capabilities=[{
            "name": "string",
            "settings": {
                "string": "string",
            },
        }],
        floating_ip_enabled=False,
        availability_zone="string",
        name="string",
        networks=[{
            "security_groups": ["string"],
            "subnet_id": "string",
            "uuid": "string",
        }],
        region="string",
        configuration_id="string",
        root_enabled=False,
        root_password="string",
        shrink_options=["string"],
        timeouts={
            "create": "string",
            "delete": "string",
        },
        vendor_options={
            "restart_confirmed": False,
        },
        backup_schedule={
            "interval_hours": 0,
            "keep_count": 0,
            "name": "string",
            "start_hours": 0,
            "start_minutes": 0,
        },
        availability_zones=["string"],
        wal_disk_autoexpand={
            "autoexpand": False,
            "max_disk_size": 0,
        },
        wal_volumes=[{
            "size": 0,
            "volume_type": "string",
        }])
    
    const dbClusterResource = new vkcs.DbCluster("dbClusterResource", {
        clusterSize: 0,
        volumeType: "string",
        volumeSize: 0,
        flavorId: "string",
        datastore: {
            type: "string",
            version: "string",
        },
        keypair: "string",
        restorePoint: {
            backupId: "string",
            target: "string",
        },
        cloudMonitoringEnabled: false,
        dbClusterId: "string",
        diskAutoexpand: {
            autoexpand: false,
            maxDiskSize: 0,
        },
        capabilities: [{
            name: "string",
            settings: {
                string: "string",
            },
        }],
        floatingIpEnabled: false,
        availabilityZone: "string",
        name: "string",
        networks: [{
            securityGroups: ["string"],
            subnetId: "string",
            uuid: "string",
        }],
        region: "string",
        configurationId: "string",
        rootEnabled: false,
        rootPassword: "string",
        shrinkOptions: ["string"],
        timeouts: {
            create: "string",
            "delete": "string",
        },
        vendorOptions: {
            restartConfirmed: false,
        },
        backupSchedule: {
            intervalHours: 0,
            keepCount: 0,
            name: "string",
            startHours: 0,
            startMinutes: 0,
        },
        availabilityZones: ["string"],
        walDiskAutoexpand: {
            autoexpand: false,
            maxDiskSize: 0,
        },
        walVolumes: [{
            size: 0,
            volumeType: "string",
        }],
    });
    
    type: vkcs:DbCluster
    properties:
        availabilityZone: string
        availabilityZones:
            - string
        backupSchedule:
            intervalHours: 0
            keepCount: 0
            name: string
            startHours: 0
            startMinutes: 0
        capabilities:
            - name: string
              settings:
                string: string
        cloudMonitoringEnabled: false
        clusterSize: 0
        configurationId: string
        datastore:
            type: string
            version: string
        dbClusterId: string
        diskAutoexpand:
            autoexpand: false
            maxDiskSize: 0
        flavorId: string
        floatingIpEnabled: false
        keypair: string
        name: string
        networks:
            - securityGroups:
                - string
              subnetId: string
              uuid: string
        region: string
        restorePoint:
            backupId: string
            target: string
        rootEnabled: false
        rootPassword: string
        shrinkOptions:
            - string
        timeouts:
            create: string
            delete: string
        vendorOptions:
            restartConfirmed: false
        volumeSize: 0
        volumeType: string
        walDiskAutoexpand:
            autoexpand: false
            maxDiskSize: 0
        walVolumes:
            - size: 0
              volumeType: string
    

    DbCluster 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 DbCluster resource accepts the following input properties:

    ClusterSize double
    required number → The number of instances in the cluster.
    Datastore DbClusterDatastore
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    FlavorId string
    required string → The ID of flavor for the cluster.
    VolumeSize double
    required number → Size of the cluster instance volume.
    VolumeType string
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    AvailabilityZone string
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    AvailabilityZones List<string>
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    BackupSchedule DbClusterBackupSchedule
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    Capabilities List<DbClusterCapability>
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    CloudMonitoringEnabled bool
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    ConfigurationId string
    optional string → The id of the configuration attached to cluster.
    DbClusterId string
    string → ID of the resource.
    DiskAutoexpand DbClusterDiskAutoexpand
    optional → Object that represents autoresize properties of the cluster.
    FloatingIpEnabled bool
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    Keypair string
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    Name string
    required string → The name of the cluster. Changing this creates a new cluster.
    Networks List<DbClusterNetwork>
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    Region string
    optional string → Region to create resource in.
    RestorePoint DbClusterRestorePoint
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    RootEnabled bool
    optional boolean → Indicates whether root user is enabled for the cluster.
    RootPassword string
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    ShrinkOptions List<string>
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    Timeouts DbClusterTimeouts
    VendorOptions DbClusterVendorOptions
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    WalDiskAutoexpand DbClusterWalDiskAutoexpand
    optional → Object that represents autoresize properties of wal volume of the cluster.
    WalVolumes List<DbClusterWalVolume>
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    ClusterSize float64
    required number → The number of instances in the cluster.
    Datastore DbClusterDatastoreArgs
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    FlavorId string
    required string → The ID of flavor for the cluster.
    VolumeSize float64
    required number → Size of the cluster instance volume.
    VolumeType string
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    AvailabilityZone string
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    AvailabilityZones []string
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    BackupSchedule DbClusterBackupScheduleArgs
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    Capabilities []DbClusterCapabilityArgs
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    CloudMonitoringEnabled bool
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    ConfigurationId string
    optional string → The id of the configuration attached to cluster.
    DbClusterId string
    string → ID of the resource.
    DiskAutoexpand DbClusterDiskAutoexpandArgs
    optional → Object that represents autoresize properties of the cluster.
    FloatingIpEnabled bool
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    Keypair string
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    Name string
    required string → The name of the cluster. Changing this creates a new cluster.
    Networks []DbClusterNetworkArgs
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    Region string
    optional string → Region to create resource in.
    RestorePoint DbClusterRestorePointArgs
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    RootEnabled bool
    optional boolean → Indicates whether root user is enabled for the cluster.
    RootPassword string
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    ShrinkOptions []string
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    Timeouts DbClusterTimeoutsArgs
    VendorOptions DbClusterVendorOptionsArgs
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    WalDiskAutoexpand DbClusterWalDiskAutoexpandArgs
    optional → Object that represents autoresize properties of wal volume of the cluster.
    WalVolumes []DbClusterWalVolumeArgs
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    clusterSize Double
    required number → The number of instances in the cluster.
    datastore DbClusterDatastore
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    flavorId String
    required string → The ID of flavor for the cluster.
    volumeSize Double
    required number → Size of the cluster instance volume.
    volumeType String
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    availabilityZone String
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availabilityZones List<String>
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backupSchedule DbClusterBackupSchedule
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities List<DbClusterCapability>
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloudMonitoringEnabled Boolean
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    configurationId String
    optional string → The id of the configuration attached to cluster.
    dbClusterId String
    string → ID of the resource.
    diskAutoexpand DbClusterDiskAutoexpand
    optional → Object that represents autoresize properties of the cluster.
    floatingIpEnabled Boolean
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    keypair String
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    name String
    required string → The name of the cluster. Changing this creates a new cluster.
    networks List<DbClusterNetwork>
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region String
    optional string → Region to create resource in.
    restorePoint DbClusterRestorePoint
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    rootEnabled Boolean
    optional boolean → Indicates whether root user is enabled for the cluster.
    rootPassword String
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrinkOptions List<String>
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts DbClusterTimeouts
    vendorOptions DbClusterVendorOptions
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    walDiskAutoexpand DbClusterWalDiskAutoexpand
    optional → Object that represents autoresize properties of wal volume of the cluster.
    walVolumes List<DbClusterWalVolume>
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    clusterSize number
    required number → The number of instances in the cluster.
    datastore DbClusterDatastore
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    flavorId string
    required string → The ID of flavor for the cluster.
    volumeSize number
    required number → Size of the cluster instance volume.
    volumeType string
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    availabilityZone string
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availabilityZones string[]
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backupSchedule DbClusterBackupSchedule
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities DbClusterCapability[]
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloudMonitoringEnabled boolean
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    configurationId string
    optional string → The id of the configuration attached to cluster.
    dbClusterId string
    string → ID of the resource.
    diskAutoexpand DbClusterDiskAutoexpand
    optional → Object that represents autoresize properties of the cluster.
    floatingIpEnabled boolean
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    keypair string
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    name string
    required string → The name of the cluster. Changing this creates a new cluster.
    networks DbClusterNetwork[]
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region string
    optional string → Region to create resource in.
    restorePoint DbClusterRestorePoint
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    rootEnabled boolean
    optional boolean → Indicates whether root user is enabled for the cluster.
    rootPassword string
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrinkOptions string[]
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts DbClusterTimeouts
    vendorOptions DbClusterVendorOptions
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    walDiskAutoexpand DbClusterWalDiskAutoexpand
    optional → Object that represents autoresize properties of wal volume of the cluster.
    walVolumes DbClusterWalVolume[]
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    cluster_size float
    required number → The number of instances in the cluster.
    datastore DbClusterDatastoreArgs
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    flavor_id str
    required string → The ID of flavor for the cluster.
    volume_size float
    required number → Size of the cluster instance volume.
    volume_type str
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    availability_zone str
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availability_zones Sequence[str]
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backup_schedule DbClusterBackupScheduleArgs
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities Sequence[DbClusterCapabilityArgs]
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloud_monitoring_enabled bool
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    configuration_id str
    optional string → The id of the configuration attached to cluster.
    db_cluster_id str
    string → ID of the resource.
    disk_autoexpand DbClusterDiskAutoexpandArgs
    optional → Object that represents autoresize properties of the cluster.
    floating_ip_enabled bool
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    keypair str
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    name str
    required string → The name of the cluster. Changing this creates a new cluster.
    networks Sequence[DbClusterNetworkArgs]
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region str
    optional string → Region to create resource in.
    restore_point DbClusterRestorePointArgs
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    root_enabled bool
    optional boolean → Indicates whether root user is enabled for the cluster.
    root_password str
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrink_options Sequence[str]
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts DbClusterTimeoutsArgs
    vendor_options DbClusterVendorOptionsArgs
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    wal_disk_autoexpand DbClusterWalDiskAutoexpandArgs
    optional → Object that represents autoresize properties of wal volume of the cluster.
    wal_volumes Sequence[DbClusterWalVolumeArgs]
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    clusterSize Number
    required number → The number of instances in the cluster.
    datastore Property Map
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    flavorId String
    required string → The ID of flavor for the cluster.
    volumeSize Number
    required number → Size of the cluster instance volume.
    volumeType String
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    availabilityZone String
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availabilityZones List<String>
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backupSchedule Property Map
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities List<Property Map>
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloudMonitoringEnabled Boolean
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    configurationId String
    optional string → The id of the configuration attached to cluster.
    dbClusterId String
    string → ID of the resource.
    diskAutoexpand Property Map
    optional → Object that represents autoresize properties of the cluster.
    floatingIpEnabled Boolean
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    keypair String
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    name String
    required string → The name of the cluster. Changing this creates a new cluster.
    networks List<Property Map>
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region String
    optional string → Region to create resource in.
    restorePoint Property Map
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    rootEnabled Boolean
    optional boolean → Indicates whether root user is enabled for the cluster.
    rootPassword String
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrinkOptions List<String>
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts Property Map
    vendorOptions Property Map
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    walDiskAutoexpand Property Map
    optional → Object that represents autoresize properties of wal volume of the cluster.
    walVolumes List<Property Map>
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Instances List<DbClusterInstance>
    object → Cluster instances info.
    LoadbalancerId string
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    VrrpPortId string
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    Id string
    The provider-assigned unique ID for this managed resource.
    Instances []DbClusterInstance
    object → Cluster instances info.
    LoadbalancerId string
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    VrrpPortId string
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    id String
    The provider-assigned unique ID for this managed resource.
    instances List<DbClusterInstance>
    object → Cluster instances info.
    loadbalancerId String
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    vrrpPortId String
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    id string
    The provider-assigned unique ID for this managed resource.
    instances DbClusterInstance[]
    object → Cluster instances info.
    loadbalancerId string
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    vrrpPortId string
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    id str
    The provider-assigned unique ID for this managed resource.
    instances Sequence[DbClusterInstance]
    object → Cluster instances info.
    loadbalancer_id str
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    vrrp_port_id str
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    id String
    The provider-assigned unique ID for this managed resource.
    instances List<Property Map>
    object → Cluster instances info.
    loadbalancerId String
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    vrrpPortId String
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.

    Look up Existing DbCluster Resource

    Get an existing DbCluster 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?: DbClusterState, opts?: CustomResourceOptions): DbCluster
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            availability_zone: Optional[str] = None,
            availability_zones: Optional[Sequence[str]] = None,
            backup_schedule: Optional[DbClusterBackupScheduleArgs] = None,
            capabilities: Optional[Sequence[DbClusterCapabilityArgs]] = None,
            cloud_monitoring_enabled: Optional[bool] = None,
            cluster_size: Optional[float] = None,
            configuration_id: Optional[str] = None,
            datastore: Optional[DbClusterDatastoreArgs] = None,
            db_cluster_id: Optional[str] = None,
            disk_autoexpand: Optional[DbClusterDiskAutoexpandArgs] = None,
            flavor_id: Optional[str] = None,
            floating_ip_enabled: Optional[bool] = None,
            instances: Optional[Sequence[DbClusterInstanceArgs]] = None,
            keypair: Optional[str] = None,
            loadbalancer_id: Optional[str] = None,
            name: Optional[str] = None,
            networks: Optional[Sequence[DbClusterNetworkArgs]] = None,
            region: Optional[str] = None,
            restore_point: Optional[DbClusterRestorePointArgs] = None,
            root_enabled: Optional[bool] = None,
            root_password: Optional[str] = None,
            shrink_options: Optional[Sequence[str]] = None,
            timeouts: Optional[DbClusterTimeoutsArgs] = None,
            vendor_options: Optional[DbClusterVendorOptionsArgs] = None,
            volume_size: Optional[float] = None,
            volume_type: Optional[str] = None,
            vrrp_port_id: Optional[str] = None,
            wal_disk_autoexpand: Optional[DbClusterWalDiskAutoexpandArgs] = None,
            wal_volumes: Optional[Sequence[DbClusterWalVolumeArgs]] = None) -> DbCluster
    func GetDbCluster(ctx *Context, name string, id IDInput, state *DbClusterState, opts ...ResourceOption) (*DbCluster, error)
    public static DbCluster Get(string name, Input<string> id, DbClusterState? state, CustomResourceOptions? opts = null)
    public static DbCluster get(String name, Output<String> id, DbClusterState state, CustomResourceOptions options)
    resources:  _:    type: vkcs:DbCluster    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AvailabilityZone string
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    AvailabilityZones List<string>
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    BackupSchedule DbClusterBackupSchedule
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    Capabilities List<DbClusterCapability>
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    CloudMonitoringEnabled bool
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    ClusterSize double
    required number → The number of instances in the cluster.
    ConfigurationId string
    optional string → The id of the configuration attached to cluster.
    Datastore DbClusterDatastore
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    DbClusterId string
    string → ID of the resource.
    DiskAutoexpand DbClusterDiskAutoexpand
    optional → Object that represents autoresize properties of the cluster.
    FlavorId string
    required string → The ID of flavor for the cluster.
    FloatingIpEnabled bool
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    Instances List<DbClusterInstance>
    object → Cluster instances info.
    Keypair string
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    LoadbalancerId string
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    Name string
    required string → The name of the cluster. Changing this creates a new cluster.
    Networks List<DbClusterNetwork>
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    Region string
    optional string → Region to create resource in.
    RestorePoint DbClusterRestorePoint
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    RootEnabled bool
    optional boolean → Indicates whether root user is enabled for the cluster.
    RootPassword string
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    ShrinkOptions List<string>
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    Timeouts DbClusterTimeouts
    VendorOptions DbClusterVendorOptions
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    VolumeSize double
    required number → Size of the cluster instance volume.
    VolumeType string
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    VrrpPortId string
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    WalDiskAutoexpand DbClusterWalDiskAutoexpand
    optional → Object that represents autoresize properties of wal volume of the cluster.
    WalVolumes List<DbClusterWalVolume>
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    AvailabilityZone string
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    AvailabilityZones []string
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    BackupSchedule DbClusterBackupScheduleArgs
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    Capabilities []DbClusterCapabilityArgs
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    CloudMonitoringEnabled bool
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    ClusterSize float64
    required number → The number of instances in the cluster.
    ConfigurationId string
    optional string → The id of the configuration attached to cluster.
    Datastore DbClusterDatastoreArgs
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    DbClusterId string
    string → ID of the resource.
    DiskAutoexpand DbClusterDiskAutoexpandArgs
    optional → Object that represents autoresize properties of the cluster.
    FlavorId string
    required string → The ID of flavor for the cluster.
    FloatingIpEnabled bool
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    Instances []DbClusterInstanceArgs
    object → Cluster instances info.
    Keypair string
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    LoadbalancerId string
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    Name string
    required string → The name of the cluster. Changing this creates a new cluster.
    Networks []DbClusterNetworkArgs
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    Region string
    optional string → Region to create resource in.
    RestorePoint DbClusterRestorePointArgs
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    RootEnabled bool
    optional boolean → Indicates whether root user is enabled for the cluster.
    RootPassword string
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    ShrinkOptions []string
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    Timeouts DbClusterTimeoutsArgs
    VendorOptions DbClusterVendorOptionsArgs
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    VolumeSize float64
    required number → Size of the cluster instance volume.
    VolumeType string
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    VrrpPortId string
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    WalDiskAutoexpand DbClusterWalDiskAutoexpandArgs
    optional → Object that represents autoresize properties of wal volume of the cluster.
    WalVolumes []DbClusterWalVolumeArgs
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    availabilityZone String
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availabilityZones List<String>
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backupSchedule DbClusterBackupSchedule
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities List<DbClusterCapability>
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloudMonitoringEnabled Boolean
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    clusterSize Double
    required number → The number of instances in the cluster.
    configurationId String
    optional string → The id of the configuration attached to cluster.
    datastore DbClusterDatastore
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    dbClusterId String
    string → ID of the resource.
    diskAutoexpand DbClusterDiskAutoexpand
    optional → Object that represents autoresize properties of the cluster.
    flavorId String
    required string → The ID of flavor for the cluster.
    floatingIpEnabled Boolean
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    instances List<DbClusterInstance>
    object → Cluster instances info.
    keypair String
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    loadbalancerId String
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    name String
    required string → The name of the cluster. Changing this creates a new cluster.
    networks List<DbClusterNetwork>
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region String
    optional string → Region to create resource in.
    restorePoint DbClusterRestorePoint
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    rootEnabled Boolean
    optional boolean → Indicates whether root user is enabled for the cluster.
    rootPassword String
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrinkOptions List<String>
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts DbClusterTimeouts
    vendorOptions DbClusterVendorOptions
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    volumeSize Double
    required number → Size of the cluster instance volume.
    volumeType String
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    vrrpPortId String
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    walDiskAutoexpand DbClusterWalDiskAutoexpand
    optional → Object that represents autoresize properties of wal volume of the cluster.
    walVolumes List<DbClusterWalVolume>
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    availabilityZone string
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availabilityZones string[]
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backupSchedule DbClusterBackupSchedule
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities DbClusterCapability[]
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloudMonitoringEnabled boolean
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    clusterSize number
    required number → The number of instances in the cluster.
    configurationId string
    optional string → The id of the configuration attached to cluster.
    datastore DbClusterDatastore
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    dbClusterId string
    string → ID of the resource.
    diskAutoexpand DbClusterDiskAutoexpand
    optional → Object that represents autoresize properties of the cluster.
    flavorId string
    required string → The ID of flavor for the cluster.
    floatingIpEnabled boolean
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    instances DbClusterInstance[]
    object → Cluster instances info.
    keypair string
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    loadbalancerId string
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    name string
    required string → The name of the cluster. Changing this creates a new cluster.
    networks DbClusterNetwork[]
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region string
    optional string → Region to create resource in.
    restorePoint DbClusterRestorePoint
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    rootEnabled boolean
    optional boolean → Indicates whether root user is enabled for the cluster.
    rootPassword string
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrinkOptions string[]
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts DbClusterTimeouts
    vendorOptions DbClusterVendorOptions
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    volumeSize number
    required number → Size of the cluster instance volume.
    volumeType string
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    vrrpPortId string
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    walDiskAutoexpand DbClusterWalDiskAutoexpand
    optional → Object that represents autoresize properties of wal volume of the cluster.
    walVolumes DbClusterWalVolume[]
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    availability_zone str
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availability_zones Sequence[str]
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backup_schedule DbClusterBackupScheduleArgs
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities Sequence[DbClusterCapabilityArgs]
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloud_monitoring_enabled bool
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    cluster_size float
    required number → The number of instances in the cluster.
    configuration_id str
    optional string → The id of the configuration attached to cluster.
    datastore DbClusterDatastoreArgs
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    db_cluster_id str
    string → ID of the resource.
    disk_autoexpand DbClusterDiskAutoexpandArgs
    optional → Object that represents autoresize properties of the cluster.
    flavor_id str
    required string → The ID of flavor for the cluster.
    floating_ip_enabled bool
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    instances Sequence[DbClusterInstanceArgs]
    object → Cluster instances info.
    keypair str
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    loadbalancer_id str
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    name str
    required string → The name of the cluster. Changing this creates a new cluster.
    networks Sequence[DbClusterNetworkArgs]
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region str
    optional string → Region to create resource in.
    restore_point DbClusterRestorePointArgs
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    root_enabled bool
    optional boolean → Indicates whether root user is enabled for the cluster.
    root_password str
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrink_options Sequence[str]
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts DbClusterTimeoutsArgs
    vendor_options DbClusterVendorOptionsArgs
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    volume_size float
    required number → Size of the cluster instance volume.
    volume_type str
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    vrrp_port_id str
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    wal_disk_autoexpand DbClusterWalDiskAutoexpandArgs
    optional → Object that represents autoresize properties of wal volume of the cluster.
    wal_volumes Sequence[DbClusterWalVolumeArgs]
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.
    availabilityZone String
    optional string → The name of the availability zone of the cluster. Changing this creates a new cluster.
    availabilityZones List<String>
    optional string → The names of availability zones for the cluster. Changing this creates a new cluster. Note: Only available in multi-AZ configurationsNew since v0.9.3.
    backupSchedule Property Map
    optional → Object that represents configuration of PITR backup. This functionality is available only for postgres datastore.New since v0.1.4.
    capabilities List<Property Map>
    optional → Object that represents capability applied to cluster. There can be several instances of this object.
    cloudMonitoringEnabled Boolean
    optional boolean → Enable cloud monitoring for the cluster. Changing this for Redis or MongoDB creates a new instance.New since v0.2.0.
    clusterSize Number
    required number → The number of instances in the cluster.
    configurationId String
    optional string → The id of the configuration attached to cluster.
    datastore Property Map
    required → Object that represents datastore of the cluster. Changing this creates a new cluster.
    dbClusterId String
    string → ID of the resource.
    diskAutoexpand Property Map
    optional → Object that represents autoresize properties of the cluster.
    flavorId String
    required string → The ID of flavor for the cluster.
    floatingIpEnabled Boolean
    optional boolean → Indicates whether floating ip is created for cluster. Changing this creates a new cluster.
    instances List<Property Map>
    object → Cluster instances info.
    keypair String
    optional string → Name of the keypair to be attached to cluster. Changing this creates a new cluster.
    loadbalancerId String
    string → The id of the loadbalancer attached to the cluster.New since v0.1.15.
    name String
    required string → The name of the cluster. Changing this creates a new cluster.
    networks List<Property Map>
    optional → Object that represents network of the cluster. Changing this creates a new cluster.
    region String
    optional string → Region to create resource in.
    restorePoint Property Map
    optional → Object that represents backup to restore cluster from.New since v0.1.4.
    rootEnabled Boolean
    optional boolean → Indicates whether root user is enabled for the cluster.
    rootPassword String
    optional sensitive string → Password for the root user of the cluster. When enabling root, password is autogenerated, use this field to obtain it.
    shrinkOptions List<String>
    optional string → Used only for shrinking cluster. List of IDs of instances that should remain after shrink. If no options are supplied, shrink operation will choose first non-leader instance to delete.
    timeouts Property Map
    vendorOptions Property Map
    optional → Map of additional vendor-specific options. Supported options are described below.New since v0.4.0.
    volumeSize Number
    required number → Size of the cluster instance volume.
    volumeType String
    required string → The type of the cluster instance volume. Changing this creates a new cluster.
    vrrpPortId String
    string → The id of the VRRP port attached to the cluster. Note: Only available in multi-AZ configurations.New since v0.9.3.
    walDiskAutoexpand Property Map
    optional → Object that represents autoresize properties of wal volume of the cluster.
    walVolumes List<Property Map>
    optional → Object that represents wal volume of the cluster. Changing this creates a new cluster.

    Supporting Types

    DbClusterBackupSchedule, DbClusterBackupScheduleArgs

    IntervalHours double
    required number → Time interval between backups, specified in hours. Available values: 3, 6, 8, 12, 24.
    KeepCount double
    required number → Number of backups to be stored.
    Name string
    required string → Name of the schedule.
    StartHours double
    required number → Hours part of timestamp of initial backup.
    StartMinutes double
    required number → Minutes part of timestamp of initial backup.
    IntervalHours float64
    required number → Time interval between backups, specified in hours. Available values: 3, 6, 8, 12, 24.
    KeepCount float64
    required number → Number of backups to be stored.
    Name string
    required string → Name of the schedule.
    StartHours float64
    required number → Hours part of timestamp of initial backup.
    StartMinutes float64
    required number → Minutes part of timestamp of initial backup.
    intervalHours Double
    required number → Time interval between backups, specified in hours. Available values: 3, 6, 8, 12, 24.
    keepCount Double
    required number → Number of backups to be stored.
    name String
    required string → Name of the schedule.
    startHours Double
    required number → Hours part of timestamp of initial backup.
    startMinutes Double
    required number → Minutes part of timestamp of initial backup.
    intervalHours number
    required number → Time interval between backups, specified in hours. Available values: 3, 6, 8, 12, 24.
    keepCount number
    required number → Number of backups to be stored.
    name string
    required string → Name of the schedule.
    startHours number
    required number → Hours part of timestamp of initial backup.
    startMinutes number
    required number → Minutes part of timestamp of initial backup.
    interval_hours float
    required number → Time interval between backups, specified in hours. Available values: 3, 6, 8, 12, 24.
    keep_count float
    required number → Number of backups to be stored.
    name str
    required string → Name of the schedule.
    start_hours float
    required number → Hours part of timestamp of initial backup.
    start_minutes float
    required number → Minutes part of timestamp of initial backup.
    intervalHours Number
    required number → Time interval between backups, specified in hours. Available values: 3, 6, 8, 12, 24.
    keepCount Number
    required number → Number of backups to be stored.
    name String
    required string → Name of the schedule.
    startHours Number
    required number → Hours part of timestamp of initial backup.
    startMinutes Number
    required number → Minutes part of timestamp of initial backup.

    DbClusterCapability, DbClusterCapabilityArgs

    Name string
    required string → The name of the capability to apply.
    Settings Dictionary<string, string>
    optional map of string → Map of key-value settings of the capability.
    Name string
    required string → The name of the capability to apply.
    Settings map[string]string
    optional map of string → Map of key-value settings of the capability.
    name String
    required string → The name of the capability to apply.
    settings Map<String,String>
    optional map of string → Map of key-value settings of the capability.
    name string
    required string → The name of the capability to apply.
    settings {[key: string]: string}
    optional map of string → Map of key-value settings of the capability.
    name str
    required string → The name of the capability to apply.
    settings Mapping[str, str]
    optional map of string → Map of key-value settings of the capability.
    name String
    required string → The name of the capability to apply.
    settings Map<String>
    optional map of string → Map of key-value settings of the capability.

    DbClusterDatastore, DbClusterDatastoreArgs

    Type string
    required string → Type of the datastore. Changing this creates a new cluster. Must be one of: galera_mysql, postgresql, postgresql_multiaz, tarantool, postgrespro_enterprise, postgrespro_enterprise_1c
    Version string
    required string → Version of the datastore. Changing this creates a new cluster.
    Type string
    required string → Type of the datastore. Changing this creates a new cluster. Must be one of: galera_mysql, postgresql, postgresql_multiaz, tarantool, postgrespro_enterprise, postgrespro_enterprise_1c
    Version string
    required string → Version of the datastore. Changing this creates a new cluster.
    type String
    required string → Type of the datastore. Changing this creates a new cluster. Must be one of: galera_mysql, postgresql, postgresql_multiaz, tarantool, postgrespro_enterprise, postgrespro_enterprise_1c
    version String
    required string → Version of the datastore. Changing this creates a new cluster.
    type string
    required string → Type of the datastore. Changing this creates a new cluster. Must be one of: galera_mysql, postgresql, postgresql_multiaz, tarantool, postgrespro_enterprise, postgrespro_enterprise_1c
    version string
    required string → Version of the datastore. Changing this creates a new cluster.
    type str
    required string → Type of the datastore. Changing this creates a new cluster. Must be one of: galera_mysql, postgresql, postgresql_multiaz, tarantool, postgrespro_enterprise, postgrespro_enterprise_1c
    version str
    required string → Version of the datastore. Changing this creates a new cluster.
    type String
    required string → Type of the datastore. Changing this creates a new cluster. Must be one of: galera_mysql, postgresql, postgresql_multiaz, tarantool, postgrespro_enterprise, postgrespro_enterprise_1c
    version String
    required string → Version of the datastore. Changing this creates a new cluster.

    DbClusterDiskAutoexpand, DbClusterDiskAutoexpandArgs

    Autoexpand bool
    optional boolean → Indicates whether autoresize is enabled.
    MaxDiskSize double
    optional number → Maximum disk size for autoresize.
    Autoexpand bool
    optional boolean → Indicates whether autoresize is enabled.
    MaxDiskSize float64
    optional number → Maximum disk size for autoresize.
    autoexpand Boolean
    optional boolean → Indicates whether autoresize is enabled.
    maxDiskSize Double
    optional number → Maximum disk size for autoresize.
    autoexpand boolean
    optional boolean → Indicates whether autoresize is enabled.
    maxDiskSize number
    optional number → Maximum disk size for autoresize.
    autoexpand bool
    optional boolean → Indicates whether autoresize is enabled.
    max_disk_size float
    optional number → Maximum disk size for autoresize.
    autoexpand Boolean
    optional boolean → Indicates whether autoresize is enabled.
    maxDiskSize Number
    optional number → Maximum disk size for autoresize.

    DbClusterInstance, DbClusterInstanceArgs

    InstanceId string
    Ips List<string>
    Role string
    InstanceId string
    Ips []string
    Role string
    instanceId String
    ips List<String>
    role String
    instanceId string
    ips string[]
    role string
    instance_id str
    ips Sequence[str]
    role str
    instanceId String
    ips List<String>
    role String

    DbClusterNetwork, DbClusterNetworkArgs

    Port string
    optional deprecated string → The port id of the network. Changing this creates a new cluster. Deprecated This argument is deprecated, please do not use it.

    Deprecated: Deprecated

    SecurityGroups List<string>
    optional set of string → An array of one or more security group IDs to associate with the cluster instances. Changing this creates a new cluster.New since v0.2.0.
    SubnetId string
    optional string → The id of the subnet. Changing this creates a new cluster.New since v0.1.15.
    Uuid string
    optional string → The id of the network. Changing this creates a new cluster. Note: Although this argument is marked as optional, it is actually required at the moment. Not setting a value for it may cause an error.
    Port string
    optional deprecated string → The port id of the network. Changing this creates a new cluster. Deprecated This argument is deprecated, please do not use it.

    Deprecated: Deprecated

    SecurityGroups []string
    optional set of string → An array of one or more security group IDs to associate with the cluster instances. Changing this creates a new cluster.New since v0.2.0.
    SubnetId string
    optional string → The id of the subnet. Changing this creates a new cluster.New since v0.1.15.
    Uuid string
    optional string → The id of the network. Changing this creates a new cluster. Note: Although this argument is marked as optional, it is actually required at the moment. Not setting a value for it may cause an error.
    port String
    optional deprecated string → The port id of the network. Changing this creates a new cluster. Deprecated This argument is deprecated, please do not use it.

    Deprecated: Deprecated

    securityGroups List<String>
    optional set of string → An array of one or more security group IDs to associate with the cluster instances. Changing this creates a new cluster.New since v0.2.0.
    subnetId String
    optional string → The id of the subnet. Changing this creates a new cluster.New since v0.1.15.
    uuid String
    optional string → The id of the network. Changing this creates a new cluster. Note: Although this argument is marked as optional, it is actually required at the moment. Not setting a value for it may cause an error.
    port string
    optional deprecated string → The port id of the network. Changing this creates a new cluster. Deprecated This argument is deprecated, please do not use it.

    Deprecated: Deprecated

    securityGroups string[]
    optional set of string → An array of one or more security group IDs to associate with the cluster instances. Changing this creates a new cluster.New since v0.2.0.
    subnetId string
    optional string → The id of the subnet. Changing this creates a new cluster.New since v0.1.15.
    uuid string
    optional string → The id of the network. Changing this creates a new cluster. Note: Although this argument is marked as optional, it is actually required at the moment. Not setting a value for it may cause an error.
    port str
    optional deprecated string → The port id of the network. Changing this creates a new cluster. Deprecated This argument is deprecated, please do not use it.

    Deprecated: Deprecated

    security_groups Sequence[str]
    optional set of string → An array of one or more security group IDs to associate with the cluster instances. Changing this creates a new cluster.New since v0.2.0.
    subnet_id str
    optional string → The id of the subnet. Changing this creates a new cluster.New since v0.1.15.
    uuid str
    optional string → The id of the network. Changing this creates a new cluster. Note: Although this argument is marked as optional, it is actually required at the moment. Not setting a value for it may cause an error.
    port String
    optional deprecated string → The port id of the network. Changing this creates a new cluster. Deprecated This argument is deprecated, please do not use it.

    Deprecated: Deprecated

    securityGroups List<String>
    optional set of string → An array of one or more security group IDs to associate with the cluster instances. Changing this creates a new cluster.New since v0.2.0.
    subnetId String
    optional string → The id of the subnet. Changing this creates a new cluster.New since v0.1.15.
    uuid String
    optional string → The id of the network. Changing this creates a new cluster. Note: Although this argument is marked as optional, it is actually required at the moment. Not setting a value for it may cause an error.

    DbClusterRestorePoint, DbClusterRestorePointArgs

    BackupId string
    required string → ID of the backup.
    Target string
    optional string → Used only for restoring from PITR backups. Timestamp of needed backup in format "2021-10-06 01:02:00". You can specify "latest" to use most recent backup.
    BackupId string
    required string → ID of the backup.
    Target string
    optional string → Used only for restoring from PITR backups. Timestamp of needed backup in format "2021-10-06 01:02:00". You can specify "latest" to use most recent backup.
    backupId String
    required string → ID of the backup.
    target String
    optional string → Used only for restoring from PITR backups. Timestamp of needed backup in format "2021-10-06 01:02:00". You can specify "latest" to use most recent backup.
    backupId string
    required string → ID of the backup.
    target string
    optional string → Used only for restoring from PITR backups. Timestamp of needed backup in format "2021-10-06 01:02:00". You can specify "latest" to use most recent backup.
    backup_id str
    required string → ID of the backup.
    target str
    optional string → Used only for restoring from PITR backups. Timestamp of needed backup in format "2021-10-06 01:02:00". You can specify "latest" to use most recent backup.
    backupId String
    required string → ID of the backup.
    target String
    optional string → Used only for restoring from PITR backups. Timestamp of needed backup in format "2021-10-06 01:02:00". You can specify "latest" to use most recent backup.

    DbClusterTimeouts, DbClusterTimeoutsArgs

    Create string
    Delete string
    Create string
    Delete string
    create String
    delete String
    create string
    delete string
    create str
    delete str
    create String
    delete String

    DbClusterVendorOptions, DbClusterVendorOptionsArgs

    RestartConfirmed bool
    optional boolean → Boolean to confirm autorestart of the cluster's instances if it is required to apply configuration group changes.
    RestartConfirmed bool
    optional boolean → Boolean to confirm autorestart of the cluster's instances if it is required to apply configuration group changes.
    restartConfirmed Boolean
    optional boolean → Boolean to confirm autorestart of the cluster's instances if it is required to apply configuration group changes.
    restartConfirmed boolean
    optional boolean → Boolean to confirm autorestart of the cluster's instances if it is required to apply configuration group changes.
    restart_confirmed bool
    optional boolean → Boolean to confirm autorestart of the cluster's instances if it is required to apply configuration group changes.
    restartConfirmed Boolean
    optional boolean → Boolean to confirm autorestart of the cluster's instances if it is required to apply configuration group changes.

    DbClusterWalDiskAutoexpand, DbClusterWalDiskAutoexpandArgs

    Autoexpand bool
    optional boolean → Indicates whether wal volume autoresize is enabled.
    MaxDiskSize double
    optional number → Maximum disk size for wal volume autoresize.
    Autoexpand bool
    optional boolean → Indicates whether wal volume autoresize is enabled.
    MaxDiskSize float64
    optional number → Maximum disk size for wal volume autoresize.
    autoexpand Boolean
    optional boolean → Indicates whether wal volume autoresize is enabled.
    maxDiskSize Double
    optional number → Maximum disk size for wal volume autoresize.
    autoexpand boolean
    optional boolean → Indicates whether wal volume autoresize is enabled.
    maxDiskSize number
    optional number → Maximum disk size for wal volume autoresize.
    autoexpand bool
    optional boolean → Indicates whether wal volume autoresize is enabled.
    max_disk_size float
    optional number → Maximum disk size for wal volume autoresize.
    autoexpand Boolean
    optional boolean → Indicates whether wal volume autoresize is enabled.
    maxDiskSize Number
    optional number → Maximum disk size for wal volume autoresize.

    DbClusterWalVolume, DbClusterWalVolumeArgs

    Size double
    required number → Size of the instance wal volume.
    VolumeType string
    required string → The type of the cluster wal volume. Changing this creates a new cluster.
    Size float64
    required number → Size of the instance wal volume.
    VolumeType string
    required string → The type of the cluster wal volume. Changing this creates a new cluster.
    size Double
    required number → Size of the instance wal volume.
    volumeType String
    required string → The type of the cluster wal volume. Changing this creates a new cluster.
    size number
    required number → Size of the instance wal volume.
    volumeType string
    required string → The type of the cluster wal volume. Changing this creates a new cluster.
    size float
    required number → Size of the instance wal volume.
    volume_type str
    required string → The type of the cluster wal volume. Changing this creates a new cluster.
    size Number
    required number → Size of the instance wal volume.
    volumeType String
    required string → The type of the cluster wal volume. Changing this creates a new cluster.

    Import

    Clusters can be imported using the id, e.g.

    $ pulumi import vkcs:index/dbCluster:DbCluster mycluster 708a74a1-6b00-4a96-938c-28a8a6d98590
    

    After the import you can use terraform show to view imported fields and write their values to your .tf file.

    You should at least add following fields to your .tf file:

    name, flavor_id, cluster_size, volume_size, volume_type, datastore

    Please, use "IMPORTED" as value for volume_type field.

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

    Package Details

    Repository
    vkcs vk-cs/terraform-provider-vkcs
    License
    Notes
    This Pulumi package is based on the vkcs Terraform Provider.
    vkcs logo
    vkcs 0.9.3 published on Tuesday, Apr 15, 2025 by vk-cs