mongoDb 2.6 falha ao iniciar no Oracle Linux usando o script de inicialização

1

Instalado o MongoDb 2.6.3 no OL 6.3 usando o yum, mas o script init padrão parece falhar tanto ao tentar parar como iniciar o serviço mongod. Eu poderia rastrear o problema ao parar para $pid_file sendo detectado como _/var/run/mongodb/mongod.pid (ou seja, com um espaço na frente do caminho). Depois que o espaço foi removido, o mongod poderia ser interrompido.
No entanto, parece que não consigo iniciá-lo usando o mesmo script (esse também era o caso antes do stop-fix). Depois de emitir o comando service mongod start , recebo ERROR: child process failed, exited with error number 1 e nos logs: ERROR: Cannot write pid file to /var/run/mongodb/mongod.pid: Success , logo após a linha ***** SERVER RESTARTED ***** , mais um pidfile vazio é criado no local citado. Nada mais aparece mesmo se eu aumentar a verbosidade do log. O Mongod começa bem se eu o executar como root, mas o acima acontece se eu usar um usuário sem privilégios (mongod). Eu poderia detectar isso executando o comando que eventualmente é executado com e sem a alteração do usuário - runuser -s /bin/bash mongod -c "ulimit -S -c 0 ; numactl --interleave=all /usr/bin/mongod -f /etc/mongod.conf"

Informações adicionais - Estou usando o formato de configuração 2.4:

logpath   = /data/mongodb/log/mongod.log
logappend = true
fork      = true
dbpath    = /data/mongodb/db
auth      = true
port        = 27017
pidfilepath = /var/run/mongodb/mongod.pid
traceExceptions = true
verbose = true
vvvv = true

keyFile=/data/mongodb/keyfile

Verificando as permissões no caminho do pidfile, eles pareciam bem (rx nos pais, rwx no mongodb). Além disso, em outra caixa (mesmo sistema operacional) o mongoDb 2.4 roda bem. Qualquer ideia?

EDIT - se eu não usar um pidfile (nenhum conjunto de pidfilepath), tudo parece funcionar bem, mas isso não conta como uma solução, e sim uma solução alternativa ...

    
por sfThomas 13.09.2014 / 13:20

1 resposta

2

Isso parece estar relacionado ao script init.d (SERVER-14679 "" (CentOS 7 / RHEL 7) init.d deve criar um diretório para arquivo pid se estiver faltando ", que é fixo para 2.6.5.

Enquanto isso, edite o script de inicialização de acordo com este commit .

Por favor, adicione uma nota ao ticket que se aplica ao Oracle Linux, caso o script de init modificado inicie o MongoDB como esperado.

    
por 24.09.2014 / 09:17

Tags