DataStax Apache Kafka Connector

Deploy the DataStax Apache Kafka™ Connector to stream records from an Apache Kafka topic to your Astra DB database.

The DataStax Apache Kafka Connector download package includes a sample JSON properties file (dse-sink-distributed.json.sample). Use the sample file as a reference when configuring your deployment. The dse-sink-distributed.json.sample file is located in the conf directory of the DataStax Apache Kafka Connector distribution package.

Prerequisites

  • Download and install the DataStax Apache Kafka Connector.

  • Configure the distributed worker configuration file connect-distributed.properties to fit your needs. Use this example from DataStax as a starting point. Specify the converter for the key.converter and value.converter properties that matches the form of your Kafka data. See Configuring converters in the Confluent documentation for more information on these properties.

Procedure

  1. From the directory where you installed Apache Kafka, start the distributed worker:

    bin/connect-distributed.sh config/connect-distributed.properties

    The worker startup process outputs a large number of informational messages. The following message displays after the process completes: [2019-10-13 19:49:25,385] INFO Finished starting connectors and tasks (org.apache.kafka.connect.runtime.distributed.DistributedHerder:852)

  2. Configure the JSON configuration file (such as dse-sink.json) to use the Astra DB Secure Connect Bundle (SCB):

    { "name": "dse-sink",     "config":
      { "connector.class": "com.datastax.kafkaconnector.DseSinkConnector",
        "cloud.secureConnectBundle": "/path/to/secure-connect-database-name.zip",
        "auth.username": "clientId",
        "auth.password": "clientSecret" ...
      }
    }

    Define the following configuration settings:

    • name: Unique name for the connector. Default: dse-sink.

    • connector.class: DataStax connector Java class provided in the kafka-connect-dse-N.N.N.jar. Default: com.datastax.kafkaconnector.DseSinkConnector.

    • cloud.secureConnectBundle: The full path to the SCB for your Astra DB database (secure-connect-database_name.zip).

      If this option is specified, you must also include the auth.username and auth.password for the database user.

    • auth.username: Astra DB database username.

      When authorization is enabled, the DataStax connector login role must have a minimum of modify privileges on tables receiving data from the DataStax Apache Kafka Connector.

    • auth.password: Astra DB database password for the specified username.

  3. Register the connector configuration with the distributed worker:

    curl -X POST -H "Content-Type: application/json" -d @dse-sink.json "http://IP/:PORT/connectors"

    ip and port are the IP address and port number of the Kafka worker. Use the same port as the rest.port parameter set in connect-distributed.properties. The default port is 8083.

You configured the dse-sink.json or dse-sink.properties file when installing the DataStax Apache Kafka Connector.

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com