Saltstack Official MongoDB Formula
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Petr Michalec 9765a13b9a Merge branch 'no-verbose-logs' of github.com:tcpcloud/salt-formula-mongodb into no-verbose-logs 8 years ago
debian Add salt-master into build depends 8 years ago
metadata/service/server Initial commit 9 years ago
mongodb Merge branch 'no-verbose-logs' of github.com:tcpcloud/salt-formula-mongodb into no-verbose-logs 8 years ago
CHANGELOG.rst Initial commit 9 years ago
LICENSE Initial commit 9 years ago
Makefile Add missing Makefile 8 years ago
README.rst configureable logging levels in conf 8 years ago
VERSION Initial commit 9 years ago
metadata.yml Add metadata.yml 8 years ago

README.rst

=======
MongoDB
=======

MongoDB (from "humongous") is an open-source document database, and the leading NoSQL database. Written in C++.

Available states
================

.. contents::
:local:

``mongodb.server``
--------------------

Setup MongoDB server

Available metadata
==================

.. contents::
:local:

``metadata.mongodb.server.single``
----------------------------------

Single-node MongoDB setup

``metadata.mongodb.server.cluster``
-----------------------------------

Clustered MongoDB setup

Configuration parameters
========================


Example reclass
===============

Setup MongoDB with database for ceilometer.

.. code-block:: yaml

classes:
- service.mongodb.server.cluster
parameters:
_param:
mongodb_server_replica_set: ceilometer
mongodb_ceilometer_password: cloudlab
mongodb_admin_password: cloudlab
mongodb_shared_key: xxx
mongodb:
server:
database:
ceilometer:
enabled: true
password: ${_param:mongodb_ceilometer_password}
users:
- name: ceilometer
password: ${_param:mongodb_ceilometer_password}

Sample pillars
==============

Simple single server

.. code-block:: yaml

mongodb:
server:
enabled: true
bind:
address: 0.0.0.0
port: 27017
admin:
username: admin
password: magicunicorn
database:
dbname:
enabled: true
encoding: 'utf8'
users:
- name: 'username'
password: 'password'

Cluster of 3 nodes

.. code-block:: yaml

mongodb:
server:
enabled: true
logging:
verbose: false
logLevel: 1
oplogLevel: 0
admin:
user: admin
password: magicunicorn
master: mongo01
members:
- host: 192.168.1.11
priority: 2
- host: 192.168.1.12
- host: 192.168.1.13
replica_set: default
shared_key: magicunicorn

It's possible that first Salt run on master node won't pass correctly before
all slave nodes are up and ready.
Simply run salt again on master node to setup cluster, databases and users.

To check cluster status, execute following:

.. code-block:: bash

mongo 127.0.0.1:27017/admin -u admin -p magicunicorn --eval "rs.status()"

Read more
=========

* http://docs.mongodb.org/manual/
* http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/
* https://www.linode.com/docs/databases/mongodb/creating-a-mongodb-replication-set-on-ubuntu-12-04-precise