1. Packages
  2. Confluent Provider
  3. API Docs
  4. ClusterLink
Confluent v2.23.0 published on Tuesday, Apr 1, 2025 by Pulumi

confluentcloud.ClusterLink

Explore with Pulumi AI

Example Usage

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

// https://docs.confluent.io/cloud/current/multi-cloud/cluster-linking/cluster-links-cc.html#create-a-cluster-link-in-bidirectional-mode
const east_to_west = new confluentcloud.ClusterLink("east-to-west", {
    link: "bidirectional-link",
    linkMode: "BIDIRECTIONAL",
    localKafkaCluster: {
        id: east.id,
        restEndpoint: east.restEndpoint,
        credentials: {
            key: app_manager_east_cluster_api_key.id,
            secret: app_manager_east_cluster_api_key.secret,
        },
    },
    remoteKafkaCluster: {
        id: west.id,
        bootstrapEndpoint: west.bootstrapEndpoint,
        credentials: {
            key: app_manager_west_cluster_api_key.id,
            secret: app_manager_west_cluster_api_key.secret,
        },
    },
});
const west_to_east = new confluentcloud.ClusterLink("west-to-east", {
    link: "bidirectional-link",
    linkMode: "BIDIRECTIONAL",
    localKafkaCluster: {
        id: west.id,
        restEndpoint: west.restEndpoint,
        credentials: {
            key: app_manager_west_cluster_api_key.id,
            secret: app_manager_west_cluster_api_key.secret,
        },
    },
    remoteKafkaCluster: {
        id: east.id,
        bootstrapEndpoint: east.bootstrapEndpoint,
        credentials: {
            key: app_manager_east_cluster_api_key.id,
            secret: app_manager_east_cluster_api_key.secret,
        },
    },
});
Copy
import pulumi
import pulumi_confluentcloud as confluentcloud

# https://docs.confluent.io/cloud/current/multi-cloud/cluster-linking/cluster-links-cc.html#create-a-cluster-link-in-bidirectional-mode
east_to_west = confluentcloud.ClusterLink("east-to-west",
    link="bidirectional-link",
    link_mode="BIDIRECTIONAL",
    local_kafka_cluster={
        "id": east["id"],
        "rest_endpoint": east["restEndpoint"],
        "credentials": {
            "key": app_manager_east_cluster_api_key["id"],
            "secret": app_manager_east_cluster_api_key["secret"],
        },
    },
    remote_kafka_cluster={
        "id": west["id"],
        "bootstrap_endpoint": west["bootstrapEndpoint"],
        "credentials": {
            "key": app_manager_west_cluster_api_key["id"],
            "secret": app_manager_west_cluster_api_key["secret"],
        },
    })
west_to_east = confluentcloud.ClusterLink("west-to-east",
    link="bidirectional-link",
    link_mode="BIDIRECTIONAL",
    local_kafka_cluster={
        "id": west["id"],
        "rest_endpoint": west["restEndpoint"],
        "credentials": {
            "key": app_manager_west_cluster_api_key["id"],
            "secret": app_manager_west_cluster_api_key["secret"],
        },
    },
    remote_kafka_cluster={
        "id": east["id"],
        "bootstrap_endpoint": east["bootstrapEndpoint"],
        "credentials": {
            "key": app_manager_east_cluster_api_key["id"],
            "secret": app_manager_east_cluster_api_key["secret"],
        },
    })
Copy
package main

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

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// https://docs.confluent.io/cloud/current/multi-cloud/cluster-linking/cluster-links-cc.html#create-a-cluster-link-in-bidirectional-mode
		_, err := confluentcloud.NewClusterLink(ctx, "east-to-west", &confluentcloud.ClusterLinkArgs{
			Link:     pulumi.String("bidirectional-link"),
			LinkMode: pulumi.String("BIDIRECTIONAL"),
			LocalKafkaCluster: &confluentcloud.ClusterLinkLocalKafkaClusterArgs{
				Id:           pulumi.Any(east.Id),
				RestEndpoint: pulumi.Any(east.RestEndpoint),
				Credentials: &confluentcloud.ClusterLinkLocalKafkaClusterCredentialsArgs{
					Key:    pulumi.Any(app_manager_east_cluster_api_key.Id),
					Secret: pulumi.Any(app_manager_east_cluster_api_key.Secret),
				},
			},
			RemoteKafkaCluster: &confluentcloud.ClusterLinkRemoteKafkaClusterArgs{
				Id:                pulumi.Any(west.Id),
				BootstrapEndpoint: pulumi.Any(west.BootstrapEndpoint),
				Credentials: &confluentcloud.ClusterLinkRemoteKafkaClusterCredentialsArgs{
					Key:    pulumi.Any(app_manager_west_cluster_api_key.Id),
					Secret: pulumi.Any(app_manager_west_cluster_api_key.Secret),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = confluentcloud.NewClusterLink(ctx, "west-to-east", &confluentcloud.ClusterLinkArgs{
			Link:     pulumi.String("bidirectional-link"),
			LinkMode: pulumi.String("BIDIRECTIONAL"),
			LocalKafkaCluster: &confluentcloud.ClusterLinkLocalKafkaClusterArgs{
				Id:           pulumi.Any(west.Id),
				RestEndpoint: pulumi.Any(west.RestEndpoint),
				Credentials: &confluentcloud.ClusterLinkLocalKafkaClusterCredentialsArgs{
					Key:    pulumi.Any(app_manager_west_cluster_api_key.Id),
					Secret: pulumi.Any(app_manager_west_cluster_api_key.Secret),
				},
			},
			RemoteKafkaCluster: &confluentcloud.ClusterLinkRemoteKafkaClusterArgs{
				Id:                pulumi.Any(east.Id),
				BootstrapEndpoint: pulumi.Any(east.BootstrapEndpoint),
				Credentials: &confluentcloud.ClusterLinkRemoteKafkaClusterCredentialsArgs{
					Key:    pulumi.Any(app_manager_east_cluster_api_key.Id),
					Secret: pulumi.Any(app_manager_east_cluster_api_key.Secret),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using ConfluentCloud = Pulumi.ConfluentCloud;

return await Deployment.RunAsync(() => 
{
    // https://docs.confluent.io/cloud/current/multi-cloud/cluster-linking/cluster-links-cc.html#create-a-cluster-link-in-bidirectional-mode
    var east_to_west = new ConfluentCloud.ClusterLink("east-to-west", new()
    {
        Link = "bidirectional-link",
        LinkMode = "BIDIRECTIONAL",
        LocalKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterArgs
        {
            Id = east.Id,
            RestEndpoint = east.RestEndpoint,
            Credentials = new ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterCredentialsArgs
            {
                Key = app_manager_east_cluster_api_key.Id,
                Secret = app_manager_east_cluster_api_key.Secret,
            },
        },
        RemoteKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterArgs
        {
            Id = west.Id,
            BootstrapEndpoint = west.BootstrapEndpoint,
            Credentials = new ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterCredentialsArgs
            {
                Key = app_manager_west_cluster_api_key.Id,
                Secret = app_manager_west_cluster_api_key.Secret,
            },
        },
    });

    var west_to_east = new ConfluentCloud.ClusterLink("west-to-east", new()
    {
        Link = "bidirectional-link",
        LinkMode = "BIDIRECTIONAL",
        LocalKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterArgs
        {
            Id = west.Id,
            RestEndpoint = west.RestEndpoint,
            Credentials = new ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterCredentialsArgs
            {
                Key = app_manager_west_cluster_api_key.Id,
                Secret = app_manager_west_cluster_api_key.Secret,
            },
        },
        RemoteKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterArgs
        {
            Id = east.Id,
            BootstrapEndpoint = east.BootstrapEndpoint,
            Credentials = new ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterCredentialsArgs
            {
                Key = app_manager_east_cluster_api_key.Id,
                Secret = app_manager_east_cluster_api_key.Secret,
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.confluentcloud.ClusterLink;
import com.pulumi.confluentcloud.ClusterLinkArgs;
import com.pulumi.confluentcloud.inputs.ClusterLinkLocalKafkaClusterArgs;
import com.pulumi.confluentcloud.inputs.ClusterLinkLocalKafkaClusterCredentialsArgs;
import com.pulumi.confluentcloud.inputs.ClusterLinkRemoteKafkaClusterArgs;
import com.pulumi.confluentcloud.inputs.ClusterLinkRemoteKafkaClusterCredentialsArgs;
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) {
        // https://docs.confluent.io/cloud/current/multi-cloud/cluster-linking/cluster-links-cc.html#create-a-cluster-link-in-bidirectional-mode
        var east_to_west = new ClusterLink("east-to-west", ClusterLinkArgs.builder()
            .link("bidirectional-link")
            .linkMode("BIDIRECTIONAL")
            .localKafkaCluster(ClusterLinkLocalKafkaClusterArgs.builder()
                .id(east.id())
                .restEndpoint(east.restEndpoint())
                .credentials(ClusterLinkLocalKafkaClusterCredentialsArgs.builder()
                    .key(app_manager_east_cluster_api_key.id())
                    .secret(app_manager_east_cluster_api_key.secret())
                    .build())
                .build())
            .remoteKafkaCluster(ClusterLinkRemoteKafkaClusterArgs.builder()
                .id(west.id())
                .bootstrapEndpoint(west.bootstrapEndpoint())
                .credentials(ClusterLinkRemoteKafkaClusterCredentialsArgs.builder()
                    .key(app_manager_west_cluster_api_key.id())
                    .secret(app_manager_west_cluster_api_key.secret())
                    .build())
                .build())
            .build());

        var west_to_east = new ClusterLink("west-to-east", ClusterLinkArgs.builder()
            .link("bidirectional-link")
            .linkMode("BIDIRECTIONAL")
            .localKafkaCluster(ClusterLinkLocalKafkaClusterArgs.builder()
                .id(west.id())
                .restEndpoint(west.restEndpoint())
                .credentials(ClusterLinkLocalKafkaClusterCredentialsArgs.builder()
                    .key(app_manager_west_cluster_api_key.id())
                    .secret(app_manager_west_cluster_api_key.secret())
                    .build())
                .build())
            .remoteKafkaCluster(ClusterLinkRemoteKafkaClusterArgs.builder()
                .id(east.id())
                .bootstrapEndpoint(east.bootstrapEndpoint())
                .credentials(ClusterLinkRemoteKafkaClusterCredentialsArgs.builder()
                    .key(app_manager_east_cluster_api_key.id())
                    .secret(app_manager_east_cluster_api_key.secret())
                    .build())
                .build())
            .build());

    }
}
Copy
resources:
  # https://docs.confluent.io/cloud/current/multi-cloud/cluster-linking/cluster-links-cc.html#create-a-cluster-link-in-bidirectional-mode
  east-to-west:
    type: confluentcloud:ClusterLink
    properties:
      link: bidirectional-link
      linkMode: BIDIRECTIONAL
      localKafkaCluster:
        id: ${east.id}
        restEndpoint: ${east.restEndpoint}
        credentials:
          key: ${["app-manager-east-cluster-api-key"].id}
          secret: ${["app-manager-east-cluster-api-key"].secret}
      remoteKafkaCluster:
        id: ${west.id}
        bootstrapEndpoint: ${west.bootstrapEndpoint}
        credentials:
          key: ${["app-manager-west-cluster-api-key"].id}
          secret: ${["app-manager-west-cluster-api-key"].secret}
  west-to-east:
    type: confluentcloud:ClusterLink
    properties:
      link: bidirectional-link
      linkMode: BIDIRECTIONAL
      localKafkaCluster:
        id: ${west.id}
        restEndpoint: ${west.restEndpoint}
        credentials:
          key: ${["app-manager-west-cluster-api-key"].id}
          secret: ${["app-manager-west-cluster-api-key"].secret}
      remoteKafkaCluster:
        id: ${east.id}
        bootstrapEndpoint: ${east.bootstrapEndpoint}
        credentials:
          key: ${["app-manager-east-cluster-api-key"].id}
          secret: ${["app-manager-east-cluster-api-key"].secret}
Copy

Getting Started

The following end-to-end examples might help to get started with confluentcloud.ClusterLink resource:

  • destination-initiated-cluster-link-rbac: An example of setting up a destination initiated cluster link with a mirror topic
  • source-initiated-cluster-link-rbac: An example of setting up a source initiated cluster link with a mirror topic
  • regular-bidirectional-cluster-link-rbac: An example of setting up a bidirectional cluster link with 2 mirror topics
  • advanced-bidirectional-cluster-link-rbac: An example of setting up a bidirectional cluster link with 2 mirror topics (advanced option)

See Cluster Linking on Confluent Cloud to learn more about Cluster Linking on Confluent Cloud.

Create ClusterLink Resource

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

Constructor syntax

new ClusterLink(name: string, args?: ClusterLinkArgs, opts?: CustomResourceOptions);
@overload
def ClusterLink(resource_name: str,
                args: Optional[ClusterLinkArgs] = None,
                opts: Optional[ResourceOptions] = None)

@overload
def ClusterLink(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                config: Optional[Mapping[str, str]] = None,
                connection_mode: Optional[str] = None,
                destination_kafka_cluster: Optional[ClusterLinkDestinationKafkaClusterArgs] = None,
                link: Optional[str] = None,
                link_mode: Optional[str] = None,
                local_kafka_cluster: Optional[ClusterLinkLocalKafkaClusterArgs] = None,
                remote_kafka_cluster: Optional[ClusterLinkRemoteKafkaClusterArgs] = None,
                source_kafka_cluster: Optional[ClusterLinkSourceKafkaClusterArgs] = None)
func NewClusterLink(ctx *Context, name string, args *ClusterLinkArgs, opts ...ResourceOption) (*ClusterLink, error)
public ClusterLink(string name, ClusterLinkArgs? args = null, CustomResourceOptions? opts = null)
public ClusterLink(String name, ClusterLinkArgs args)
public ClusterLink(String name, ClusterLinkArgs args, CustomResourceOptions options)
type: confluentcloud:ClusterLink
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args ClusterLinkArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args ClusterLinkArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args ClusterLinkArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args ClusterLinkArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ClusterLinkArgs
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 clusterLinkResource = new ConfluentCloud.ClusterLink("clusterLinkResource", new()
{
    Config = 
    {
        { "string", "string" },
    },
    ConnectionMode = "string",
    DestinationKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkDestinationKafkaClusterArgs
    {
        Id = "string",
        BootstrapEndpoint = "string",
        Credentials = new ConfluentCloud.Inputs.ClusterLinkDestinationKafkaClusterCredentialsArgs
        {
            Key = "string",
            Secret = "string",
        },
        RestEndpoint = "string",
    },
    Link = "string",
    LinkMode = "string",
    LocalKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterArgs
    {
        Id = "string",
        BootstrapEndpoint = "string",
        Credentials = new ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterCredentialsArgs
        {
            Key = "string",
            Secret = "string",
        },
        RestEndpoint = "string",
    },
    RemoteKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterArgs
    {
        Id = "string",
        BootstrapEndpoint = "string",
        Credentials = new ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterCredentialsArgs
        {
            Key = "string",
            Secret = "string",
        },
        RestEndpoint = "string",
    },
    SourceKafkaCluster = new ConfluentCloud.Inputs.ClusterLinkSourceKafkaClusterArgs
    {
        Id = "string",
        BootstrapEndpoint = "string",
        Credentials = new ConfluentCloud.Inputs.ClusterLinkSourceKafkaClusterCredentialsArgs
        {
            Key = "string",
            Secret = "string",
        },
        RestEndpoint = "string",
    },
});
Copy
example, err := confluentcloud.NewClusterLink(ctx, "clusterLinkResource", &confluentcloud.ClusterLinkArgs{
	Config: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	ConnectionMode: pulumi.String("string"),
	DestinationKafkaCluster: &confluentcloud.ClusterLinkDestinationKafkaClusterArgs{
		Id:                pulumi.String("string"),
		BootstrapEndpoint: pulumi.String("string"),
		Credentials: &confluentcloud.ClusterLinkDestinationKafkaClusterCredentialsArgs{
			Key:    pulumi.String("string"),
			Secret: pulumi.String("string"),
		},
		RestEndpoint: pulumi.String("string"),
	},
	Link:     pulumi.String("string"),
	LinkMode: pulumi.String("string"),
	LocalKafkaCluster: &confluentcloud.ClusterLinkLocalKafkaClusterArgs{
		Id:                pulumi.String("string"),
		BootstrapEndpoint: pulumi.String("string"),
		Credentials: &confluentcloud.ClusterLinkLocalKafkaClusterCredentialsArgs{
			Key:    pulumi.String("string"),
			Secret: pulumi.String("string"),
		},
		RestEndpoint: pulumi.String("string"),
	},
	RemoteKafkaCluster: &confluentcloud.ClusterLinkRemoteKafkaClusterArgs{
		Id:                pulumi.String("string"),
		BootstrapEndpoint: pulumi.String("string"),
		Credentials: &confluentcloud.ClusterLinkRemoteKafkaClusterCredentialsArgs{
			Key:    pulumi.String("string"),
			Secret: pulumi.String("string"),
		},
		RestEndpoint: pulumi.String("string"),
	},
	SourceKafkaCluster: &confluentcloud.ClusterLinkSourceKafkaClusterArgs{
		Id:                pulumi.String("string"),
		BootstrapEndpoint: pulumi.String("string"),
		Credentials: &confluentcloud.ClusterLinkSourceKafkaClusterCredentialsArgs{
			Key:    pulumi.String("string"),
			Secret: pulumi.String("string"),
		},
		RestEndpoint: pulumi.String("string"),
	},
})
Copy
var clusterLinkResource = new ClusterLink("clusterLinkResource", ClusterLinkArgs.builder()
    .config(Map.of("string", "string"))
    .connectionMode("string")
    .destinationKafkaCluster(ClusterLinkDestinationKafkaClusterArgs.builder()
        .id("string")
        .bootstrapEndpoint("string")
        .credentials(ClusterLinkDestinationKafkaClusterCredentialsArgs.builder()
            .key("string")
            .secret("string")
            .build())
        .restEndpoint("string")
        .build())
    .link("string")
    .linkMode("string")
    .localKafkaCluster(ClusterLinkLocalKafkaClusterArgs.builder()
        .id("string")
        .bootstrapEndpoint("string")
        .credentials(ClusterLinkLocalKafkaClusterCredentialsArgs.builder()
            .key("string")
            .secret("string")
            .build())
        .restEndpoint("string")
        .build())
    .remoteKafkaCluster(ClusterLinkRemoteKafkaClusterArgs.builder()
        .id("string")
        .bootstrapEndpoint("string")
        .credentials(ClusterLinkRemoteKafkaClusterCredentialsArgs.builder()
            .key("string")
            .secret("string")
            .build())
        .restEndpoint("string")
        .build())
    .sourceKafkaCluster(ClusterLinkSourceKafkaClusterArgs.builder()
        .id("string")
        .bootstrapEndpoint("string")
        .credentials(ClusterLinkSourceKafkaClusterCredentialsArgs.builder()
            .key("string")
            .secret("string")
            .build())
        .restEndpoint("string")
        .build())
    .build());
Copy
cluster_link_resource = confluentcloud.ClusterLink("clusterLinkResource",
    config={
        "string": "string",
    },
    connection_mode="string",
    destination_kafka_cluster={
        "id": "string",
        "bootstrap_endpoint": "string",
        "credentials": {
            "key": "string",
            "secret": "string",
        },
        "rest_endpoint": "string",
    },
    link="string",
    link_mode="string",
    local_kafka_cluster={
        "id": "string",
        "bootstrap_endpoint": "string",
        "credentials": {
            "key": "string",
            "secret": "string",
        },
        "rest_endpoint": "string",
    },
    remote_kafka_cluster={
        "id": "string",
        "bootstrap_endpoint": "string",
        "credentials": {
            "key": "string",
            "secret": "string",
        },
        "rest_endpoint": "string",
    },
    source_kafka_cluster={
        "id": "string",
        "bootstrap_endpoint": "string",
        "credentials": {
            "key": "string",
            "secret": "string",
        },
        "rest_endpoint": "string",
    })
Copy
const clusterLinkResource = new confluentcloud.ClusterLink("clusterLinkResource", {
    config: {
        string: "string",
    },
    connectionMode: "string",
    destinationKafkaCluster: {
        id: "string",
        bootstrapEndpoint: "string",
        credentials: {
            key: "string",
            secret: "string",
        },
        restEndpoint: "string",
    },
    link: "string",
    linkMode: "string",
    localKafkaCluster: {
        id: "string",
        bootstrapEndpoint: "string",
        credentials: {
            key: "string",
            secret: "string",
        },
        restEndpoint: "string",
    },
    remoteKafkaCluster: {
        id: "string",
        bootstrapEndpoint: "string",
        credentials: {
            key: "string",
            secret: "string",
        },
        restEndpoint: "string",
    },
    sourceKafkaCluster: {
        id: "string",
        bootstrapEndpoint: "string",
        credentials: {
            key: "string",
            secret: "string",
        },
        restEndpoint: "string",
    },
});
Copy
type: confluentcloud:ClusterLink
properties:
    config:
        string: string
    connectionMode: string
    destinationKafkaCluster:
        bootstrapEndpoint: string
        credentials:
            key: string
            secret: string
        id: string
        restEndpoint: string
    link: string
    linkMode: string
    localKafkaCluster:
        bootstrapEndpoint: string
        credentials:
            key: string
            secret: string
        id: string
        restEndpoint: string
    remoteKafkaCluster:
        bootstrapEndpoint: string
        credentials:
            key: string
            secret: string
        id: string
        restEndpoint: string
    sourceKafkaCluster:
        bootstrapEndpoint: string
        credentials:
            key: string
            secret: string
        id: string
        restEndpoint: string
Copy

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

Config Dictionary<string, string>
The custom cluster link settings to set:
ConnectionMode Changes to this property will trigger replacement. string
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
DestinationKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkDestinationKafkaCluster
Link Changes to this property will trigger replacement. string
The name of the cluster link, for example, my-cluster-link.
LinkMode Changes to this property will trigger replacement. string
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
LocalKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkLocalKafkaCluster
RemoteKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkRemoteKafkaCluster
SourceKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkSourceKafkaCluster
Config map[string]string
The custom cluster link settings to set:
ConnectionMode Changes to this property will trigger replacement. string
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
DestinationKafkaCluster ClusterLinkDestinationKafkaClusterArgs
Link Changes to this property will trigger replacement. string
The name of the cluster link, for example, my-cluster-link.
LinkMode Changes to this property will trigger replacement. string
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
LocalKafkaCluster ClusterLinkLocalKafkaClusterArgs
RemoteKafkaCluster ClusterLinkRemoteKafkaClusterArgs
SourceKafkaCluster ClusterLinkSourceKafkaClusterArgs
config Map<String,String>
The custom cluster link settings to set:
connectionMode Changes to this property will trigger replacement. String
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destinationKafkaCluster ClusterLinkDestinationKafkaCluster
link Changes to this property will trigger replacement. String
The name of the cluster link, for example, my-cluster-link.
linkMode Changes to this property will trigger replacement. String
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
localKafkaCluster ClusterLinkLocalKafkaCluster
remoteKafkaCluster ClusterLinkRemoteKafkaCluster
sourceKafkaCluster ClusterLinkSourceKafkaCluster
config {[key: string]: string}
The custom cluster link settings to set:
connectionMode Changes to this property will trigger replacement. string
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destinationKafkaCluster ClusterLinkDestinationKafkaCluster
link Changes to this property will trigger replacement. string
The name of the cluster link, for example, my-cluster-link.
linkMode Changes to this property will trigger replacement. string
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
localKafkaCluster ClusterLinkLocalKafkaCluster
remoteKafkaCluster ClusterLinkRemoteKafkaCluster
sourceKafkaCluster ClusterLinkSourceKafkaCluster
config Mapping[str, str]
The custom cluster link settings to set:
connection_mode Changes to this property will trigger replacement. str
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destination_kafka_cluster ClusterLinkDestinationKafkaClusterArgs
link Changes to this property will trigger replacement. str
The name of the cluster link, for example, my-cluster-link.
link_mode Changes to this property will trigger replacement. str
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
local_kafka_cluster ClusterLinkLocalKafkaClusterArgs
remote_kafka_cluster ClusterLinkRemoteKafkaClusterArgs
source_kafka_cluster ClusterLinkSourceKafkaClusterArgs
config Map<String>
The custom cluster link settings to set:
connectionMode Changes to this property will trigger replacement. String
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destinationKafkaCluster Property Map
link Changes to this property will trigger replacement. String
The name of the cluster link, for example, my-cluster-link.
linkMode Changes to this property will trigger replacement. String
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
localKafkaCluster Property Map
remoteKafkaCluster Property Map
sourceKafkaCluster Property Map

Outputs

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

ClusterLinkId string
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
Id string
The provider-assigned unique ID for this managed resource.
ClusterLinkId string
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
Id string
The provider-assigned unique ID for this managed resource.
clusterLinkId String
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
id String
The provider-assigned unique ID for this managed resource.
clusterLinkId string
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
id string
The provider-assigned unique ID for this managed resource.
cluster_link_id str
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
id str
The provider-assigned unique ID for this managed resource.
clusterLinkId String
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing ClusterLink Resource

Get an existing ClusterLink 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?: ClusterLinkState, opts?: CustomResourceOptions): ClusterLink
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        cluster_link_id: Optional[str] = None,
        config: Optional[Mapping[str, str]] = None,
        connection_mode: Optional[str] = None,
        destination_kafka_cluster: Optional[ClusterLinkDestinationKafkaClusterArgs] = None,
        link: Optional[str] = None,
        link_mode: Optional[str] = None,
        local_kafka_cluster: Optional[ClusterLinkLocalKafkaClusterArgs] = None,
        remote_kafka_cluster: Optional[ClusterLinkRemoteKafkaClusterArgs] = None,
        source_kafka_cluster: Optional[ClusterLinkSourceKafkaClusterArgs] = None) -> ClusterLink
func GetClusterLink(ctx *Context, name string, id IDInput, state *ClusterLinkState, opts ...ResourceOption) (*ClusterLink, error)
public static ClusterLink Get(string name, Input<string> id, ClusterLinkState? state, CustomResourceOptions? opts = null)
public static ClusterLink get(String name, Output<String> id, ClusterLinkState state, CustomResourceOptions options)
resources:  _:    type: confluentcloud:ClusterLink    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
ClusterLinkId string
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
Config Dictionary<string, string>
The custom cluster link settings to set:
ConnectionMode Changes to this property will trigger replacement. string
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
DestinationKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkDestinationKafkaCluster
Link Changes to this property will trigger replacement. string
The name of the cluster link, for example, my-cluster-link.
LinkMode Changes to this property will trigger replacement. string
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
LocalKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkLocalKafkaCluster
RemoteKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkRemoteKafkaCluster
SourceKafkaCluster Pulumi.ConfluentCloud.Inputs.ClusterLinkSourceKafkaCluster
ClusterLinkId string
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
Config map[string]string
The custom cluster link settings to set:
ConnectionMode Changes to this property will trigger replacement. string
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
DestinationKafkaCluster ClusterLinkDestinationKafkaClusterArgs
Link Changes to this property will trigger replacement. string
The name of the cluster link, for example, my-cluster-link.
LinkMode Changes to this property will trigger replacement. string
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
LocalKafkaCluster ClusterLinkLocalKafkaClusterArgs
RemoteKafkaCluster ClusterLinkRemoteKafkaClusterArgs
SourceKafkaCluster ClusterLinkSourceKafkaClusterArgs
clusterLinkId String
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
config Map<String,String>
The custom cluster link settings to set:
connectionMode Changes to this property will trigger replacement. String
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destinationKafkaCluster ClusterLinkDestinationKafkaCluster
link Changes to this property will trigger replacement. String
The name of the cluster link, for example, my-cluster-link.
linkMode Changes to this property will trigger replacement. String
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
localKafkaCluster ClusterLinkLocalKafkaCluster
remoteKafkaCluster ClusterLinkRemoteKafkaCluster
sourceKafkaCluster ClusterLinkSourceKafkaCluster
clusterLinkId string
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
config {[key: string]: string}
The custom cluster link settings to set:
connectionMode Changes to this property will trigger replacement. string
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destinationKafkaCluster ClusterLinkDestinationKafkaCluster
link Changes to this property will trigger replacement. string
The name of the cluster link, for example, my-cluster-link.
linkMode Changes to this property will trigger replacement. string
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
localKafkaCluster ClusterLinkLocalKafkaCluster
remoteKafkaCluster ClusterLinkRemoteKafkaCluster
sourceKafkaCluster ClusterLinkSourceKafkaCluster
cluster_link_id str
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
config Mapping[str, str]
The custom cluster link settings to set:
connection_mode Changes to this property will trigger replacement. str
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destination_kafka_cluster ClusterLinkDestinationKafkaClusterArgs
link Changes to this property will trigger replacement. str
The name of the cluster link, for example, my-cluster-link.
link_mode Changes to this property will trigger replacement. str
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
local_kafka_cluster ClusterLinkLocalKafkaClusterArgs
remote_kafka_cluster ClusterLinkRemoteKafkaClusterArgs
source_kafka_cluster ClusterLinkSourceKafkaClusterArgs
clusterLinkId String
(Required String) The actual Cluster Link ID assigned from Confluent Cloud that uniquely represents a link between two Kafka clusters, for example, qz0HDEV-Qz2B5aPFpcWQJQ.
config Map<String>
The custom cluster link settings to set:
connectionMode Changes to this property will trigger replacement. String
The connection mode of the cluster link. The supported values are "INBOUND" and "OUTBOUND". Defaults to "OUTBOUND".
destinationKafkaCluster Property Map
link Changes to this property will trigger replacement. String
The name of the cluster link, for example, my-cluster-link.
linkMode Changes to this property will trigger replacement. String
The mode of the cluster link. The supported values are "DESTINATION", "SOURCE", and "BIDIRECTIONAL". Defaults to "DESTINATION".
localKafkaCluster Property Map
remoteKafkaCluster Property Map
sourceKafkaCluster Property Map

Supporting Types

ClusterLinkDestinationKafkaCluster
, ClusterLinkDestinationKafkaClusterArgs

Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the destination Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the destination Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials Pulumi.ConfluentCloud.Inputs.ClusterLinkDestinationKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the destination Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the destination Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the destination Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials ClusterLinkDestinationKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the destination Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the destination Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the destination Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkDestinationKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the destination Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the destination Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the destination Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkDestinationKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the destination Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
str
The ID of the destination Kafka cluster, for example, lkc-abc123.
bootstrap_endpoint Changes to this property will trigger replacement. str
The bootstrap endpoint of the destination Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkDestinationKafkaClusterCredentials
The Kafka API Credentials.
rest_endpoint Changes to this property will trigger replacement. str
The REST endpoint of the destination Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the destination Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the destination Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials Property Map
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the destination Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).

ClusterLinkDestinationKafkaClusterCredentials
, ClusterLinkDestinationKafkaClusterCredentialsArgs

Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.
key This property is required. string
The Kafka API Key.
secret This property is required. string
The Kafka API Secret.
key This property is required. str
The Kafka API Key.
secret This property is required. str
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.

ClusterLinkLocalKafkaCluster
, ClusterLinkLocalKafkaClusterArgs

Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the local Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the local Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials Pulumi.ConfluentCloud.Inputs.ClusterLinkLocalKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the local Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the local Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the local Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials ClusterLinkLocalKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the local Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the local Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the local Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkLocalKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the local Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the local Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the local Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkLocalKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the local Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
str
The ID of the local Kafka cluster, for example, lkc-abc123.
bootstrap_endpoint Changes to this property will trigger replacement. str
The bootstrap endpoint of the local Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkLocalKafkaClusterCredentials
The Kafka API Credentials.
rest_endpoint Changes to this property will trigger replacement. str
The REST endpoint of the local Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the local Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the local Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials Property Map
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the local Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).

ClusterLinkLocalKafkaClusterCredentials
, ClusterLinkLocalKafkaClusterCredentialsArgs

Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.
key This property is required. string
The Kafka API Key.
secret This property is required. string
The Kafka API Secret.
key This property is required. str
The Kafka API Key.
secret This property is required. str
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.

ClusterLinkRemoteKafkaCluster
, ClusterLinkRemoteKafkaClusterArgs

Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the remote Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the remote Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials Pulumi.ConfluentCloud.Inputs.ClusterLinkRemoteKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the remote Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the remote Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the remote Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials ClusterLinkRemoteKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the remote Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the remote Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the remote Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkRemoteKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the remote Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the remote Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the remote Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkRemoteKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the remote Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
str
The ID of the remote Kafka cluster, for example, lkc-abc123.
bootstrap_endpoint Changes to this property will trigger replacement. str
The bootstrap endpoint of the remote Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkRemoteKafkaClusterCredentials
The Kafka API Credentials.
rest_endpoint Changes to this property will trigger replacement. str
The REST endpoint of the remote Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the remote Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the remote Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials Property Map
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the remote Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).

ClusterLinkRemoteKafkaClusterCredentials
, ClusterLinkRemoteKafkaClusterCredentialsArgs

Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.
key This property is required. string
The Kafka API Key.
secret This property is required. string
The Kafka API Secret.
key This property is required. str
The Kafka API Key.
secret This property is required. str
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.

ClusterLinkSourceKafkaCluster
, ClusterLinkSourceKafkaClusterArgs

Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the source Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the source Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials Pulumi.ConfluentCloud.Inputs.ClusterLinkSourceKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the source Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
Id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the source Kafka cluster, for example, lkc-abc123.
BootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the source Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
Credentials ClusterLinkSourceKafkaClusterCredentials
The Kafka API Credentials.
RestEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the source Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the source Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the source Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkSourceKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the source Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
string
The ID of the source Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. string
The bootstrap endpoint of the source Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkSourceKafkaClusterCredentials
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. string
The REST endpoint of the source Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
str
The ID of the source Kafka cluster, for example, lkc-abc123.
bootstrap_endpoint Changes to this property will trigger replacement. str
The bootstrap endpoint of the source Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials ClusterLinkSourceKafkaClusterCredentials
The Kafka API Credentials.
rest_endpoint Changes to this property will trigger replacement. str
The REST endpoint of the source Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).
id
This property is required.
Changes to this property will trigger replacement.
String
The ID of the source Kafka cluster, for example, lkc-abc123.
bootstrapEndpoint Changes to this property will trigger replacement. String
The bootstrap endpoint of the source Kafka cluster, for example, SASL_SSL://pkc-00000.us-central1.gcp.confluent.cloud:9092 or pkc-00000.us-central1.gcp.confluent.cloud:9092).
credentials Property Map
The Kafka API Credentials.
restEndpoint Changes to this property will trigger replacement. String
The REST endpoint of the source Kafka cluster, for example, https://pkc-00000.us-central1.gcp.confluent.cloud:443).

ClusterLinkSourceKafkaClusterCredentials
, ClusterLinkSourceKafkaClusterCredentialsArgs

Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
Key This property is required. string
The Kafka API Key.
Secret This property is required. string
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.
key This property is required. string
The Kafka API Key.
secret This property is required. string
The Kafka API Secret.
key This property is required. str
The Kafka API Key.
secret This property is required. str
The Kafka API Secret.
key This property is required. String
The Kafka API Key.
secret This property is required. String
The Kafka API Secret.

Import

You can import a Kafka mirror topic by using the cluster link name, cluster link mode, cluster link connection mode,

source (or local for bidirectional cluster links) Kafka cluster ID, and destination (or remote for bidirectional cluster links) Kafka cluster ID, in the format <Cluster link name>/<Cluster link mode>/<Cluster connection mode>/<Source (Local) Kafka cluster ID>/<Destination (Remote) Kafka cluster ID>, for example:

Option #1 when using source-initiated or destination-initiated cluster links

$ export IMPORT_SOURCE_KAFKA_BOOTSTRAP_ENDPOINT="<source_kafka_bootstrap_endpoint>"

$ export IMPORT_SOURCE_KAFKA_API_KEY="<source_kafka_api_key>"

$ export IMPORT_SOURCE_KAFKA_API_SECRET="<source_kafka_api_secret>"

$ export IMPORT_DESTINATION_KAFKA_REST_ENDPOINT="<destination_kafka_rest_endpoint>"

$ export IMPORT_DESTINATION_KAFKA_API_KEY="<destination_kafka_api_key>"

$ export IMPORT_DESTINATION_KAFKA_API_SECRET="<destination_kafka_api_secret>"

$ pulumi import confluentcloud:index/clusterLink:ClusterLink my_cluster_link my-cluster-link/DESTINATION/OUTBOUND/lkc-abc123/lkc-xyz456
Copy

Option #2 when using bidirectional cluster links

$ export IMPORT_LOCAL_KAFKA_BOOTSTRAP_ENDPOINT="<local_kafka_bootstrap_endpoint>"

$ export IMPORT_LOCAL_KAFKA_API_KEY="<local_kafka_api_key>"

$ export IMPORT_LOCAL_KAFKA_API_SECRET="<local_kafka_api_secret>"

$ export IMPORT_REMOTE_KAFKA_REST_ENDPOINT="<remote_kafka_rest_endpoint>"

$ export IMPORT_REMOTE_KAFKA_API_KEY="<remote_kafka_api_key>"

$ export IMPORT_REMOTE_KAFKA_API_SECRET="<remote_kafka_api_secret>"

$ pulumi import confluentcloud:index/clusterLink:ClusterLink my_cluster_link my-cluster-link/BIDIRECTIONAL/OUTBOUND/lkc-abc123/lkc-xyz456
Copy

!> Warning: Do not forget to delete terminal command history afterwards for security purposes.

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

Package Details

Repository
Confluent Cloud pulumi/pulumi-confluentcloud
License
Apache-2.0
Notes
This Pulumi package is based on the confluent Terraform Provider.