Ansible role to configure MongoDB
Go to file
Guillaume Dedrie 8769e8a411 Add possibility for User to install from Official Debian or Ubuntu Repo.
Support new variable and due to difference between Debian/Ubuntu repo and MongoDB, daemon and file convention naming are differents.
2015-01-05 14:42:40 +01:00
defaults Add possibility for User to install from Official Debian or Ubuntu Repo. 2015-01-05 14:42:40 +01:00
handlers Add possibility for User to install from Official Debian or Ubuntu Repo. 2015-01-05 14:42:40 +01:00
meta Refactoring. Support MMS 2014-12-19 17:39:09 +03:00
tasks Add possibility for User to install from Official Debian or Ubuntu Repo. 2015-01-05 14:42:40 +01:00
templates Refactoring. Support MMS 2014-12-19 17:39:09 +03:00
.bumpversion.cfg Bump version: 2.1.0 → 2.1.1 2014-12-26 18:36:53 +03:00
.travis.yml Try to pass Travis test 2014-09-02 23:19:40 +01:00
CONTRIBUTORS Sort options, update contributors. 2014-09-02 23:14:06 +01:00
LICENSE Initial commit 2014-06-04 18:15:52 +04:00
Makefile update badges 2014-10-23 00:59:31 +04:00
README.md Add possibility for User to install from Official Debian or Ubuntu Repo. 2015-01-05 14:42:40 +01:00
test.yml Setup travis. 2014-06-04 19:09:28 +04:00

README.md

Stouts.mongo

Build Status Galaxy

Ansible role which manage MongoDB

  • Install and configure the MongoDB;
  • Provide hanlers for restart and reload;
  • Setup MMS authomation agent;

Variables


mongodb_enabled: yes
mongodb_from_mongodb_repo: yes # If yes, install using MongoDB repo, else use system default repo

mongodb_additional_packages:
  - python-selinux
  - python-pymongo

mongodb_user: mongodb
mongodb_daemon_name: "{{ 'mongod' if (mongodb_from_mongodb_repo | bool) else 'mongodb' }}"

mongodb_conf_auth: no                             # Run with security
mongodb_conf_bind_ip: 127.0.0.1                   # Comma separated list of ip addresses to listen on
mongodb_conf_cpu: yes                             # Periodically show cpu and iowait utilization
mongodb_conf_dbpath: /data/db                     # Directory for datafiles
mongodb_conf_fork: no                             # Fork server process
mongodb_conf_httpinterface: no                    # Enable http interface
mongodb_conf_ipv6: no                             # Enable IPv6 support (disabled by default)
mongodb_conf_journal: no                          # Enable journaling
mongodb_conf_logappend: yes                       # Append to logpath instead of over-writing
mongodb_conf_logpath: /var/log/mongodb/{{ mongodb_daemon_name }}.log # Log file to send write to instead of stdout
mongodb_conf_maxConns: 1000000                    # Max number of simultaneous connections
mongodb_conf_noprealloc: no                       # Disable data file preallocation
mongodb_conf_noscripting: no                      # Disable scripting engine
mongodb_conf_notablescan: no                      # Do not allow table scans
mongodb_conf_port: 27017                          # Specify port number
mongodb_conf_quota: no                            # Limits each database to a certain number of files
mongodb_conf_quotaFiles: 8                        # Number of quota files
mongodb_conf_syslog: no                           # Log to system's syslog facility instead of file

# Replica set options:
mongodb_conf_replSet:                             # Enable replication <setname>[/<optionalseedhostlist>]
mongodb_conf_replIndexPrefetch: all               # specify index prefetching behavior (if secondary) [none|_id_only|all]

mongodb_shell: {}                                 # Define mongo shell commands to run
                                                  # Syntax: mongodb_shell:
                                                  #          dbname:
                                                  #           - db.setProfilingLevel(1, 50)


# MMS Agent
mongodb_mms_agent_pkg: https://mms.mongodb.com/download/agent/automation/mongodb-mms-automation-agent-manager_1.4.2.783-1_amd64.deb
mongodb_mms_group_id: ""
mongodb_mms_api_key: ""
mongodb_mms_base_url: https://mms.mongodb.com

# Log rotation
mongodb_logrotate: yes                             # Rotate mongodb logs.
mongodb_logrotate_options:
  - compress
  - copytruncate
  - daily
  - dateext
  - rotate 7
  - size 10M

Usage

Add Stouts.mongodb to your roles and set vars in your playbook file.

Example:


- hosts: all

  roles:
  - Stouts.mongodb

  vars:
    mongodb_conf_port: 27400

License

Licensed under the MIT License. See the LICENSE file for details.

Feedback, bug-reports, requests, ...

Are welcome!