Deploying MongoDB as a replica set
The following topics are provided:
Purpose of MongoDB
MongoDB is included with and used by MyIT and BMC Remedy with Smart IT (Smart IT). MongoDB is a NoSQL database intended for social data.
The installer for MyIT and Smart IT can install MongoDB only on the same server as it installs MyIT and Smart IT. While that configuration is suitable for development and testing, it does not provide the high availability and scalability that you need for your production environments.
- High-performance database: Doesn't use joins or embedding, which make reading and writing data fast.
- Scalable: Scalable through automatic sharding, which means automatic partitioning of data across partitions.
- High availability: MongoDB can be used in high availability environments through replicated servers with automatic fail-over.
Purpose of a replica set
MongoDB can be used in high availability environments through replicated servers with automatic fail-over.
- Redundancy: Replication provides redundancy and increases data availability.
- Recovery: Replication also allows you to recover from hardware failure and service interruptions. With additional copies of the data, you can dedicate one to disaster recovery, reporting, or backup.
- Read capacity: You can use replication to increase read capacity. Clients have the ability to send read and write operations to different servers.
- Availability: To increase the locality and availability of data for a distributed environment, you can maintain replica servers in different data centers.
BMC recommends that you deploy a minimum of 3 node (always have odd number of servers) MongoDB replica-set – one primary and two secondary servers.
The following diagram illustrates the deployment model for MongoDB.
If your deployment includes multiple data centers for redundancy, your single replica set spans multiple data centers. For example, you might have a replica set with 5 nodes spanning 3 data centers: two members to Data Center 1, two members to Data Center 2, and one member to Data Center 3. If any data center goes down, the replica set remains writable, as the remaining members can hold an election.
Types of servers
The following table summarizes the process of deploying MongoDB securely in a production environment:
|1||Review the supported versions|
MongoDB supported version
|You must install MongoDB on the primary and secondary servers.|
|3||Configure MongoDB as a replica set||You must perform these steps only on the primary server|
|4||Apply security settings|
You must perform these settings only for bundled Mongo DB. For replicated DB security settings are taken care of during the installation of Mongo DB.
BMC recommends that you apply security settings using the authentication method.
At this stage you must store the MongoDB password in encrypted format in the configuration file.
BMC recommends that you use Full Text Search which is available by default.
Knowledge article: MongoDB Support for Smart IT & MyIT FAQ
- MongoDB 3.2 replication deployment: http://docs.mongodb.org/manual/tutorial/deploy-replica-set/
- MongoDB 3.2 replica set distributed architecture: https://docs.mongodb.com/manual/core/replica-set-architecture-geographically-distributed/
- MongoDB 2.6 replication deployment: http://docs.mongodb.org/v2.6/tutorial/deploy-replica-set/