Yash Mayya created KAFKA-15470:
----------------------------------

             Summary: Allow creating connectors in a stopped state
                 Key: KAFKA-15470
                 URL: https://issues.apache.org/jira/browse/KAFKA-15470
             Project: Kafka
          Issue Type: New Feature
          Components: connect, KafkaConnect
            Reporter: Yash Mayya
            Assignee: Yash Mayya
             Fix For: 3.7.0


[KIP-875: First-class offsets support in Kafka 
Connect|https://cwiki.apache.org/confluence/display/KAFKA/KIP-875%3A+First-class+offsets+support+in+Kafka+Connect]
 introduced a new {{STOPPED}} state for connectors along with some REST API 
endpoints to retrieve and modify offsets for connectors. Currently, only 
connectors that already exist can be stopped and any newly created connector 
will always be in the {{RUNNING}} state initially. Allowing the creation of 
connectors in a {{STOPPED}} state will facilitate multiple new use cases. One 
interesting use case would be to migrate connectors from one Kafka Connect 
cluster to another. Individual connector migration would be useful in a number 
of scenarios such as breaking a large cluster into multiple smaller clusters 
(or vice versa), moving a connector from a cluster running in one data center 
to another etc. A connector migration could be achieved by using the following 
sequence of steps :-
 # Stop the running connector on the original Kafka Connect cluster
 # Retrieve the offsets for the connector via the {{GET 
/connectors/\{connector}/offsets}}  endpoint
 # Create the connector in a stopped state using the same configuration on the 
new Kafka Connect cluster
 # Alter the offsets for the connector on the new cluster via the {{PATCH 
/connectors/\{connector}/offsets}}  endpoint (using the offsets obtained from 
the original cluster)
 # Resume the connector on the new cluster and delete it on the original cluster

Another use case for creating connectors in a stopped state could be deploying 
connectors as a part of a larger data pipeline before the source / sink data 
system has been created or is ready for data transfer.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to