Skip to content

Instantly share code, notes, and snippets.

@hummus
Forked from sasha-id/README
Created December 23, 2013 07:48
Show Gist options
  • Save hummus/8093137 to your computer and use it in GitHub Desktop.
Save hummus/8093137 to your computer and use it in GitHub Desktop.
MongoDB upstart scripts for Ubuntu.
Run following commands after installing upstart scripts:
ln -s /lib/init/upstart-job /etc/init.d/mongoconf
ln -s /lib/init/upstart-job /etc/init.d/mongodb
ln -s /lib/init/upstart-job /etc/init.d/mongos
To start services use:
service mongodb [start|stop|restart]
service mongoconf [start|stop|restart]
service mongos [start|stop|restart]
# /etc/mongo.conf
MONGODB_ENABLED=yes
MONGOCONF_ENABLED=no
MONGOS_ENABLED=no
# /etc/mongoconf.conf
#configsvr config file
#start mongod in configsvr mode
configsvr=true
#where to log
logpath=/var/log/mongodb/mongoconf.log
#log overwritten or appended to
logappend=true
#override port
#port=27019
#path to data files
#dbpath=/data/configdb
smallfiles = true
# /etc/mongos.conf
#mongos config file
#config servers
configdb=host1:27019,host2:27019,host3:27019
#where to log
logpath=/var/log/mongodb/mongos.log
#log overwritten or appended to
logappend=true
#override port
#port=27017
# Ubuntu upstart file at /etc/init/mongoconf.conf
limit nofile 20000 20000
kill timeout 300 # wait 300s between SIGTERM and SIGKILL.
start on runlevel [2345]
stop on runlevel [06]
script
if [ -f /etc/mongo.conf ]; then . /etc/mongo.conf; fi
if [ "x$MONGOCONF_ENABLED" = "xyes" ]; then
ENABLE_MONGOCONF="yes"
if [ "x$ENABLE_MONGOCONF" = "xyes" ]; then exec start-stop-daemon --make-pidfile --pidfile /var/run/mongoconf.pid --start --quiet --chuid mongodb --exec /usr/bin/mongod -- --config /etc/mongoconf.conf; fi
fi
end script
# Ubuntu upstart file at /etc/init/mongodb.conf
limit nofile 20000 20000
kill timeout 300 # wait 300s between SIGTERM and SIGKILL.
pre-start script
mkdir -p /var/lib/mongodb/
mkdir -p /var/log/mongodb/
end script
start on runlevel [2345]
stop on runlevel [06]
script
if [ -f /etc/mongo.conf ]; then . /etc/mongo.conf; fi
if [ "x$MONGODB_ENABLED" = "xyes" ]; then
ENABLE_MONGODB="yes"
if [ -f /etc/default/mongodb ]; then . /etc/default/mongodb; fi
if [ "x$ENABLE_MONGODB" = "xyes" ]; then exec start-stop-daemon --make-pidfile --pidfile /var/run/mongodb.pid --start --quiet --chuid mongodb --exec /usr/bin/mongod -- --config /etc/mongodb.conf; fi
fi
end script
# Ubuntu upstart file at /etc/init/mongos.conf
limit nofile 20000 20000
kill timeout 300 # wait 300s between SIGTERM and SIGKILL.
start on runlevel [2345]
stop on runlevel [06]
script
if [ -f /etc/mongo.conf ]; then . /etc/mongo.conf; fi
if [ "x$MONGOS_ENABLED" = "xyes" ]; then
ENABLE_MONGOS="yes"
if [ "x$ENABLE_MONGOS" = "xyes" ]; then exec start-stop-daemon --make-pidfile --pidfile /var/run/mongos.pid --start --quiet --chuid mongodb --exec /usr/bin/mongos -- --config /etc/mongos.conf; fi
fi
end script
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment