1. Packages
  2. Aiven Provider
  3. API Docs
  4. KafkaTopic
Aiven v6.28.0 published on Friday, Nov 15, 2024 by Pulumi

aiven.KafkaTopic

Explore with Pulumi AI

aiven logo
Aiven v6.28.0 published on Friday, Nov 15, 2024 by Pulumi

    Creates and manages an Aiven for Apache Kafka® topic.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aiven from "@pulumi/aiven";
    
    const exampleTopic = new aiven.KafkaTopic("example_topic", {
        project: exampleProject.project,
        serviceName: exampleKafka.serviceName,
        topicName: "example-topic",
        partitions: 5,
        replication: 3,
        terminationProtection: true,
        config: {
            flushMs: "10",
            cleanupPolicy: "compact,delete",
        },
        ownerUserGroupId: example.groupId,
    });
    
    import pulumi
    import pulumi_aiven as aiven
    
    example_topic = aiven.KafkaTopic("example_topic",
        project=example_project["project"],
        service_name=example_kafka["serviceName"],
        topic_name="example-topic",
        partitions=5,
        replication=3,
        termination_protection=True,
        config={
            "flush_ms": "10",
            "cleanup_policy": "compact,delete",
        },
        owner_user_group_id=example["groupId"])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aiven/sdk/v6/go/aiven"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := aiven.NewKafkaTopic(ctx, "example_topic", &aiven.KafkaTopicArgs{
    			Project:               pulumi.Any(exampleProject.Project),
    			ServiceName:           pulumi.Any(exampleKafka.ServiceName),
    			TopicName:             pulumi.String("example-topic"),
    			Partitions:            pulumi.Int(5),
    			Replication:           pulumi.Int(3),
    			TerminationProtection: pulumi.Bool(true),
    			Config: &aiven.KafkaTopicConfigArgs{
    				FlushMs:       pulumi.String("10"),
    				CleanupPolicy: pulumi.String("compact,delete"),
    			},
    			OwnerUserGroupId: pulumi.Any(example.GroupId),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aiven = Pulumi.Aiven;
    
    return await Deployment.RunAsync(() => 
    {
        var exampleTopic = new Aiven.KafkaTopic("example_topic", new()
        {
            Project = exampleProject.Project,
            ServiceName = exampleKafka.ServiceName,
            TopicName = "example-topic",
            Partitions = 5,
            Replication = 3,
            TerminationProtection = true,
            Config = new Aiven.Inputs.KafkaTopicConfigArgs
            {
                FlushMs = "10",
                CleanupPolicy = "compact,delete",
            },
            OwnerUserGroupId = example.GroupId,
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aiven.KafkaTopic;
    import com.pulumi.aiven.KafkaTopicArgs;
    import com.pulumi.aiven.inputs.KafkaTopicConfigArgs;
    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 exampleTopic = new KafkaTopic("exampleTopic", KafkaTopicArgs.builder()
                .project(exampleProject.project())
                .serviceName(exampleKafka.serviceName())
                .topicName("example-topic")
                .partitions(5)
                .replication(3)
                .terminationProtection(true)
                .config(KafkaTopicConfigArgs.builder()
                    .flushMs(10)
                    .cleanupPolicy("compact,delete")
                    .build())
                .ownerUserGroupId(example.groupId())
                .build());
    
        }
    }
    
    resources:
      exampleTopic:
        type: aiven:KafkaTopic
        name: example_topic
        properties:
          project: ${exampleProject.project}
          serviceName: ${exampleKafka.serviceName}
          topicName: example-topic
          partitions: 5
          replication: 3
          terminationProtection: true
          config:
            flushMs: 10
            cleanupPolicy: compact,delete
          ownerUserGroupId: ${example.groupId}
    

    Create KafkaTopic Resource

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

    Constructor syntax

    new KafkaTopic(name: string, args: KafkaTopicArgs, opts?: CustomResourceOptions);
    @overload
    def KafkaTopic(resource_name: str,
                   args: KafkaTopicArgs,
                   opts: Optional[ResourceOptions] = None)
    
    @overload
    def KafkaTopic(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   partitions: Optional[int] = None,
                   project: Optional[str] = None,
                   replication: Optional[int] = None,
                   service_name: Optional[str] = None,
                   topic_name: Optional[str] = None,
                   config: Optional[KafkaTopicConfigArgs] = None,
                   owner_user_group_id: Optional[str] = None,
                   tags: Optional[Sequence[KafkaTopicTagArgs]] = None,
                   termination_protection: Optional[bool] = None,
                   topic_description: Optional[str] = None)
    func NewKafkaTopic(ctx *Context, name string, args KafkaTopicArgs, opts ...ResourceOption) (*KafkaTopic, error)
    public KafkaTopic(string name, KafkaTopicArgs args, CustomResourceOptions? opts = null)
    public KafkaTopic(String name, KafkaTopicArgs args)
    public KafkaTopic(String name, KafkaTopicArgs args, CustomResourceOptions options)
    
    type: aiven:KafkaTopic
    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 KafkaTopicArgs
    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 KafkaTopicArgs
    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 KafkaTopicArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args KafkaTopicArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args KafkaTopicArgs
    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 kafkaTopicResource = new Aiven.KafkaTopic("kafkaTopicResource", new()
    {
        Partitions = 0,
        Project = "string",
        Replication = 0,
        ServiceName = "string",
        TopicName = "string",
        Config = new Aiven.Inputs.KafkaTopicConfigArgs
        {
            CleanupPolicy = "string",
            CompressionType = "string",
            DeleteRetentionMs = "string",
            FileDeleteDelayMs = "string",
            FlushMessages = "string",
            FlushMs = "string",
            IndexIntervalBytes = "string",
            LocalRetentionBytes = "string",
            LocalRetentionMs = "string",
            MaxCompactionLagMs = "string",
            MaxMessageBytes = "string",
            MessageDownconversionEnable = false,
            MessageFormatVersion = "string",
            MessageTimestampDifferenceMaxMs = "string",
            MessageTimestampType = "string",
            MinCleanableDirtyRatio = 0,
            MinCompactionLagMs = "string",
            MinInsyncReplicas = "string",
            Preallocate = false,
            RemoteStorageEnable = false,
            RetentionBytes = "string",
            RetentionMs = "string",
            SegmentBytes = "string",
            SegmentIndexBytes = "string",
            SegmentJitterMs = "string",
            SegmentMs = "string",
        },
        OwnerUserGroupId = "string",
        Tags = new[]
        {
            new Aiven.Inputs.KafkaTopicTagArgs
            {
                Key = "string",
                Value = "string",
            },
        },
        TerminationProtection = false,
        TopicDescription = "string",
    });
    
    example, err := aiven.NewKafkaTopic(ctx, "kafkaTopicResource", &aiven.KafkaTopicArgs{
    	Partitions:  pulumi.Int(0),
    	Project:     pulumi.String("string"),
    	Replication: pulumi.Int(0),
    	ServiceName: pulumi.String("string"),
    	TopicName:   pulumi.String("string"),
    	Config: &aiven.KafkaTopicConfigArgs{
    		CleanupPolicy:                   pulumi.String("string"),
    		CompressionType:                 pulumi.String("string"),
    		DeleteRetentionMs:               pulumi.String("string"),
    		FileDeleteDelayMs:               pulumi.String("string"),
    		FlushMessages:                   pulumi.String("string"),
    		FlushMs:                         pulumi.String("string"),
    		IndexIntervalBytes:              pulumi.String("string"),
    		LocalRetentionBytes:             pulumi.String("string"),
    		LocalRetentionMs:                pulumi.String("string"),
    		MaxCompactionLagMs:              pulumi.String("string"),
    		MaxMessageBytes:                 pulumi.String("string"),
    		MessageDownconversionEnable:     pulumi.Bool(false),
    		MessageFormatVersion:            pulumi.String("string"),
    		MessageTimestampDifferenceMaxMs: pulumi.String("string"),
    		MessageTimestampType:            pulumi.String("string"),
    		MinCleanableDirtyRatio:          pulumi.Float64(0),
    		MinCompactionLagMs:              pulumi.String("string"),
    		MinInsyncReplicas:               pulumi.String("string"),
    		Preallocate:                     pulumi.Bool(false),
    		RemoteStorageEnable:             pulumi.Bool(false),
    		RetentionBytes:                  pulumi.String("string"),
    		RetentionMs:                     pulumi.String("string"),
    		SegmentBytes:                    pulumi.String("string"),
    		SegmentIndexBytes:               pulumi.String("string"),
    		SegmentJitterMs:                 pulumi.String("string"),
    		SegmentMs:                       pulumi.String("string"),
    	},
    	OwnerUserGroupId: pulumi.String("string"),
    	Tags: aiven.KafkaTopicTagArray{
    		&aiven.KafkaTopicTagArgs{
    			Key:   pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	TerminationProtection: pulumi.Bool(false),
    	TopicDescription:      pulumi.String("string"),
    })
    
    var kafkaTopicResource = new KafkaTopic("kafkaTopicResource", KafkaTopicArgs.builder()
        .partitions(0)
        .project("string")
        .replication(0)
        .serviceName("string")
        .topicName("string")
        .config(KafkaTopicConfigArgs.builder()
            .cleanupPolicy("string")
            .compressionType("string")
            .deleteRetentionMs("string")
            .fileDeleteDelayMs("string")
            .flushMessages("string")
            .flushMs("string")
            .indexIntervalBytes("string")
            .localRetentionBytes("string")
            .localRetentionMs("string")
            .maxCompactionLagMs("string")
            .maxMessageBytes("string")
            .messageDownconversionEnable(false)
            .messageFormatVersion("string")
            .messageTimestampDifferenceMaxMs("string")
            .messageTimestampType("string")
            .minCleanableDirtyRatio(0)
            .minCompactionLagMs("string")
            .minInsyncReplicas("string")
            .preallocate(false)
            .remoteStorageEnable(false)
            .retentionBytes("string")
            .retentionMs("string")
            .segmentBytes("string")
            .segmentIndexBytes("string")
            .segmentJitterMs("string")
            .segmentMs("string")
            .build())
        .ownerUserGroupId("string")
        .tags(KafkaTopicTagArgs.builder()
            .key("string")
            .value("string")
            .build())
        .terminationProtection(false)
        .topicDescription("string")
        .build());
    
    kafka_topic_resource = aiven.KafkaTopic("kafkaTopicResource",
        partitions=0,
        project="string",
        replication=0,
        service_name="string",
        topic_name="string",
        config={
            "cleanup_policy": "string",
            "compression_type": "string",
            "delete_retention_ms": "string",
            "file_delete_delay_ms": "string",
            "flush_messages": "string",
            "flush_ms": "string",
            "index_interval_bytes": "string",
            "local_retention_bytes": "string",
            "local_retention_ms": "string",
            "max_compaction_lag_ms": "string",
            "max_message_bytes": "string",
            "message_downconversion_enable": False,
            "message_format_version": "string",
            "message_timestamp_difference_max_ms": "string",
            "message_timestamp_type": "string",
            "min_cleanable_dirty_ratio": 0,
            "min_compaction_lag_ms": "string",
            "min_insync_replicas": "string",
            "preallocate": False,
            "remote_storage_enable": False,
            "retention_bytes": "string",
            "retention_ms": "string",
            "segment_bytes": "string",
            "segment_index_bytes": "string",
            "segment_jitter_ms": "string",
            "segment_ms": "string",
        },
        owner_user_group_id="string",
        tags=[{
            "key": "string",
            "value": "string",
        }],
        termination_protection=False,
        topic_description="string")
    
    const kafkaTopicResource = new aiven.KafkaTopic("kafkaTopicResource", {
        partitions: 0,
        project: "string",
        replication: 0,
        serviceName: "string",
        topicName: "string",
        config: {
            cleanupPolicy: "string",
            compressionType: "string",
            deleteRetentionMs: "string",
            fileDeleteDelayMs: "string",
            flushMessages: "string",
            flushMs: "string",
            indexIntervalBytes: "string",
            localRetentionBytes: "string",
            localRetentionMs: "string",
            maxCompactionLagMs: "string",
            maxMessageBytes: "string",
            messageDownconversionEnable: false,
            messageFormatVersion: "string",
            messageTimestampDifferenceMaxMs: "string",
            messageTimestampType: "string",
            minCleanableDirtyRatio: 0,
            minCompactionLagMs: "string",
            minInsyncReplicas: "string",
            preallocate: false,
            remoteStorageEnable: false,
            retentionBytes: "string",
            retentionMs: "string",
            segmentBytes: "string",
            segmentIndexBytes: "string",
            segmentJitterMs: "string",
            segmentMs: "string",
        },
        ownerUserGroupId: "string",
        tags: [{
            key: "string",
            value: "string",
        }],
        terminationProtection: false,
        topicDescription: "string",
    });
    
    type: aiven:KafkaTopic
    properties:
        config:
            cleanupPolicy: string
            compressionType: string
            deleteRetentionMs: string
            fileDeleteDelayMs: string
            flushMessages: string
            flushMs: string
            indexIntervalBytes: string
            localRetentionBytes: string
            localRetentionMs: string
            maxCompactionLagMs: string
            maxMessageBytes: string
            messageDownconversionEnable: false
            messageFormatVersion: string
            messageTimestampDifferenceMaxMs: string
            messageTimestampType: string
            minCleanableDirtyRatio: 0
            minCompactionLagMs: string
            minInsyncReplicas: string
            preallocate: false
            remoteStorageEnable: false
            retentionBytes: string
            retentionMs: string
            segmentBytes: string
            segmentIndexBytes: string
            segmentJitterMs: string
            segmentMs: string
        ownerUserGroupId: string
        partitions: 0
        project: string
        replication: 0
        serviceName: string
        tags:
            - key: string
              value: string
        terminationProtection: false
        topicDescription: string
        topicName: string
    

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

    Partitions int
    The number of partitions to create in the topic.
    Project string
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    Replication int
    The replication factor for the topic.
    ServiceName string
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    TopicName string
    The name of the topic. Changing this property forces recreation of the resource.
    Config KafkaTopicConfig
    Advanced parameters to configure topics.
    OwnerUserGroupId string
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    Tags List<KafkaTopicTag>
    Tags for the topic.
    TerminationProtection bool
    TopicDescription string
    The description of the topic
    Partitions int
    The number of partitions to create in the topic.
    Project string
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    Replication int
    The replication factor for the topic.
    ServiceName string
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    TopicName string
    The name of the topic. Changing this property forces recreation of the resource.
    Config KafkaTopicConfigArgs
    Advanced parameters to configure topics.
    OwnerUserGroupId string
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    Tags []KafkaTopicTagArgs
    Tags for the topic.
    TerminationProtection bool
    TopicDescription string
    The description of the topic
    partitions Integer
    The number of partitions to create in the topic.
    project String
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication Integer
    The replication factor for the topic.
    serviceName String
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    topicName String
    The name of the topic. Changing this property forces recreation of the resource.
    config KafkaTopicConfig
    Advanced parameters to configure topics.
    ownerUserGroupId String
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    tags List<KafkaTopicTag>
    Tags for the topic.
    terminationProtection Boolean
    topicDescription String
    The description of the topic
    partitions number
    The number of partitions to create in the topic.
    project string
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication number
    The replication factor for the topic.
    serviceName string
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    topicName string
    The name of the topic. Changing this property forces recreation of the resource.
    config KafkaTopicConfig
    Advanced parameters to configure topics.
    ownerUserGroupId string
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    tags KafkaTopicTag[]
    Tags for the topic.
    terminationProtection boolean
    topicDescription string
    The description of the topic
    partitions int
    The number of partitions to create in the topic.
    project str
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication int
    The replication factor for the topic.
    service_name str
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    topic_name str
    The name of the topic. Changing this property forces recreation of the resource.
    config KafkaTopicConfigArgs
    Advanced parameters to configure topics.
    owner_user_group_id str
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    tags Sequence[KafkaTopicTagArgs]
    Tags for the topic.
    termination_protection bool
    topic_description str
    The description of the topic
    partitions Number
    The number of partitions to create in the topic.
    project String
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication Number
    The replication factor for the topic.
    serviceName String
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    topicName String
    The name of the topic. Changing this property forces recreation of the resource.
    config Property Map
    Advanced parameters to configure topics.
    ownerUserGroupId String
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    tags List<Property Map>
    Tags for the topic.
    terminationProtection Boolean
    topicDescription String
    The description of the topic

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing KafkaTopic Resource

    Get an existing KafkaTopic 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?: KafkaTopicState, opts?: CustomResourceOptions): KafkaTopic
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            config: Optional[KafkaTopicConfigArgs] = None,
            owner_user_group_id: Optional[str] = None,
            partitions: Optional[int] = None,
            project: Optional[str] = None,
            replication: Optional[int] = None,
            service_name: Optional[str] = None,
            tags: Optional[Sequence[KafkaTopicTagArgs]] = None,
            termination_protection: Optional[bool] = None,
            topic_description: Optional[str] = None,
            topic_name: Optional[str] = None) -> KafkaTopic
    func GetKafkaTopic(ctx *Context, name string, id IDInput, state *KafkaTopicState, opts ...ResourceOption) (*KafkaTopic, error)
    public static KafkaTopic Get(string name, Input<string> id, KafkaTopicState? state, CustomResourceOptions? opts = null)
    public static KafkaTopic get(String name, Output<String> id, KafkaTopicState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Config KafkaTopicConfig
    Advanced parameters to configure topics.
    OwnerUserGroupId string
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    Partitions int
    The number of partitions to create in the topic.
    Project string
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    Replication int
    The replication factor for the topic.
    ServiceName string
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    Tags List<KafkaTopicTag>
    Tags for the topic.
    TerminationProtection bool
    TopicDescription string
    The description of the topic
    TopicName string
    The name of the topic. Changing this property forces recreation of the resource.
    Config KafkaTopicConfigArgs
    Advanced parameters to configure topics.
    OwnerUserGroupId string
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    Partitions int
    The number of partitions to create in the topic.
    Project string
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    Replication int
    The replication factor for the topic.
    ServiceName string
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    Tags []KafkaTopicTagArgs
    Tags for the topic.
    TerminationProtection bool
    TopicDescription string
    The description of the topic
    TopicName string
    The name of the topic. Changing this property forces recreation of the resource.
    config KafkaTopicConfig
    Advanced parameters to configure topics.
    ownerUserGroupId String
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    partitions Integer
    The number of partitions to create in the topic.
    project String
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication Integer
    The replication factor for the topic.
    serviceName String
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    tags List<KafkaTopicTag>
    Tags for the topic.
    terminationProtection Boolean
    topicDescription String
    The description of the topic
    topicName String
    The name of the topic. Changing this property forces recreation of the resource.
    config KafkaTopicConfig
    Advanced parameters to configure topics.
    ownerUserGroupId string
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    partitions number
    The number of partitions to create in the topic.
    project string
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication number
    The replication factor for the topic.
    serviceName string
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    tags KafkaTopicTag[]
    Tags for the topic.
    terminationProtection boolean
    topicDescription string
    The description of the topic
    topicName string
    The name of the topic. Changing this property forces recreation of the resource.
    config KafkaTopicConfigArgs
    Advanced parameters to configure topics.
    owner_user_group_id str
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    partitions int
    The number of partitions to create in the topic.
    project str
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication int
    The replication factor for the topic.
    service_name str
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    tags Sequence[KafkaTopicTagArgs]
    Tags for the topic.
    termination_protection bool
    topic_description str
    The description of the topic
    topic_name str
    The name of the topic. Changing this property forces recreation of the resource.
    config Property Map
    Advanced parameters to configure topics.
    ownerUserGroupId String
    The ID of the user group that owns the topic. Assigning ownership to decentralize topic management is part of Aiven for Apache Kafka® governance.
    partitions Number
    The number of partitions to create in the topic.
    project String
    The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    replication Number
    The replication factor for the topic.
    serviceName String
    The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
    tags List<Property Map>
    Tags for the topic.
    terminationProtection Boolean
    topicDescription String
    The description of the topic
    topicName String
    The name of the topic. Changing this property forces recreation of the resource.

    Supporting Types

    KafkaTopicConfig, KafkaTopicConfigArgs

    CleanupPolicy string
    cleanup.policy value. The possible values are delete, compact and compact,delete.
    CompressionType string
    compression.type value. The possible values are snappy, gzip, lz4, producer, uncompressed and zstd.
    DeleteRetentionMs string
    delete.retention.ms value
    FileDeleteDelayMs string
    file.delete.delay.ms value
    FlushMessages string
    flush.messages value
    FlushMs string
    flush.ms value
    IndexIntervalBytes string
    index.interval.bytes value
    LocalRetentionBytes string
    local.retention.bytes value
    LocalRetentionMs string
    local.retention.ms value
    MaxCompactionLagMs string
    max.compaction.lag.ms value
    MaxMessageBytes string
    max.message.bytes value
    MessageDownconversionEnable bool
    message.downconversion.enable value
    MessageFormatVersion string
    message.format.version value. The possible values are 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.10.0, 0.10.0-IV0, 0.10.0-IV1, 0.10.1, 0.10.1-IV0, 0.10.1-IV1, 0.10.1-IV2, 0.10.2, 0.10.2-IV0, 0.11.0, 0.11.0-IV0, 0.11.0-IV1, 0.11.0-IV2, 1.0, 1.0-IV0, 1.1, 1.1-IV0, 2.0, 2.0-IV0, 2.0-IV1, 2.1, 2.1-IV0, 2.1-IV1, 2.1-IV2, 2.2, 2.2-IV0, 2.2-IV1, 2.3, 2.3-IV0, 2.3-IV1, 2.4, 2.4-IV0, 2.4-IV1, 2.5, 2.5-IV0, 2.6, 2.6-IV0, 2.7, 2.7-IV0, 2.7-IV1, 2.7-IV2, 2.8, 2.8-IV0, 2.8-IV1, 3.0, 3.0-IV0, 3.0-IV1, 3.1, 3.1-IV0, 3.2, 3.2-IV0, 3.3, 3.3-IV0, 3.3-IV1, 3.3-IV2, 3.3-IV3, 3.4, 3.4-IV0, 3.5, 3.5-IV0, 3.5-IV1, 3.5-IV2, 3.6, 3.6-IV0, 3.6-IV1, 3.6-IV2, 3.7, 3.7-IV0, 3.7-IV1, 3.7-IV2, 3.7-IV3, 3.7-IV4, 3.8, 3.8-IV0, 3.9, 3.9-IV0 and 3.9-IV1.
    MessageTimestampDifferenceMaxMs string
    message.timestamp.difference.max.ms value
    MessageTimestampType string
    message.timestamp.type value. The possible values are CreateTime and LogAppendTime.
    MinCleanableDirtyRatio double
    min.cleanable.dirty.ratio value
    MinCompactionLagMs string
    min.compaction.lag.ms value
    MinInsyncReplicas string
    min.insync.replicas value
    Preallocate bool
    preallocate value
    RemoteStorageEnable bool
    remote.storage.enable value
    RetentionBytes string
    retention.bytes value
    RetentionMs string
    retention.ms value
    SegmentBytes string
    segment.bytes value
    SegmentIndexBytes string
    segment.index.bytes value
    SegmentJitterMs string
    segment.jitter.ms value
    SegmentMs string
    segment.ms value
    UncleanLeaderElectionEnable bool
    unclean.leader.election.enable value; This field is deprecated and no longer functional.

    Deprecated: This field is deprecated and no longer functional.

    CleanupPolicy string
    cleanup.policy value. The possible values are delete, compact and compact,delete.
    CompressionType string
    compression.type value. The possible values are snappy, gzip, lz4, producer, uncompressed and zstd.
    DeleteRetentionMs string
    delete.retention.ms value
    FileDeleteDelayMs string
    file.delete.delay.ms value
    FlushMessages string
    flush.messages value
    FlushMs string
    flush.ms value
    IndexIntervalBytes string
    index.interval.bytes value
    LocalRetentionBytes string
    local.retention.bytes value
    LocalRetentionMs string
    local.retention.ms value
    MaxCompactionLagMs string
    max.compaction.lag.ms value
    MaxMessageBytes string
    max.message.bytes value
    MessageDownconversionEnable bool
    message.downconversion.enable value
    MessageFormatVersion string
    message.format.version value. The possible values are 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.10.0, 0.10.0-IV0, 0.10.0-IV1, 0.10.1, 0.10.1-IV0, 0.10.1-IV1, 0.10.1-IV2, 0.10.2, 0.10.2-IV0, 0.11.0, 0.11.0-IV0, 0.11.0-IV1, 0.11.0-IV2, 1.0, 1.0-IV0, 1.1, 1.1-IV0, 2.0, 2.0-IV0, 2.0-IV1, 2.1, 2.1-IV0, 2.1-IV1, 2.1-IV2, 2.2, 2.2-IV0, 2.2-IV1, 2.3, 2.3-IV0, 2.3-IV1, 2.4, 2.4-IV0, 2.4-IV1, 2.5, 2.5-IV0, 2.6, 2.6-IV0, 2.7, 2.7-IV0, 2.7-IV1, 2.7-IV2, 2.8, 2.8-IV0, 2.8-IV1, 3.0, 3.0-IV0, 3.0-IV1, 3.1, 3.1-IV0, 3.2, 3.2-IV0, 3.3, 3.3-IV0, 3.3-IV1, 3.3-IV2, 3.3-IV3, 3.4, 3.4-IV0, 3.5, 3.5-IV0, 3.5-IV1, 3.5-IV2, 3.6, 3.6-IV0, 3.6-IV1, 3.6-IV2, 3.7, 3.7-IV0, 3.7-IV1, 3.7-IV2, 3.7-IV3, 3.7-IV4, 3.8, 3.8-IV0, 3.9, 3.9-IV0 and 3.9-IV1.
    MessageTimestampDifferenceMaxMs string
    message.timestamp.difference.max.ms value
    MessageTimestampType string
    message.timestamp.type value. The possible values are CreateTime and LogAppendTime.
    MinCleanableDirtyRatio float64
    min.cleanable.dirty.ratio value
    MinCompactionLagMs string
    min.compaction.lag.ms value
    MinInsyncReplicas string
    min.insync.replicas value
    Preallocate bool
    preallocate value
    RemoteStorageEnable bool
    remote.storage.enable value
    RetentionBytes string
    retention.bytes value
    RetentionMs string
    retention.ms value
    SegmentBytes string
    segment.bytes value
    SegmentIndexBytes string
    segment.index.bytes value
    SegmentJitterMs string
    segment.jitter.ms value
    SegmentMs string
    segment.ms value
    UncleanLeaderElectionEnable bool
    unclean.leader.election.enable value; This field is deprecated and no longer functional.

    Deprecated: This field is deprecated and no longer functional.

    cleanupPolicy String
    cleanup.policy value. The possible values are delete, compact and compact,delete.
    compressionType String
    compression.type value. The possible values are snappy, gzip, lz4, producer, uncompressed and zstd.
    deleteRetentionMs String
    delete.retention.ms value
    fileDeleteDelayMs String
    file.delete.delay.ms value
    flushMessages String
    flush.messages value
    flushMs String
    flush.ms value
    indexIntervalBytes String
    index.interval.bytes value
    localRetentionBytes String
    local.retention.bytes value
    localRetentionMs String
    local.retention.ms value
    maxCompactionLagMs String
    max.compaction.lag.ms value
    maxMessageBytes String
    max.message.bytes value
    messageDownconversionEnable Boolean
    message.downconversion.enable value
    messageFormatVersion String
    message.format.version value. The possible values are 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.10.0, 0.10.0-IV0, 0.10.0-IV1, 0.10.1, 0.10.1-IV0, 0.10.1-IV1, 0.10.1-IV2, 0.10.2, 0.10.2-IV0, 0.11.0, 0.11.0-IV0, 0.11.0-IV1, 0.11.0-IV2, 1.0, 1.0-IV0, 1.1, 1.1-IV0, 2.0, 2.0-IV0, 2.0-IV1, 2.1, 2.1-IV0, 2.1-IV1, 2.1-IV2, 2.2, 2.2-IV0, 2.2-IV1, 2.3, 2.3-IV0, 2.3-IV1, 2.4, 2.4-IV0, 2.4-IV1, 2.5, 2.5-IV0, 2.6, 2.6-IV0, 2.7, 2.7-IV0, 2.7-IV1, 2.7-IV2, 2.8, 2.8-IV0, 2.8-IV1, 3.0, 3.0-IV0, 3.0-IV1, 3.1, 3.1-IV0, 3.2, 3.2-IV0, 3.3, 3.3-IV0, 3.3-IV1, 3.3-IV2, 3.3-IV3, 3.4, 3.4-IV0, 3.5, 3.5-IV0, 3.5-IV1, 3.5-IV2, 3.6, 3.6-IV0, 3.6-IV1, 3.6-IV2, 3.7, 3.7-IV0, 3.7-IV1, 3.7-IV2, 3.7-IV3, 3.7-IV4, 3.8, 3.8-IV0, 3.9, 3.9-IV0 and 3.9-IV1.
    messageTimestampDifferenceMaxMs String
    message.timestamp.difference.max.ms value
    messageTimestampType String
    message.timestamp.type value. The possible values are CreateTime and LogAppendTime.
    minCleanableDirtyRatio Double
    min.cleanable.dirty.ratio value
    minCompactionLagMs String
    min.compaction.lag.ms value
    minInsyncReplicas String
    min.insync.replicas value
    preallocate Boolean
    preallocate value
    remoteStorageEnable Boolean
    remote.storage.enable value
    retentionBytes String
    retention.bytes value
    retentionMs String
    retention.ms value
    segmentBytes String
    segment.bytes value
    segmentIndexBytes String
    segment.index.bytes value
    segmentJitterMs String
    segment.jitter.ms value
    segmentMs String
    segment.ms value
    uncleanLeaderElectionEnable Boolean
    unclean.leader.election.enable value; This field is deprecated and no longer functional.

    Deprecated: This field is deprecated and no longer functional.

    cleanupPolicy string
    cleanup.policy value. The possible values are delete, compact and compact,delete.
    compressionType string
    compression.type value. The possible values are snappy, gzip, lz4, producer, uncompressed and zstd.
    deleteRetentionMs string
    delete.retention.ms value
    fileDeleteDelayMs string
    file.delete.delay.ms value
    flushMessages string
    flush.messages value
    flushMs string
    flush.ms value
    indexIntervalBytes string
    index.interval.bytes value
    localRetentionBytes string
    local.retention.bytes value
    localRetentionMs string
    local.retention.ms value
    maxCompactionLagMs string
    max.compaction.lag.ms value
    maxMessageBytes string
    max.message.bytes value
    messageDownconversionEnable boolean
    message.downconversion.enable value
    messageFormatVersion string
    message.format.version value. The possible values are 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.10.0, 0.10.0-IV0, 0.10.0-IV1, 0.10.1, 0.10.1-IV0, 0.10.1-IV1, 0.10.1-IV2, 0.10.2, 0.10.2-IV0, 0.11.0, 0.11.0-IV0, 0.11.0-IV1, 0.11.0-IV2, 1.0, 1.0-IV0, 1.1, 1.1-IV0, 2.0, 2.0-IV0, 2.0-IV1, 2.1, 2.1-IV0, 2.1-IV1, 2.1-IV2, 2.2, 2.2-IV0, 2.2-IV1, 2.3, 2.3-IV0, 2.3-IV1, 2.4, 2.4-IV0, 2.4-IV1, 2.5, 2.5-IV0, 2.6, 2.6-IV0, 2.7, 2.7-IV0, 2.7-IV1, 2.7-IV2, 2.8, 2.8-IV0, 2.8-IV1, 3.0, 3.0-IV0, 3.0-IV1, 3.1, 3.1-IV0, 3.2, 3.2-IV0, 3.3, 3.3-IV0, 3.3-IV1, 3.3-IV2, 3.3-IV3, 3.4, 3.4-IV0, 3.5, 3.5-IV0, 3.5-IV1, 3.5-IV2, 3.6, 3.6-IV0, 3.6-IV1, 3.6-IV2, 3.7, 3.7-IV0, 3.7-IV1, 3.7-IV2, 3.7-IV3, 3.7-IV4, 3.8, 3.8-IV0, 3.9, 3.9-IV0 and 3.9-IV1.
    messageTimestampDifferenceMaxMs string
    message.timestamp.difference.max.ms value
    messageTimestampType string
    message.timestamp.type value. The possible values are CreateTime and LogAppendTime.
    minCleanableDirtyRatio number
    min.cleanable.dirty.ratio value
    minCompactionLagMs string
    min.compaction.lag.ms value
    minInsyncReplicas string
    min.insync.replicas value
    preallocate boolean
    preallocate value
    remoteStorageEnable boolean
    remote.storage.enable value
    retentionBytes string
    retention.bytes value
    retentionMs string
    retention.ms value
    segmentBytes string
    segment.bytes value
    segmentIndexBytes string
    segment.index.bytes value
    segmentJitterMs string
    segment.jitter.ms value
    segmentMs string
    segment.ms value
    uncleanLeaderElectionEnable boolean
    unclean.leader.election.enable value; This field is deprecated and no longer functional.

    Deprecated: This field is deprecated and no longer functional.

    cleanup_policy str
    cleanup.policy value. The possible values are delete, compact and compact,delete.
    compression_type str
    compression.type value. The possible values are snappy, gzip, lz4, producer, uncompressed and zstd.
    delete_retention_ms str
    delete.retention.ms value
    file_delete_delay_ms str
    file.delete.delay.ms value
    flush_messages str
    flush.messages value
    flush_ms str
    flush.ms value
    index_interval_bytes str
    index.interval.bytes value
    local_retention_bytes str
    local.retention.bytes value
    local_retention_ms str
    local.retention.ms value
    max_compaction_lag_ms str
    max.compaction.lag.ms value
    max_message_bytes str
    max.message.bytes value
    message_downconversion_enable bool
    message.downconversion.enable value
    message_format_version str
    message.format.version value. The possible values are 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.10.0, 0.10.0-IV0, 0.10.0-IV1, 0.10.1, 0.10.1-IV0, 0.10.1-IV1, 0.10.1-IV2, 0.10.2, 0.10.2-IV0, 0.11.0, 0.11.0-IV0, 0.11.0-IV1, 0.11.0-IV2, 1.0, 1.0-IV0, 1.1, 1.1-IV0, 2.0, 2.0-IV0, 2.0-IV1, 2.1, 2.1-IV0, 2.1-IV1, 2.1-IV2, 2.2, 2.2-IV0, 2.2-IV1, 2.3, 2.3-IV0, 2.3-IV1, 2.4, 2.4-IV0, 2.4-IV1, 2.5, 2.5-IV0, 2.6, 2.6-IV0, 2.7, 2.7-IV0, 2.7-IV1, 2.7-IV2, 2.8, 2.8-IV0, 2.8-IV1, 3.0, 3.0-IV0, 3.0-IV1, 3.1, 3.1-IV0, 3.2, 3.2-IV0, 3.3, 3.3-IV0, 3.3-IV1, 3.3-IV2, 3.3-IV3, 3.4, 3.4-IV0, 3.5, 3.5-IV0, 3.5-IV1, 3.5-IV2, 3.6, 3.6-IV0, 3.6-IV1, 3.6-IV2, 3.7, 3.7-IV0, 3.7-IV1, 3.7-IV2, 3.7-IV3, 3.7-IV4, 3.8, 3.8-IV0, 3.9, 3.9-IV0 and 3.9-IV1.
    message_timestamp_difference_max_ms str
    message.timestamp.difference.max.ms value
    message_timestamp_type str
    message.timestamp.type value. The possible values are CreateTime and LogAppendTime.
    min_cleanable_dirty_ratio float
    min.cleanable.dirty.ratio value
    min_compaction_lag_ms str
    min.compaction.lag.ms value
    min_insync_replicas str
    min.insync.replicas value
    preallocate bool
    preallocate value
    remote_storage_enable bool
    remote.storage.enable value
    retention_bytes str
    retention.bytes value
    retention_ms str
    retention.ms value
    segment_bytes str
    segment.bytes value
    segment_index_bytes str
    segment.index.bytes value
    segment_jitter_ms str
    segment.jitter.ms value
    segment_ms str
    segment.ms value
    unclean_leader_election_enable bool
    unclean.leader.election.enable value; This field is deprecated and no longer functional.

    Deprecated: This field is deprecated and no longer functional.

    cleanupPolicy String
    cleanup.policy value. The possible values are delete, compact and compact,delete.
    compressionType String
    compression.type value. The possible values are snappy, gzip, lz4, producer, uncompressed and zstd.
    deleteRetentionMs String
    delete.retention.ms value
    fileDeleteDelayMs String
    file.delete.delay.ms value
    flushMessages String
    flush.messages value
    flushMs String
    flush.ms value
    indexIntervalBytes String
    index.interval.bytes value
    localRetentionBytes String
    local.retention.bytes value
    localRetentionMs String
    local.retention.ms value
    maxCompactionLagMs String
    max.compaction.lag.ms value
    maxMessageBytes String
    max.message.bytes value
    messageDownconversionEnable Boolean
    message.downconversion.enable value
    messageFormatVersion String
    message.format.version value. The possible values are 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.10.0, 0.10.0-IV0, 0.10.0-IV1, 0.10.1, 0.10.1-IV0, 0.10.1-IV1, 0.10.1-IV2, 0.10.2, 0.10.2-IV0, 0.11.0, 0.11.0-IV0, 0.11.0-IV1, 0.11.0-IV2, 1.0, 1.0-IV0, 1.1, 1.1-IV0, 2.0, 2.0-IV0, 2.0-IV1, 2.1, 2.1-IV0, 2.1-IV1, 2.1-IV2, 2.2, 2.2-IV0, 2.2-IV1, 2.3, 2.3-IV0, 2.3-IV1, 2.4, 2.4-IV0, 2.4-IV1, 2.5, 2.5-IV0, 2.6, 2.6-IV0, 2.7, 2.7-IV0, 2.7-IV1, 2.7-IV2, 2.8, 2.8-IV0, 2.8-IV1, 3.0, 3.0-IV0, 3.0-IV1, 3.1, 3.1-IV0, 3.2, 3.2-IV0, 3.3, 3.3-IV0, 3.3-IV1, 3.3-IV2, 3.3-IV3, 3.4, 3.4-IV0, 3.5, 3.5-IV0, 3.5-IV1, 3.5-IV2, 3.6, 3.6-IV0, 3.6-IV1, 3.6-IV2, 3.7, 3.7-IV0, 3.7-IV1, 3.7-IV2, 3.7-IV3, 3.7-IV4, 3.8, 3.8-IV0, 3.9, 3.9-IV0 and 3.9-IV1.
    messageTimestampDifferenceMaxMs String
    message.timestamp.difference.max.ms value
    messageTimestampType String
    message.timestamp.type value. The possible values are CreateTime and LogAppendTime.
    minCleanableDirtyRatio Number
    min.cleanable.dirty.ratio value
    minCompactionLagMs String
    min.compaction.lag.ms value
    minInsyncReplicas String
    min.insync.replicas value
    preallocate Boolean
    preallocate value
    remoteStorageEnable Boolean
    remote.storage.enable value
    retentionBytes String
    retention.bytes value
    retentionMs String
    retention.ms value
    segmentBytes String
    segment.bytes value
    segmentIndexBytes String
    segment.index.bytes value
    segmentJitterMs String
    segment.jitter.ms value
    segmentMs String
    segment.ms value
    uncleanLeaderElectionEnable Boolean
    unclean.leader.election.enable value; This field is deprecated and no longer functional.

    Deprecated: This field is deprecated and no longer functional.

    KafkaTopicTag, KafkaTopicTagArgs

    Key string
    Tag key. Maximum length: 64.
    Value string
    Tag value. Maximum length: 256.
    Key string
    Tag key. Maximum length: 64.
    Value string
    Tag value. Maximum length: 256.
    key String
    Tag key. Maximum length: 64.
    value String
    Tag value. Maximum length: 256.
    key string
    Tag key. Maximum length: 64.
    value string
    Tag value. Maximum length: 256.
    key str
    Tag key. Maximum length: 64.
    value str
    Tag value. Maximum length: 256.
    key String
    Tag key. Maximum length: 64.
    value String
    Tag value. Maximum length: 256.

    Import

    $ pulumi import aiven:index/kafkaTopic:KafkaTopic example_topic PROJECT/SERVICE_NAME/TOPIC_NAME
    

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

    Package Details

    Repository
    Aiven pulumi/pulumi-aiven
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aiven Terraform Provider.
    aiven logo
    Aiven v6.28.0 published on Friday, Nov 15, 2024 by Pulumi