MongoDB source Connector, version 2.6.1.Final
MongoDB
If you already have a publicly accessible deployment of MongoDB, you can skip ahead and Configure and install a connector, using the Axual Self-Service UI.
Use the configuration instructions below.
If you don’t have one available, the following section instructs you to deploy a publicly available instance of MongoDB.
Deploying a MongoDB instance
-
Deploy a free shared MongoDB cloud cluster.
During the "security quickstart" step:-
You will create a set of credentials used to authenticate against the cluster . Remember these credentials.
-
You will authorize IP addresses to access the cluster. It’s simplest if you authorize
0.0.0.0/0
.
-
-
Go to "Database". You will see your cluster. There’s 4 buttons after the cluster name, click the
…
(three dots) and then click "Load Sample dataset". -
Follow MongoDB instructions and import the dataset.
Wait for the import operation to complete -
Go to Database → Click on the name of your deployment (e.g. "Cluster0"), and click on the primary node.
Save the cluster name, i.e.
ab-cdef1gh-shard-00-01.i2j3klm.mongodb.net
. You will use this later as themongodb.hosts
connector-configuration value. -
[Optional] If you haven’t done it during the quickstart, you can Go to
Network Access
and authorize the0.0.0.0/0
CIDR range.
Configuring a new source Connector
-
Follow the Creating streams documentation in order to create one stream and deploy it onto an environment.
The name of the stream will bemongo_nickname.sample_mflix.comments
.
The key/value types will beString/String
.The stream name follows the following naming convention:
<mongo_nickname>.<db_name>.<collection_name>
. One such stream is needed for every table we’ll be watching. -
Follow the Configure and install a connector documentation to set up a new Connector-Application.
Let’s call itmy_comments_app
.
The plugin name isio.debezium.connector.mongodb.MongoDbConnector
.
If a plugin isn’t available, ask a platform operator to install plugins.For advanced configuration, see the {hyperlink-official-source-connector-documentation}.
-
Provide the following minimal configuration in order to connect to the previously configured MongoDB instance.
mongodb.hosts
The hostname of the primary mongodb node, which you saved a few minutes agoExample value:
ac-abcd1ef-shard-00-02.abcdefg.mongodb.net
mongodb.ssl.enabled
true
mongodb.user
The user you created, NOT your account nameExample value:
username
mongodb.password
Password for the created userExample value:
password1234
mongodb.name
mongo_nickname
database.include.list
sample_mflix
collection.include.list
sample_mflix.comments
We need to supply additional (custom) properties, with keys which are not automatically available in the self-service UI. We disable automatic topic creation. The first property should be enough. The fact that the following 2 properties are required is a bug within the connect-plugin itself.
topic.creation.enable
false
topic.creation.default.partitions
1
topic.creation.default.replication.factor
3
-
Authorize the
my_comments_app
source Connector-Application to produce to themongo_nickname.sample_mflix.comments
stream. -
You can now start the source Connector-Application.
-
You can now check the
mongo_nickname.sample_mflix.comments
stream to see the events published by the Connector.
Cleanup
Once you are done, stop the Connector-Application and cleanup the unused axual resources.
In case you deployed your mongo-cluster via MongoDB Cloud, don’t forget to terminate your cluster:
-
Click the cluster
-
Click the
…
three dots on the right side of the screen -
Click Terminate
Follow mongodb’s instructions to finalize the termination process.