From 8312944a508655f397d6b146857d5a9add8ea02f Mon Sep 17 00:00:00 2001 From: Ossi Salmi Date: Fri, 19 May 2017 15:05:45 +0300 Subject: [PATCH] Add mongodb module --- mongodb/files/mongod.conf | 13 +++++++++++ mongodb/manifests/init.pp | 48 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 mongodb/files/mongod.conf create mode 100644 mongodb/manifests/init.pp diff --git a/mongodb/files/mongod.conf b/mongodb/files/mongod.conf new file mode 100644 index 0000000..b4f2f5e --- /dev/null +++ b/mongodb/files/mongod.conf @@ -0,0 +1,13 @@ +bind_ip = 127.0.0.1 +port = 27017 + +auth = true +fork = true +nohttpinterface = true + +logpath = /var/log/mongodb/mongod.log +pidfilepath = /var/run/mongodb/mongod.pid +unixSocketPrefix = /var/run/mongodb + +dbpath = /srv/mongodb +journal = true diff --git a/mongodb/manifests/init.pp b/mongodb/manifests/init.pp new file mode 100644 index 0000000..95f4344 --- /dev/null +++ b/mongodb/manifests/init.pp @@ -0,0 +1,48 @@ +# Install mongodb server. +# +class mongodb($datadir='/srv/mongodb') { + + package { [ + 'mongodb', + 'mongodb-server', + ]: + ensure => installed, + } + + if $datadir != '/srv/mongodb' { + file { '/srv/mongodb': + ensure => link, + target => $datadir, + } + } + + file { $datadir: + ensure => directory, + mode => '0770', + owner => 'mongodb', + group => 'mongodb', + require => Package['mongodb-server'], + } + + if versioncmp($::operatingsystemrelease, "7") >= 0 { + $config = '/etc/mongod.conf' + } else { + $config = '/etc/mongodb.conf' + } + + file { $config: + ensure => present, + mode => '0644', + owner => 'root', + group => 'root', + source => 'puppet:///modules/mongodb/mongod.conf', + notify => Service['mongod'], + } + + service { 'mongod': + ensure => running, + enable => true, + require => File['/srv/mongodb'], + } + +}