Welcome to Pulumi Registry, your window into the cloud. Read the announcement.

Yandex

v0.10.0 published on Thursday, Nov 18, 2021 by Pulumi

MdbKafkaCluster

Manages a Kafka cluster within the Yandex.Cloud. For more information, see the official documentation.

Example Usage

using Pulumi;
using Yandex = Pulumi.Yandex;

class MyStack : Stack
{
    public MyStack()
    {
        var fooVpcNetwork = new Yandex.VpcNetwork("fooVpcNetwork", new Yandex.VpcNetworkArgs
        {
        });
        var fooVpcSubnet = new Yandex.VpcSubnet("fooVpcSubnet", new Yandex.VpcSubnetArgs
        {
            NetworkId = fooVpcNetwork.Id,
            V4CidrBlocks = 
            {
                "10.5.0.0/24",
            },
            Zone = "ru-central1-a",
        });
        var fooMdbKafkaCluster = new Yandex.MdbKafkaCluster("fooMdbKafkaCluster", new Yandex.MdbKafkaClusterArgs
        {
            Config = new Yandex.Inputs.MdbKafkaClusterConfigArgs
            {
                AssignPublicIp = false,
                BrokersCount = 1,
                Kafka = new Yandex.Inputs.MdbKafkaClusterConfigKafkaArgs
                {
                    KafkaConfig = new Yandex.Inputs.MdbKafkaClusterConfigKafkaKafkaConfigArgs
                    {
                        CompressionType = "COMPRESSION_TYPE_ZSTD",
                        DefaultReplicationFactor = "1",
                        LogFlushIntervalMessages = "1024",
                        LogFlushIntervalMs = "1000",
                        LogFlushSchedulerIntervalMs = "1000",
                        LogPreallocate = true,
                        LogRetentionBytes = "1073741824",
                        LogRetentionHours = "168",
                        LogRetentionMinutes = "10080",
                        LogRetentionMs = "86400000",
                        LogSegmentBytes = "134217728",
                        NumPartitions = "10",
                    },
                    Resources = new Yandex.Inputs.MdbKafkaClusterConfigKafkaResourcesArgs
                    {
                        DiskSize = 32,
                        DiskTypeId = "network-ssd",
                        ResourcePresetId = "s2.micro",
                    },
                },
                SchemaRegistry = false,
                UnmanagedTopics = false,
                Version = "2.6",
                Zones = 
                {
                    "ru-central1-a",
                },
            },
            Environment = "PRESTABLE",
            NetworkId = fooVpcNetwork.Id,
            SubnetIds = 
            {
                fooVpcSubnet.Id,
            },
            Users = 
            {
                new Yandex.Inputs.MdbKafkaClusterUserArgs
                {
                    Name = "producer-application",
                    Password = "password",
                    Permissions = 
                    {
                        new Yandex.Inputs.MdbKafkaClusterUserPermissionArgs
                        {
                            Role = "ACCESS_ROLE_PRODUCER",
                            TopicName = "input",
                        },
                    },
                },
                new Yandex.Inputs.MdbKafkaClusterUserArgs
                {
                    Name = "worker",
                    Password = "password",
                    Permissions = 
                    {
                        new Yandex.Inputs.MdbKafkaClusterUserPermissionArgs
                        {
                            Role = "ACCESS_ROLE_CONSUMER",
                            TopicName = "input",
                        },
                        new Yandex.Inputs.MdbKafkaClusterUserPermissionArgs
                        {
                            Role = "ACCESS_ROLE_PRODUCER",
                            TopicName = "output",
                        },
                    },
                },
            },
        });
    }

}
package main

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

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		fooVpcNetwork, err := yandex.NewVpcNetwork(ctx, "fooVpcNetwork", nil)
		if err != nil {
			return err
		}
		fooVpcSubnet, err := yandex.NewVpcSubnet(ctx, "fooVpcSubnet", &yandex.VpcSubnetArgs{
			NetworkId: fooVpcNetwork.ID(),
			V4CidrBlocks: pulumi.StringArray{
				pulumi.String("10.5.0.0/24"),
			},
			Zone: pulumi.String("ru-central1-a"),
		})
		if err != nil {
			return err
		}
		_, err = yandex.NewMdbKafkaCluster(ctx, "fooMdbKafkaCluster", &yandex.MdbKafkaClusterArgs{
			Config: &MdbKafkaClusterConfigArgs{
				AssignPublicIp: pulumi.Bool(false),
				BrokersCount:   pulumi.Int(1),
				Kafka: &MdbKafkaClusterConfigKafkaArgs{
					KafkaConfig: &MdbKafkaClusterConfigKafkaKafkaConfigArgs{
						CompressionType:             pulumi.String("COMPRESSION_TYPE_ZSTD"),
						DefaultReplicationFactor:    pulumi.String("1"),
						LogFlushIntervalMessages:    pulumi.String("1024"),
						LogFlushIntervalMs:          pulumi.String("1000"),
						LogFlushSchedulerIntervalMs: pulumi.String("1000"),
						LogPreallocate:              pulumi.Bool(true),
						LogRetentionBytes:           pulumi.String("1073741824"),
						LogRetentionHours:           pulumi.String("168"),
						LogRetentionMinutes:         pulumi.String("10080"),
						LogRetentionMs:              pulumi.String("86400000"),
						LogSegmentBytes:             pulumi.String("134217728"),
						NumPartitions:               pulumi.String("10"),
					},
					Resources: &MdbKafkaClusterConfigKafkaResourcesArgs{
						DiskSize:         pulumi.Int(32),
						DiskTypeId:       pulumi.String("network-ssd"),
						ResourcePresetId: pulumi.String("s2.micro"),
					},
				},
				SchemaRegistry:  pulumi.Bool(false),
				UnmanagedTopics: pulumi.Bool(false),
				Version:         pulumi.String("2.6"),
				Zones: pulumi.StringArray{
					pulumi.String("ru-central1-a"),
				},
			},
			Environment: pulumi.String("PRESTABLE"),
			NetworkId:   fooVpcNetwork.ID(),
			SubnetIds: pulumi.StringArray{
				fooVpcSubnet.ID(),
			},
			Users: MdbKafkaClusterUserArray{
				&MdbKafkaClusterUserArgs{
					Name:     pulumi.String("producer-application"),
					Password: pulumi.String("password"),
					Permissions: MdbKafkaClusterUserPermissionArray{
						&MdbKafkaClusterUserPermissionArgs{
							Role:      pulumi.String("ACCESS_ROLE_PRODUCER"),
							TopicName: pulumi.String("input"),
						},
					},
				},
				&MdbKafkaClusterUserArgs{
					Name:     pulumi.String("worker"),
					Password: pulumi.String("password"),
					Permissions: MdbKafkaClusterUserPermissionArray{
						&MdbKafkaClusterUserPermissionArgs{
							Role:      pulumi.String("ACCESS_ROLE_CONSUMER"),
							TopicName: pulumi.String("input"),
						},
						&MdbKafkaClusterUserPermissionArgs{
							Role:      pulumi.String("ACCESS_ROLE_PRODUCER"),
							TopicName: pulumi.String("output"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_yandex as yandex

foo_vpc_network = yandex.VpcNetwork("fooVpcNetwork")
foo_vpc_subnet = yandex.VpcSubnet("fooVpcSubnet",
    network_id=foo_vpc_network.id,
    v4_cidr_blocks=["10.5.0.0/24"],
    zone="ru-central1-a")
foo_mdb_kafka_cluster = yandex.MdbKafkaCluster("fooMdbKafkaCluster",
    config=yandex.MdbKafkaClusterConfigArgs(
        assign_public_ip=False,
        brokers_count=1,
        kafka=yandex.MdbKafkaClusterConfigKafkaArgs(
            kafka_config=yandex.MdbKafkaClusterConfigKafkaKafkaConfigArgs(
                compression_type="COMPRESSION_TYPE_ZSTD",
                default_replication_factor="1",
                log_flush_interval_messages="1024",
                log_flush_interval_ms="1000",
                log_flush_scheduler_interval_ms="1000",
                log_preallocate=True,
                log_retention_bytes="1073741824",
                log_retention_hours="168",
                log_retention_minutes="10080",
                log_retention_ms="86400000",
                log_segment_bytes="134217728",
                num_partitions="10",
            ),
            resources=yandex.MdbKafkaClusterConfigKafkaResourcesArgs(
                disk_size=32,
                disk_type_id="network-ssd",
                resource_preset_id="s2.micro",
            ),
        ),
        schema_registry=False,
        unmanaged_topics=False,
        version="2.6",
        zones=["ru-central1-a"],
    ),
    environment="PRESTABLE",
    network_id=foo_vpc_network.id,
    subnet_ids=[foo_vpc_subnet.id],
    users=[
        yandex.MdbKafkaClusterUserArgs(
            name="producer-application",
            password="password",
            permissions=[yandex.MdbKafkaClusterUserPermissionArgs(
                role="ACCESS_ROLE_PRODUCER",
                topic_name="input",
            )],
        ),
        yandex.MdbKafkaClusterUserArgs(
            name="worker",
            password="password",
            permissions=[
                yandex.MdbKafkaClusterUserPermissionArgs(
                    role="ACCESS_ROLE_CONSUMER",
                    topic_name="input",
                ),
                yandex.MdbKafkaClusterUserPermissionArgs(
                    role="ACCESS_ROLE_PRODUCER",
                    topic_name="output",
                ),
            ],
        ),
    ])
import * as pulumi from "@pulumi/pulumi";
import * as yandex from "@pulumi/yandex";

const fooVpcNetwork = new yandex.VpcNetwork("foo", {});
const fooVpcSubnet = new yandex.VpcSubnet("foo", {
    networkId: fooVpcNetwork.id,
    v4CidrBlocks: ["10.5.0.0/24"],
    zone: "ru-central1-a",
});
const fooMdbKafkaCluster = new yandex.MdbKafkaCluster("foo", {
    config: {
        assignPublicIp: false,
        brokersCount: 1,
        kafka: {
            kafkaConfig: {
                compressionType: "COMPRESSION_TYPE_ZSTD",
                defaultReplicationFactor: "1",
                logFlushIntervalMessages: "1024",
                logFlushIntervalMs: "1000",
                logFlushSchedulerIntervalMs: "1000",
                logPreallocate: true,
                logRetentionBytes: "1.073741824e+09",
                logRetentionHours: "168",
                logRetentionMinutes: "10080",
                logRetentionMs: "8.64e+07",
                logSegmentBytes: "1.34217728e+08",
                numPartitions: "10",
            },
            resources: {
                diskSize: 32,
                diskTypeId: "network-ssd",
                resourcePresetId: "s2.micro",
            },
        },
        schemaRegistry: false,
        unmanagedTopics: false,
        version: "2.6",
        zones: ["ru-central1-a"],
    },
    environment: "PRESTABLE",
    networkId: fooVpcNetwork.id,
    subnetIds: [fooVpcSubnet.id],
    users: [
        {
            name: "producer-application",
            password: "password",
            permissions: [{
                role: "ACCESS_ROLE_PRODUCER",
                topicName: "input",
            }],
        },
        {
            name: "worker",
            password: "password",
            permissions: [
                {
                    role: "ACCESS_ROLE_CONSUMER",
                    topicName: "input",
                },
                {
                    role: "ACCESS_ROLE_PRODUCER",
                    topicName: "output",
                },
            ],
        },
    ],
});

Create a MdbKafkaCluster Resource

new MdbKafkaCluster(name: string, args: MdbKafkaClusterArgs, opts?: CustomResourceOptions);
@overload
def MdbKafkaCluster(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    config: Optional[MdbKafkaClusterConfigArgs] = None,
                    deletion_protection: Optional[bool] = None,
                    description: Optional[str] = None,
                    environment: Optional[str] = None,
                    folder_id: Optional[str] = None,
                    host_group_ids: Optional[Sequence[str]] = None,
                    labels: Optional[Mapping[str, str]] = None,
                    name: Optional[str] = None,
                    network_id: Optional[str] = None,
                    security_group_ids: Optional[Sequence[str]] = None,
                    subnet_ids: Optional[Sequence[str]] = None,
                    topics: Optional[Sequence[MdbKafkaClusterTopicArgs]] = None,
                    users: Optional[Sequence[MdbKafkaClusterUserArgs]] = None)
@overload
def MdbKafkaCluster(resource_name: str,
                    args: MdbKafkaClusterArgs,
                    opts: Optional[ResourceOptions] = None)
func NewMdbKafkaCluster(ctx *Context, name string, args MdbKafkaClusterArgs, opts ...ResourceOption) (*MdbKafkaCluster, error)
public MdbKafkaCluster(string name, MdbKafkaClusterArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args MdbKafkaClusterArgs
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 MdbKafkaClusterArgs
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 MdbKafkaClusterArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args MdbKafkaClusterArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

MdbKafkaCluster Resource Properties

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

Inputs

The MdbKafkaCluster resource accepts the following input properties:

Config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
NetworkId string
ID of the network, to which the Kafka cluster belongs.
DeletionProtection bool
Inhibits deletion of the cluster. Can be either true or false.
Description string
Description of the Kafka cluster.
Environment string
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
FolderId string
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
HostGroupIds List<string>
A list of IDs of the host groups to place VMs of the cluster on.
Labels Dictionary<string, string>
A set of key/value label pairs to assign to the Kafka cluster.
Name string
The name of the topic.
SecurityGroupIds List<string>
Security group ids, to which the Kafka cluster belongs.
SubnetIds List<string>
IDs of the subnets, to which the Kafka cluster belongs.
Topics List<MdbKafkaClusterTopicArgs>
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

Users List<MdbKafkaClusterUserArgs>
A user of the Kafka cluster. The structure is documented below.
Config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
NetworkId string
ID of the network, to which the Kafka cluster belongs.
DeletionProtection bool
Inhibits deletion of the cluster. Can be either true or false.
Description string
Description of the Kafka cluster.
Environment string
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
FolderId string
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
HostGroupIds []string
A list of IDs of the host groups to place VMs of the cluster on.
Labels map[string]string
A set of key/value label pairs to assign to the Kafka cluster.
Name string
The name of the topic.
SecurityGroupIds []string
Security group ids, to which the Kafka cluster belongs.
SubnetIds []string
IDs of the subnets, to which the Kafka cluster belongs.
Topics []MdbKafkaClusterTopicArgs
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

Users []MdbKafkaClusterUserArgs
A user of the Kafka cluster. The structure is documented below.
config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
networkId string
ID of the network, to which the Kafka cluster belongs.
deletionProtection boolean
Inhibits deletion of the cluster. Can be either true or false.
description string
Description of the Kafka cluster.
environment string
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
folderId string
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
hostGroupIds string[]
A list of IDs of the host groups to place VMs of the cluster on.
labels {[key: string]: string}
A set of key/value label pairs to assign to the Kafka cluster.
name string
The name of the topic.
securityGroupIds string[]
Security group ids, to which the Kafka cluster belongs.
subnetIds string[]
IDs of the subnets, to which the Kafka cluster belongs.
topics MdbKafkaClusterTopicArgs[]
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

users MdbKafkaClusterUserArgs[]
A user of the Kafka cluster. The structure is documented below.
config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
network_id str
ID of the network, to which the Kafka cluster belongs.
deletion_protection bool
Inhibits deletion of the cluster. Can be either true or false.
description str
Description of the Kafka cluster.
environment str
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
folder_id str
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
host_group_ids Sequence[str]
A list of IDs of the host groups to place VMs of the cluster on.
labels Mapping[str, str]
A set of key/value label pairs to assign to the Kafka cluster.
name str
The name of the topic.
security_group_ids Sequence[str]
Security group ids, to which the Kafka cluster belongs.
subnet_ids Sequence[str]
IDs of the subnets, to which the Kafka cluster belongs.
topics Sequence[MdbKafkaClusterTopicArgs]
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

users Sequence[MdbKafkaClusterUserArgs]
A user of the Kafka cluster. The structure is documented below.

Outputs

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

CreatedAt string
Timestamp of cluster creation.
Health string
Health of the host.
Hosts List<MdbKafkaClusterHost>
A host of the Kafka cluster. The structure is documented below.
Id string
The provider-assigned unique ID for this managed resource.
Status string
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
CreatedAt string
Timestamp of cluster creation.
Health string
Health of the host.
Hosts []MdbKafkaClusterHost
A host of the Kafka cluster. The structure is documented below.
Id string
The provider-assigned unique ID for this managed resource.
Status string
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
createdAt string
Timestamp of cluster creation.
health string
Health of the host.
hosts MdbKafkaClusterHost[]
A host of the Kafka cluster. The structure is documented below.
id string
The provider-assigned unique ID for this managed resource.
status string
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
created_at str
Timestamp of cluster creation.
health str
Health of the host.
hosts Sequence[MdbKafkaClusterHost]
A host of the Kafka cluster. The structure is documented below.
id str
The provider-assigned unique ID for this managed resource.
status str
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.

Look up an Existing MdbKafkaCluster Resource

Get an existing MdbKafkaCluster 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?: MdbKafkaClusterState, opts?: CustomResourceOptions): MdbKafkaCluster
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        config: Optional[MdbKafkaClusterConfigArgs] = None,
        created_at: Optional[str] = None,
        deletion_protection: Optional[bool] = None,
        description: Optional[str] = None,
        environment: Optional[str] = None,
        folder_id: Optional[str] = None,
        health: Optional[str] = None,
        host_group_ids: Optional[Sequence[str]] = None,
        hosts: Optional[Sequence[MdbKafkaClusterHostArgs]] = None,
        labels: Optional[Mapping[str, str]] = None,
        name: Optional[str] = None,
        network_id: Optional[str] = None,
        security_group_ids: Optional[Sequence[str]] = None,
        status: Optional[str] = None,
        subnet_ids: Optional[Sequence[str]] = None,
        topics: Optional[Sequence[MdbKafkaClusterTopicArgs]] = None,
        users: Optional[Sequence[MdbKafkaClusterUserArgs]] = None) -> MdbKafkaCluster
func GetMdbKafkaCluster(ctx *Context, name string, id IDInput, state *MdbKafkaClusterState, opts ...ResourceOption) (*MdbKafkaCluster, error)
public static MdbKafkaCluster Get(string name, Input<string> id, MdbKafkaClusterState? state, CustomResourceOptions? opts = null)
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.

The following state arguments are supported:

Config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
CreatedAt string
Timestamp of cluster creation.
DeletionProtection bool
Inhibits deletion of the cluster. Can be either true or false.
Description string
Description of the Kafka cluster.
Environment string
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
FolderId string
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
Health string
Health of the host.
HostGroupIds List<string>
A list of IDs of the host groups to place VMs of the cluster on.
Hosts List<MdbKafkaClusterHostArgs>
A host of the Kafka cluster. The structure is documented below.
Labels Dictionary<string, string>
A set of key/value label pairs to assign to the Kafka cluster.
Name string
The name of the topic.
NetworkId string
ID of the network, to which the Kafka cluster belongs.
SecurityGroupIds List<string>
Security group ids, to which the Kafka cluster belongs.
Status string
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
SubnetIds List<string>
IDs of the subnets, to which the Kafka cluster belongs.
Topics List<MdbKafkaClusterTopicArgs>
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

Users List<MdbKafkaClusterUserArgs>
A user of the Kafka cluster. The structure is documented below.
Config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
CreatedAt string
Timestamp of cluster creation.
DeletionProtection bool
Inhibits deletion of the cluster. Can be either true or false.
Description string
Description of the Kafka cluster.
Environment string
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
FolderId string
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
Health string
Health of the host.
HostGroupIds []string
A list of IDs of the host groups to place VMs of the cluster on.
Hosts []MdbKafkaClusterHostArgs
A host of the Kafka cluster. The structure is documented below.
Labels map[string]string
A set of key/value label pairs to assign to the Kafka cluster.
Name string
The name of the topic.
NetworkId string
ID of the network, to which the Kafka cluster belongs.
SecurityGroupIds []string
Security group ids, to which the Kafka cluster belongs.
Status string
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
SubnetIds []string
IDs of the subnets, to which the Kafka cluster belongs.
Topics []MdbKafkaClusterTopicArgs
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

Users []MdbKafkaClusterUserArgs
A user of the Kafka cluster. The structure is documented below.
config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
createdAt string
Timestamp of cluster creation.
deletionProtection boolean
Inhibits deletion of the cluster. Can be either true or false.
description string
Description of the Kafka cluster.
environment string
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
folderId string
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
health string
Health of the host.
hostGroupIds string[]
A list of IDs of the host groups to place VMs of the cluster on.
hosts MdbKafkaClusterHostArgs[]
A host of the Kafka cluster. The structure is documented below.
labels {[key: string]: string}
A set of key/value label pairs to assign to the Kafka cluster.
name string
The name of the topic.
networkId string
ID of the network, to which the Kafka cluster belongs.
securityGroupIds string[]
Security group ids, to which the Kafka cluster belongs.
status string
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
subnetIds string[]
IDs of the subnets, to which the Kafka cluster belongs.
topics MdbKafkaClusterTopicArgs[]
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

users MdbKafkaClusterUserArgs[]
A user of the Kafka cluster. The structure is documented below.
config MdbKafkaClusterConfigArgs
Configuration of the Kafka cluster. The structure is documented below.
created_at str
Timestamp of cluster creation.
deletion_protection bool
Inhibits deletion of the cluster. Can be either true or false.
description str
Description of the Kafka cluster.
environment str
Deployment environment of the Kafka cluster. Can be either PRESTABLE or PRODUCTION. The default is PRODUCTION.
folder_id str
The ID of the folder that the resource belongs to. If it is not provided, the default provider folder is used.
health str
Health of the host.
host_group_ids Sequence[str]
A list of IDs of the host groups to place VMs of the cluster on.
hosts Sequence[MdbKafkaClusterHostArgs]
A host of the Kafka cluster. The structure is documented below.
labels Mapping[str, str]
A set of key/value label pairs to assign to the Kafka cluster.
name str
The name of the topic.
network_id str
ID of the network, to which the Kafka cluster belongs.
security_group_ids Sequence[str]
Security group ids, to which the Kafka cluster belongs.
status str
Status of the cluster. Can be either CREATING, STARTING, RUNNING, UPDATING, STOPPING, STOPPED, ERROR or STATUS_UNKNOWN. For more information see status field of JSON representation in the official documentation.
subnet_ids Sequence[str]
IDs of the subnets, to which the Kafka cluster belongs.
topics Sequence[MdbKafkaClusterTopicArgs]
To manage topics, please switch to using a separate resource type yandex.MdbKafkaTopic.

Deprecated: to manage topics, please switch to using a separate resource type yandex_mdb_kafka_topic

users Sequence[MdbKafkaClusterUserArgs]
A user of the Kafka cluster. The structure is documented below.

Supporting Types

MdbKafkaClusterConfig

Kafka MdbKafkaClusterConfigKafka
Configuration of the Kafka subcluster. The structure is documented below.
Version string
Version of the Kafka server software.
Zones List<string>
List of availability zones.
AssignPublicIp bool
Determines whether each broker will be assigned a public IP address. The default is false.
BrokersCount int
Count of brokers per availability zone. The default is 1.
SchemaRegistry bool
Enables managed schema registry on cluster. The default is false.
UnmanagedTopics bool
Allows to use Kafka AdminAPI to manage topics. The default is false.
Zookeeper MdbKafkaClusterConfigZookeeper
Configuration of the ZooKeeper subcluster. The structure is documented below.
Kafka MdbKafkaClusterConfigKafka
Configuration of the Kafka subcluster. The structure is documented below.
Version string
Version of the Kafka server software.
Zones []string
List of availability zones.
AssignPublicIp bool
Determines whether each broker will be assigned a public IP address. The default is false.
BrokersCount int
Count of brokers per availability zone. The default is 1.
SchemaRegistry bool
Enables managed schema registry on cluster. The default is false.
UnmanagedTopics bool
Allows to use Kafka AdminAPI to manage topics. The default is false.
Zookeeper MdbKafkaClusterConfigZookeeper
Configuration of the ZooKeeper subcluster. The structure is documented below.
kafka MdbKafkaClusterConfigKafka
Configuration of the Kafka subcluster. The structure is documented below.
version string
Version of the Kafka server software.
zones string[]
List of availability zones.
assignPublicIp boolean
Determines whether each broker will be assigned a public IP address. The default is false.
brokersCount number
Count of brokers per availability zone. The default is 1.
schemaRegistry boolean
Enables managed schema registry on cluster. The default is false.
unmanagedTopics boolean
Allows to use Kafka AdminAPI to manage topics. The default is false.
zookeeper MdbKafkaClusterConfigZookeeper
Configuration of the ZooKeeper subcluster. The structure is documented below.
kafka MdbKafkaClusterConfigKafka
Configuration of the Kafka subcluster. The structure is documented below.
version str
Version of the Kafka server software.
zones Sequence[str]
List of availability zones.
assign_public_ip bool
Determines whether each broker will be assigned a public IP address. The default is false.
brokers_count int
Count of brokers per availability zone. The default is 1.
schema_registry bool
Enables managed schema registry on cluster. The default is false.
unmanaged_topics bool
Allows to use Kafka AdminAPI to manage topics. The default is false.
zookeeper MdbKafkaClusterConfigZookeeper
Configuration of the ZooKeeper subcluster. The structure is documented below.

MdbKafkaClusterConfigKafka

Resources MdbKafkaClusterConfigKafkaResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
KafkaConfig MdbKafkaClusterConfigKafkaKafkaConfig
User-defined settings for the Kafka cluster. The structure is documented below.
Resources MdbKafkaClusterConfigKafkaResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
KafkaConfig MdbKafkaClusterConfigKafkaKafkaConfig
User-defined settings for the Kafka cluster. The structure is documented below.
resources MdbKafkaClusterConfigKafkaResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
kafkaConfig MdbKafkaClusterConfigKafkaKafkaConfig
User-defined settings for the Kafka cluster. The structure is documented below.
resources MdbKafkaClusterConfigKafkaResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
kafka_config MdbKafkaClusterConfigKafkaKafkaConfig
User-defined settings for the Kafka cluster. The structure is documented below.

MdbKafkaClusterConfigKafkaKafkaConfig

MdbKafkaClusterConfigKafkaResources

DiskSize int
Volume of the storage available to a ZooKeeper host, in gigabytes.
DiskTypeId string
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
ResourcePresetId string
DiskSize int
Volume of the storage available to a ZooKeeper host, in gigabytes.
DiskTypeId string
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
ResourcePresetId string
diskSize number
Volume of the storage available to a ZooKeeper host, in gigabytes.
diskTypeId string
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
resourcePresetId string
disk_size int
Volume of the storage available to a ZooKeeper host, in gigabytes.
disk_type_id str
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
resource_preset_id str

MdbKafkaClusterConfigZookeeper

Resources MdbKafkaClusterConfigZookeeperResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
Resources MdbKafkaClusterConfigZookeeperResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
resources MdbKafkaClusterConfigZookeeperResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.
resources MdbKafkaClusterConfigZookeeperResources
Resources allocated to hosts of the ZooKeeper subcluster. The structure is documented below.

MdbKafkaClusterConfigZookeeperResources

DiskSize int
Volume of the storage available to a ZooKeeper host, in gigabytes.
DiskTypeId string
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
ResourcePresetId string
DiskSize int
Volume of the storage available to a ZooKeeper host, in gigabytes.
DiskTypeId string
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
ResourcePresetId string
diskSize number
Volume of the storage available to a ZooKeeper host, in gigabytes.
diskTypeId string
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
resourcePresetId string
disk_size int
Volume of the storage available to a ZooKeeper host, in gigabytes.
disk_type_id str
Type of the storage of ZooKeeper hosts. For more information see the official documentation.
resource_preset_id str

MdbKafkaClusterHost

AssignPublicIp bool
Determines whether each broker will be assigned a public IP address. The default is false.
Health string
Health of the host.
Name string
The name of the topic.
Role string
The role type to grant to the topic.
SubnetId string
The ID of the subnet, to which the host belongs.
ZoneId string
The availability zone where the Kafka host was created.
AssignPublicIp bool
Determines whether each broker will be assigned a public IP address. The default is false.
Health string
Health of the host.
Name string
The name of the topic.
Role string
The role type to grant to the topic.
SubnetId string
The ID of the subnet, to which the host belongs.
ZoneId string
The availability zone where the Kafka host was created.
assignPublicIp boolean
Determines whether each broker will be assigned a public IP address. The default is false.
health string
Health of the host.
name string
The name of the topic.
role string
The role type to grant to the topic.
subnetId string
The ID of the subnet, to which the host belongs.
zoneId string
The availability zone where the Kafka host was created.
assign_public_ip bool
Determines whether each broker will be assigned a public IP address. The default is false.
health str
Health of the host.
name str
The name of the topic.
role str
The role type to grant to the topic.
subnet_id str
The ID of the subnet, to which the host belongs.
zone_id str
The availability zone where the Kafka host was created.

MdbKafkaClusterTopic

Name string
The name of the topic.
Partitions int
The number of the topic’s partitions.
ReplicationFactor int
Amount of data copies (replicas) for the topic in the cluster.
TopicConfig MdbKafkaClusterTopicTopicConfig
User-defined settings for the topic. The structure is documented below.
Name string
The name of the topic.
Partitions int
The number of the topic’s partitions.
ReplicationFactor int
Amount of data copies (replicas) for the topic in the cluster.
TopicConfig MdbKafkaClusterTopicTopicConfig
User-defined settings for the topic. The structure is documented below.
name string
The name of the topic.
partitions number
The number of the topic’s partitions.
replicationFactor number
Amount of data copies (replicas) for the topic in the cluster.
topicConfig MdbKafkaClusterTopicTopicConfig
User-defined settings for the topic. The structure is documented below.
name str
The name of the topic.
partitions int
The number of the topic’s partitions.
replication_factor int
Amount of data copies (replicas) for the topic in the cluster.
topic_config MdbKafkaClusterTopicTopicConfig
User-defined settings for the topic. The structure is documented below.

MdbKafkaClusterTopicTopicConfig

MdbKafkaClusterUser

Name string
The name of the topic.
Password string
The password of the user.
Permissions List<MdbKafkaClusterUserPermission>
Set of permissions granted to the user. The structure is documented below.
Name string
The name of the topic.
Password string
The password of the user.
Permissions []MdbKafkaClusterUserPermission
Set of permissions granted to the user. The structure is documented below.
name string
The name of the topic.
password string
The password of the user.
permissions MdbKafkaClusterUserPermission[]
Set of permissions granted to the user. The structure is documented below.
name str
The name of the topic.
password str
The password of the user.
permissions Sequence[MdbKafkaClusterUserPermission]
Set of permissions granted to the user. The structure is documented below.

MdbKafkaClusterUserPermission

Role string
The role type to grant to the topic.
TopicName string
The name of the topic that the permission grants access to.
Role string
The role type to grant to the topic.
TopicName string
The name of the topic that the permission grants access to.
role string
The role type to grant to the topic.
topicName string
The name of the topic that the permission grants access to.
role str
The role type to grant to the topic.
topic_name str
The name of the topic that the permission grants access to.

Import

A cluster can be imported using the id of the resource, e.g.

 $ pulumi import yandex:index/mdbKafkaCluster:MdbKafkaCluster foo cluster_id

Package Details

Repository
https://github.com/pulumi/pulumi-yandex
License
Apache-2.0
Notes
This Pulumi package is based on the yandex Terraform Provider.