1

I'm running a MongoDB Debezium Kafka Connector on AWS MSK, and the connector goes to the failed status with this error on the MongoDB server Error receiving request from client: SSLHandshakeFailed: The server is configured to only allow SSL connections and com.mongodb.MongoSocketReadException: Prematurely reached end of stream in the debezium logs.

Below is my debezium configuration, and I have enabled mongodb.ssl.enabled=true. Does anybody know if I'm missing something from the configuration?

I also enabled the mongodb.ssl.invalid.hostname.allowed but that didn't fix the issue

connector.class=io.debezium.connector.mongodb.MongoDbConnector
mongodb.ssl.enabled=true
collection.include.list=***
mongodb.password=***
tasks.max=2
mongodb.user=***
mongodb.ssl.invalid.hostname.allowed=true
mongodb.hosts=***
database.include.list=***

Debezium stack trace:

at com.mongodb.connection.BaseCluster.getDescription(BaseCluster.java:160) at com.mongodb.Mongo.getClusterDescription(Mongo.java:378) at com.mongodb.Mongo.getReplicaSetStatus(Mongo.java:414) at io.debezium.connector.mongodb.ConnectionContext.clientForPrimary(ConnectionContext.java:335) at io.debezium.connector.mongodb.ConnectionContext.lambda$primaryClientFor$1(ConnectionContext.java:179) at io.debezium.connector.mongodb.ConnectionContext.lambda$primaryClientFor$2(ConnectionContext.java:188) at io.debezium.connector.mongodb.ConnectionContext$MongoPrimary.execute(ConnectionContext.java:258) at io.debezium.connector.mongodb.ConnectionContext$MongoPrimary.databaseNames(ConnectionContext.java:296) at io.debezium.connector.mongodb.MongoDbConnectorConfig$DatabaseRecommender.lambda$validValues$1(MongoDbConnectorConfig.java:239) at java.base/java.util.HashMap$Values.forEach(HashMap.java:977) at io.debezium.connector.mongodb.ReplicaSets.onEachReplicaSet(ReplicaSets.java:102) at io.debezium.connector.mongodb.MongoDbConnectorConfig$DatabaseRecommender.validValues(MongoDbConnectorConfig.java:236) at io.debezium.config.Field.validate(Field.java:567) at io.debezium.config.Field.lambda$validate$7(Field.java:583) at java.base/java.util.Arrays$ArrayList.forEach(Arrays.java:4390) at io.debezium.config.Field.validate(Field.java:580) at io.debezium.config.Configuration.lambda$validate$25(Configuration.java:1653) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:177) at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133) at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:484) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474) at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:497) at io.debezium.config.Field$Set.forEachTopLevelField(Field.java:127) at io.debezium.config.Configuration.validate(Configuration.java:1652) at io.debezium.connector.mongodb.MongoDbConnector.validate(MongoDbConnector.java:194) at org.apache.kafka.connect.runtime.AbstractHerder.validateConnectorConfig(AbstractHerder.java:375) at org.apache.kafka.connect.runtime.AbstractHerder.lambda$validateConnectorConfig$1(AbstractHerder.java:326) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:829) [2022-04-14 03:41:56,279] INFO Closing all connections to (io.debezium.connector.mongodb.ConnectionContext:75) [2022-04-14 03:41:56,280] ERROR Uncaught exception in REST call to /connectors (org.apache.kafka.connect.runtime.rest.errors.ConnectExceptionMapper:61) org.apache.kafka.connect.errors.ConnectException: Unable to connect to primary node of 'atlas-:27017' after 2 failed attempts

taraf
  • 777
  • 2
  • 10
  • 28
  • Can you show more of the stacktrace please? `mongodb.ssl` prefix is for TLS on the Mongo server. I think your error is related to the Kafka TLS connection, which is defined in the **worker**, not the connector properties. – OneCricketeer Apr 14 '22 at 23:35
  • I don't have Mongo experience to really know the answer, but to address network issues, have you been able to connect other Mongo clients to your atlas endpoint? – OneCricketeer Apr 18 '22 at 15:03
  • Yes OneCricketeer – taraf Apr 18 '22 at 15:39

0 Answers0