Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

12.3. Configure the MongoDB Back End and Create the Telemetry Database

The Telemetry service uses MongoDB as its back-end data repository. Before starting the mongod service, optionally configure mongod to run with the --smallfiles parameter. This parameter configures MongoDB to use a smaller default data file and journal size. MongoDB will limit the size of each data file, creating and writing to a new one when it reaches 512MB.

Procedure 12.1. Configuring the MongoDB Back End and Creating the Telemetry Database

  1. Optionally configure mongod to run with the --smallfiles parameter. Open the /etc/sysconfig/mongod file in a text editor, and add the following line:
    OPTIONS="--smallfiles /etc/mongodb.conf"
    MongoDB uses the parameters specified in the OPTIONS section when mongod launches.
  2. Start the MongoDB service:
    # systemctl start mongod.service
  3. If the database must be accessed from a server other than its local host, open the /etc/mongod.conf file in a text editor, and update the bind_ip with the IP address of your MongoDB server:
    bind_ip = MONGOHOST
  4. Open the /etc/sysconfig/iptables file in a text editor and add an INPUT rule allowing TCP traffic on port 27017. The new rule must appear before any INPUT rules that REJECT traffic:
    -A INPUT -p tcp -m multiport --dports 27017 -j ACCEPT
  5. Restart the iptables service to ensure that the change takes effect:
    # systemctl restart iptables.service
  6. Create a database for the Telemetry service:
    # mongo --host MONGOHOST --eval '
       db = db.getSiblingDB("ceilometer");
       db.addUser({user: "ceilometer",
    	   pwd: "MONGOPASS",
    	   roles: [ "readWrite", "dbAdmin" ]})'
    This also creates a database user named ceilometer. Replace MONGOHOST with the IP address or host name of the server hosting the MongoDB database. Replace MONGOPASS with a password for the ceilometer user.