Служба Mongod внезапно остановилась ночью. Понимание того, почему

Служба Mongod внезапно остановилась ночью. Понимание того, почему

Я создал сервер node.js с базой данных mongodb на Ubuntu.
Я установил mongodb софициальная документация, с использованием upstart.

Сегодня утром мой сервер узла разбудил меня журналами сбоев, сообщающими, что база данных упала. Это уже было 1 месяц назад.

Итак, я проверил статус.

> service mongod status  
mongod stop/waiting

Я перезапустил его sudo service mongod startи проблема была решена.

Но теперь я хочу понять: почему это прекратилось? Как предотвратить повторение этого в будущем?

Я проверил свой сервер после последней перезагрузки.

> uptime
09:28:52 up 139 days, 21:34,  1 user,  load average: 0.00, 0.01, 0.05

Ладно, это не вызвано перезагрузкой системы.

Я проверил логи mongod:

tail -500 /var/log/mongodb/mongod.log

и я мог видеть свой журнал перезапусков, датированный сегодняшним утром, но ничего, связанного с этой ночью!

Я не гуру системного администрирования и не знаю, что мне теперь проверить, чтобы лучше понять мою проблему. Кто-нибудь может мне помочь?

EDIT: Как и просили в комментариях, вот мой /etc/init/mongod.confфайл upstart:

# Ubuntu upstart file at /etc/init/mongod.conf

# Recommended ulimit values for mongod or mongos
# See http://docs.mongodb.org/manual/reference/ulimit/#recommended-settings
#
limit fsize unlimited unlimited
limit cpu unlimited unlimited
limit as unlimited unlimited
limit nofile 64000 64000
limit rss unlimited unlimited
limit nproc 64000 64000

kill timeout 300 # wait 300s between SIGTERM and SIGKILL.

pre-start script
  DAEMONUSER=${DAEMONUSER:-mongodb}
  if [ ! -d /var/lib/mongodb ]; then
    mkdir -p /var/lib/mongodb && chown mongodb:mongodb /var/lib/mongodb
  fi
  if [ ! -d /var/log/mongodb ]; then
    mkdir -p /var/log/mongodb && chown mongodb:mongodb /var/log/mongodb
  fi
  touch /var/run/mongodb.pid
  chown $DAEMONUSER /var/run/mongodb.pid
end script

start on runlevel [2345]
stop on runlevel [06]

script
  ENABLE_MONGOD="yes"
  CONF=/etc/mongod.conf
  DAEMON=/usr/bin/mongod
  DAEMONUSER=${DAEMONUSER:-mongodb}
  DAEMONGROUP=${DAEMONGROUP:-mongodb}

  if [ -f /etc/default/mongod ]; then . /etc/default/mongod; fi

  # Handle NUMA access to CPUs (SERVER-3574)
  # This verifies the existence of numactl as well as testing that the command works
  NUMACTL_ARGS="--interleave=all"
  if which numactl >/dev/null 2>/dev/null && numactl $NUMACTL_ARGS ls / >/dev/null 2>/dev/null
  then
    NUMACTL="$(which numactl) -- $NUMACTL_ARGS"
    DAEMON_OPTS=${DAEMON_OPTS:-"--config $CONF"}
  else
    NUMACTL=""
    DAEMON_OPTS="-- "${DAEMON_OPTS:-"--config $CONF"}
  fi

  if [ "x$ENABLE_MONGOD" = "xyes" ]
  then
    exec start-stop-daemon --start \
        --chuid $DAEMONUSER:$DAEMONGROUP \
        --pidfile /var/run/mongodb.pid \
        --make-pidfile \
        --exec $NUMACTL $DAEMON $DAEMON_OPTS
  fi
end script

Связанный контент