- Install Ops Manager >
- Install the Ops Manager Application Database and Backup Database
Install the Ops Manager Application Database and Backup Database¶
Overview¶
Before you install Ops Manager you must deploy the supporting databases first. These are called backing databases. Ops Manager cannot deploy or manage these databases. These databases include the Ops Manager Application Database and the backup database. You must deploy an application database. It holds Ops Manager operational data. You may deploy a backup database if you want to use the Ops Manager backup feature. This database stores oplog data, temporary sync data, and, depending on your configuration, your snapshots.
These databases run on dedicated MongoDB replica sets. If you use multiple backup databases, you must configure one replica set for each backup database. The replica set for each database must be dedicated to that database only and must store no other data.
The backing databases must run on independent replica sets on independent storage volumes. Running regular backups, a backup database could fill a volume. If the application database cannot write to a volume, Ops Manager stops. Proper storage setup reduces the risk of Ops Manager failures.
Note
Ops Manager cannot deploy or manage the Ops Manager backing databases.
Considerations¶
Replica Set Topology¶
Each backing database replica set should include three data-bearing members for high availability. If you lack storage capacity for three data-bearing members, the third member of a backing database may be an arbiter.
For the Ops Manager application database, you may run one member of the replica set on the same host as Ops Manager.
Backing Databases with fewer than three data-bearing members
When writing to its backing databases, Ops Manager uses the
Replica Acknowledged (w:2
) write concern. This write concern reports a write as
successful only after the primary and one secondary acknowledge that
write. This means that if a backing database loses one of the two data-
bearing members, MongoDB stops write operations.
Prerequisites¶
Replica Set Configuration¶
The replica sets that host the Ops Manager backing databases must:
- Use Dedicated Databases
- The replica sets must store data to support Ops Manager metadata only. They must store no other data.
- Use a Compatible MongoDB Version
You may run backing databases on any of the following MongoDB versions.
Ops Manager Compatible MongoDB Versions 2.0.X - 2.6.6 or later
- 3.0.6 or later
- 3.2.0 or later
- 3.4.0 or later
3.4.X - 3.0.8 or later
- 3.2.0 or later
- 3.4.0 or later
For more information on MongoDB version numbers, see MongoDB Versioning in the MongoDB Manual.
Important
Only the MongoDB Ops Manager backing databases must meet this requirement. The MongoDB deployments that Ops Manager manages do not. For the minimum versions required for managed MongoDB deployments, see MongoDB Compatibility Matrix.
- Use the WiredTiger Storage Engine for the Application Database
- Use WiredTiger for the Ops Manager application database.
- Use the Appropriate Storage Engine for the Backup Database
- For backup database configuration options, see selecting a Storage Engine for Backup.
- Enable JavaScript for the Databases through the Configuration File
- Set the MongoDB
security.javascriptEnabled
option totrue
, which is the default. The Ops Manager Application uses the $where query and requires this setting be enabled on the Ops Manager application database. - Use Queries that Do Not Require Indexes
- Do not run the backing databases with the MongoDB
--notablescan
parameter set. When set, this parameter specifies that all queries must use indexes.
Replica Set Security¶
- Secure the Connection to the Backing Databases
- Ensure that connections from Ops Manager to your backing databases are secure. Configure these databases to accept connections from Ops Manager that only use SSL.
- Configure an Authentication Mechanism for the Backing Databases
- Limit access to your backing databases to specific MongoDB users using an authentication mechanism. To configure your backing databases to use authentication, see Configure Ops Manager to Connect to Backing Databases with Access Control.
- Configure the Ops Manager User that Accesses the Backing Databases with Only Needed Roles
- Set these users to have the
readWriteAnyDatabase
anddbAdminAnyDatabase
roles. If a backing database is a sharded cluster, addclusterAdmin
, otherwise addclusterMonitor
.
Host Configuration¶
The hosts that run the replica sets must meet the following requirements for:
- Hardware
- The hosts must meet Ops Manager Application Database Hardware Requirements or Backup Database Hardware Requirements depending on which database the host runs. If a host serves other Ops Manager components in addition to the database, you must sum the hardware requirements for each component to determine the requirements for the host.
- System Configuration
- The hosts must be configured according to the requirements given in the MongoDB Production Notes except where explicitly contradicted in this tutorial. The Production Notes include information on ulimits, NUMA, and other configuration options.
- Networking
- Network security must allow the needed ports described in Firewall Configuration. The appropriate inbound and outbound firewall rules for each host must allow access to the required ports.
- RHEL and CentOS 6 hosts only
RHEL and CentOS 6 limit the maximum number of user processes to
1024
. This overrides the general user process limit (ulimit -u
) setting.If a
/etc/security/limits.d/99-mongodb-nproc.conf
user process configuration file does not exist, create it. In this file, addsoft
andhard
nproc
(number of processes) entries with values that are larger than the RHEL1024
user process limit. Use the contents of the/etc/security/limits.d/90-nproc.conf
file as a template.
Deploy Backing Databases¶
To deploy MongoDB replica sets to host the Ops Manager backing databases:
Provision hosts.¶
Your hosts must meet the Host Configuration requirements.
Important
Make sure you configure the MongoDB deployment for your backing databases according to the MongoDB Production Notes. If you do not, this MongoDB deployment may fail.
Install MongoDB on each host.¶
Follow the Install MongoDB procedure in the MongoDB manual. If you choose to install MongoDB Enterprise for the backing database, you must install the MongoDB Enterprise dependencies, as described in those same install procedures.
Deploy one Replica Set for each backing database¶
Next Steps¶
- When you install Ops Manager, you must set the
mongo.mongoUri
setting to connect to the replica set you created for the application database in this tutorial. - If you enable backup for your Ops Manager deployment, you must configure the oplog store to use the replica set that you created for the backup database in this tutorial. If you also choose to use a blockstore or S3 snapshot store to store your snapshots, you must deploy one Replica Set for each blockstore or S3 blockstore metadata database.