Amazon OpsWorks - não é possível fazer referência ao volume de ebs no mongo dbpath

1

Estou implantando o mongo com o Amazon OpsWorks, conforme descrito no Configurando um Replicaset do MongoDB com o AWS OpsWorks e a instância falha ao iniciar quando eu especificar o volume montado do ebs (/ data / ebs) no dbpath.

Aqui está o json personalizado da pilha:

{
  "mongodb" : {
    config: {
      "dbpath" : "/data/ebs/data/",
      "logpath" : "/data/ebs/log/",
    }
    "cluster_name" : "replicaset",
    "replicaset_name": "replicaset"
  }
}

A razão pela qual o mongo não inicia é aparentemente devido à propriedade / data / ebs:

[ec2-user@mongodb1 data]$ ls -la /data/ebs
drwxr-xr-x 2 root root   21 May 24 08:43 .
drwxr-xr-x 3 root root 4096 May 24 04:49 ..

Como faço para substituí-lo? Existe uma receita que eu preciso para além do mongodb :: 10gen_repo e mongodb :: replicaset?

    
por andriys 24.05.2014 / 18:46

1 resposta

1

Algumas coisas básicas aqui:

Primeiro, sua listagem de / data / ebs parece não incluir o diretório de dados ou o diretório de log. Você deve criar os dois se eles não existirem de fato:

Em seguida, a propriedade da pasta /data/ebs/data não deve ser root:root . Ao instalar como um serviço via apt , o usuário relevante é mongodb e, portanto, a permissão adequada geralmente é mongodb:mongodb . Para alterá-lo (repita também o diretório de log):

cd /data/ebs/data
sudo chown -R mongodb:mongodb .

Por fim, a parte logpath da configuração precisa ser um caminho completo para um arquivo, não um diretório. Ou seja, deve ser /data/ebs/log/mongod.log ou semelhante.

    
por 25.05.2014 / 21:11