Zoomdata Version

Installing Zoomdata Using An Existing MongoDB Instance

OVERVIEW

Zoomdata uses MongoDB to store metadata and additional visualization information as well as Scheduler information (a component within the Server used to run jobs that will refresh Zoomdata’s connection to the data source in asynchronous mode). So before the Zoomdata Server can be installed, you first need to install MongoDB. However, if your operating environment already has MongoDB installed, Zoomdata is able to connect to it and you can avoid installing another unique MongoDB instance.

You will need to complete the instructions in this article before installing the Zoomdata Server. In order to configure Zoomdata to connect to an existing, external instance of MongoDB, first determine whether your MongoDB instance has authentication enabled. If authentication is enabled, then you will need to configure MongoDB to allow access to the Zoomdata user so that information can be stored/retrieved when needed. If the Zoomdata administrator does not have authorization to access the organization’s MongoDB instance, then coordination with the appropriate IT administrator is needed.

The instructions below walk you through the necessary modifications needed in MongoDB to allow for the necessary connection with Zoomdata. You also need to create two specific Zoomdata files:

The zoomdata.properties file enables the Zoomdata Server to be able to locate and connect to the external MongoDB instance. Specifically, the information stored in this file enables Zoomdata to search for the external MongoDB instance, authenticate with it, and allow the Zoomdata user to access and store information when needed for charts and dashboards.

INSTRUCTIONS TO ENABLE ZOOMDATA TO CONNECT TO AN EXISTING MONGODB INSTANCE

The first step is to determine whether your existing MongoDB instance has authentication enabled. If this is the case, you will need to setup the MongoDB instance to allow for the Zoomdata user to access it. Step 1 below provides the command lines to make this change. If your MongoDB instance does not require authentication, then you can proceed to Step 2.

  1. If authentication is enabled in MongoDB, run the following command lines in the MongoDB shell:
db.createRole({role: "zoomdata-eval", privileges: [{ resource:
{anyResource: true}
, actions: ["anyAction"] }] , roles: []});

Next, run the following command lines that will create the Zoomdata user with the appropriate permissions to access MongoDB:

You have to create a user for each database: Zoomdata and Scheduler.
db.createUser({user:' YourUserName ', pwd:' YourPassword ',roles:[
{role: 'zoomdata-eval', db: 'admin'}
,
{role: 'readWrite', db: ' YourDataBase '}
,
{role: 'dbAdmin', db: ' YourDataBase '}
]});
  1. On the Zoomdata server, create the /etc/zoomdata/zoomdata.properties file:
vi /etc/zoomdata/zoomdata.properties
  1. Add the following lines to the /etc/zoomdata/zoomdata.properties file:
zoomdata.db.name= replaceWithYourDataBase
zoomdata.db.username= replaceWithYourUserName
zoomdata.db.password= replaceWithYourPassword
zoomdata.db.host= replaceWithYourMongoDBhost : replaceWithYourMongoDBport
  1. Save and exit the file.

Connecting Zoomdata Scheduler with Your MongoDB Instance

  1. On the Zoomdata server, create the /etc/zoomdata/scheduler.properties file:
vi /etc/zoomdata/scheduler.properties
  1. Add the following lines to the file:
scheduler.db.host= replaceWithYourMongoDBhost:replaceWithYourMongoDBport
scheduler.db.name= replaceWithYourDataBase
scheduler.db.username= replaceWithYourUserName
scheduler.db.password= replaceWithYourPassword
  1. Save and exit the file.

Once you have successfully completed these steps, you can continue with the installation of Zoomdata as instructed in the following articles. You can skip the MongoDB installation steps in these articles: