Skip to main content

mirror_topics

Creates, updates, deletes, gets or lists a mirror_topics resource.

Overview

Namemirror_topics
TypeResource
Idconfluent.kafka.mirror_topics

Fields

The following fields are returned by SELECT queries:

Metadata of the mirror topic

NameDatatypeDescription
link_namestring
mirror_topic_namestring
source_topic_namestring
kindstring
metadataobject
mirror_lagsarray
mirror_state_transition_errorsarray
mirror_statusstring (ACTIVE, FAILED, LINK_FAILED, LINK_PAUSED, PAUSED, PENDING_STOPPED, SOURCE_UNAVAILABLE, STOPPED, PENDING_MIRROR, PENDING_SYNCHRONIZE, PENDING_SETUP_FOR_RESTORE, PENDING_RESTORE)
mirror_topic_errorstring
num_partitionsinteger
state_time_msinteger (int64)

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
read_kafka_mirror_topicselectcluster_id, link_name, mirror_topic_name, kafka_endpoint_id, region, cloud_providerinclude_state_transition_errors
list_kafka_mirror_topics_under_linkselectcluster_id, link_name, kafka_endpoint_id, region, cloud_providermirror_statusList all mirror topics under the link
list_kafka_mirror_topicsselectcluster_id, kafka_endpoint_id, region, cloud_providermirror_statusList all mirror topics in the cluster
create_kafka_mirror_topicinsertcluster_id, link_name, kafka_endpoint_id, region, cloud_provider, source_topic_nameCreate a topic in the destination cluster mirroring a topic in
the source cluster
update_kafka_mirror_topics_promoteexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providervalidate_only
update_kafka_mirror_topics_failoverexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providervalidate_only
update_kafka_mirror_topics_pauseexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providervalidate_only
update_kafka_mirror_topics_resumeexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providervalidate_only
update_kafka_mirror_topics_reverse_and_start_mirrorexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providervalidate_only
update_kafka_mirror_topics_reverse_and_pause_mirrorexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providervalidate_only
update_kafka_mirror_topics_truncate_and_restore_mirrorexeccluster_id, link_name, kafka_endpoint_id, region, cloud_providerinclude_partition_level_truncation_data, validate_only

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
cloud_providerstringCloud provider, lowercase: aws, gcp, or azure (from the cluster spec.cloud). (default: cloud)
cluster_idstringThe Kafka cluster ID. (example: cluster-1)
kafka_endpoint_idstringPer-cluster Kafka REST endpoint ID (the pkc-* host prefix from the Confluent UI Cluster -> Overview -> REST endpoint, or extract from confluent.managed_kafka_clusters.clusters spec.http_endpoint). (default: pkc-00000)
mirror_topic_namestringCluster Linking mirror topic name (example: topic-1)
regionstringCloud region the cluster runs in, e.g. ap-southeast-2 (from the cluster spec.region). (default: region)
include_partition_level_truncation_databooleanWhether to include partition level truncation information when truncating and restoring a topic in the response. Default: false (example: false)
include_state_transition_errorsbooleanWhether to include mirror state transition errors in the response. Default: false (example: false)
mirror_statusstringThe status of the mirror topic. If not specified, all mirror topics will be returned. (example: ACTIVE)
validate_onlybooleanTo validate the action can be performed successfully or not. Default: false (example: false)

SELECT examples

SELECT
link_name,
mirror_topic_name,
source_topic_name,
kind,
metadata,
mirror_lags,
mirror_state_transition_errors,
mirror_status,
mirror_topic_error,
num_partitions,
state_time_ms
FROM confluent.kafka.mirror_topics
WHERE cluster_id = '{{ cluster_id }}' -- required
AND link_name = '{{ link_name }}' -- required
AND mirror_topic_name = '{{ mirror_topic_name }}' -- required
AND kafka_endpoint_id = '{{ kafka_endpoint_id }}' -- required
AND region = '{{ region }}' -- required
AND cloud_provider = '{{ cloud_provider }}' -- required
AND include_state_transition_errors = '{{ include_state_transition_errors }}'
;

INSERT examples

Create a topic in the destination cluster mirroring a topic in
the source cluster

INSERT INTO confluent.kafka.mirror_topics (
source_topic_name,
mirror_topic_name,
replication_factor,
configs,
cluster_id,
link_name,
kafka_endpoint_id,
region,
cloud_provider
)
SELECT
'{{ source_topic_name }}' /* required */,
'{{ mirror_topic_name }}',
{{ replication_factor }},
'{{ configs }}',
'{{ cluster_id }}',
'{{ link_name }}',
'{{ kafka_endpoint_id }}',
'{{ region }}',
'{{ cloud_provider }}'
;

Lifecycle Methods

EXEC confluent.kafka.mirror_topics.update_kafka_mirror_topics_promote
@cluster_id='{{ cluster_id }}' --required,
@link_name='{{ link_name }}' --required,
@kafka_endpoint_id='{{ kafka_endpoint_id }}' --required,
@region='{{ region }}' --required,
@cloud_provider='{{ cloud_provider }}' --required,
@validate_only={{ validate_only }}
@@json=
'{
"mirror_topic_names": "{{ mirror_topic_names }}",
"mirror_topic_name_pattern": "{{ mirror_topic_name_pattern }}"
}'
;