Instale o MongoDB Community Edition no Red Hat ou CentOS
Nesta página
Observação
MongoDB Atlas
O MongoDB Atlas é uma opção de serviço MongoDB hospedada na nuvem que não requer nenhuma sobrecarga de instalação e oferece uma camada grátis para começar.
Visão geral
Use este tutorial para instalar o MongoDB 7.0 Community Edition no Red Hat Enterprise Linux, CentOS Linux ou Oracle Linux [1] utilizando o gerenciador de pacotes do yum
.
Versão do MongoDB
Este tutorial instala o MongoDB 7.0 Community Edition. Para instalar uma versão diferente do MongoDB Community, use o menu suspenso de versão no canto superior esquerdo desta página para selecionar a documentação dessa versão.
Considerações
Suporte a plataformas
MongoDB 7.0 A Community Edition suporta as seguintes versões 64-bit do Red Hat Enterprise Linux (RHEL), CentOS Linux, Oracle Linux [1], Rocky Linux e AlmaLinux [2] em x86_64 arquitetura:
RHEL/CentOS Stream/Oracle/Rocky/AlmaLinux 9
RHEL/CentOS Stream/Oracle/Rocky/AlmaLinux 8
RHEL/CentOS/Oracle 7
O MongoDB é compatível somente com as versões de 64 bits dessas plataformas.
A edição MongoDB 7.0 Community em RHEL/CentOS/Oracle/Rocky/AlmaLinux também suporta a arquitetura ARM64 em plataformas selecionadas.
Consulte Suporte da Plataforma para obter mais informações.
[1] | (1, 2) O MongoDB é compatível apenas com o Oracle Linux que executa o Red Hat Compatible Kernel (RHCK). O MongoDB não suporta o Unbreakable Enterprise Kernel (UEK). |
[2] | Os produtos locais do MongoDB lançados para RHEL versão 8.0+ são compatíveis e suportados no Rocky Linux versão 8.0+ e AlmaLinux versão 8.0+, dependendo dessas distribuições cumprirem sua obrigação de fornecer compatibilidade total com RHEL. |
Notas de produção
Antes de implantar o MongoDB em um ambiente de produção, considere o documento Notas de produção para implantações autogerenciadas , que oferece considerações de desempenho e recomendações de configuração para produção de sistemas do MongoDB.
Instale o MongoDB Community Edition
Siga estas etapas para instalar o MongoDB Community Edition usando o gerenciador de pacotes yum
.
Configure o sistema de gerenciamento de pacotes (yum
).
Crie um arquivo /etc/yum.repos.d/mongodb-org-7.0.repo
para instalar o MongoDB diretamente utilizando o yum
:
[mongodb-org-7.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/7.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://pgp.mongodb.com/server-7.0.asc
[mongodb-org-7.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/7.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://pgp.mongodb.com/server-7.0.asc
[mongodb-org-7.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/7.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://pgp.mongodb.com/server-7.0.asc
Você também pode baixar os arquivos .rpm
diretamente do repositório do MongoDB. As transferências são organizadas pela versão Red Hat/CentOS (por exemplo, 9
), em seguida, a versão de lançamento do MongoDB (por exemplo, 7.0
), depois a arquitetura (por exemplo, x86_64
).
Antes do MongoDB 5.0, as versões ímpares do MongoDB, como 4.3
, eram versões de desenvolvimento. Começando com o MongoDB 5.1, o MongoDB tem Rapid Releases trimestralmente. Para obter mais informações sobre as diferenças entre versões de suporte rápido e de longo prazo, consulte MongoDB Versioning.
Instale os pacotes do MongoDB.
Para instalar a versão estável mais recente do MongoDB, emita o seguinte comando:
sudo yum install -y mongodb-org
Como alternativa, para instalar uma versão específica do MongoDB, especifique cada pacote de componente individualmente e anexe o número da versão ao nome do pacote , como no exemplo a seguir:
sudo yum install -y mongodb-org-7.0.14 mongodb-org-database-7.0.14 mongodb-org-server-7.0.14 mongodb-mongosh-7.0.14 mongodb-org-mongos-7.0.14 mongodb-org-tools-7.0.14
Observação
yum
atualiza pacotes automaticamente quando novas versões são disponibilizadas. Se você quiser impedir atualizações do MongoDB, fixe o pacote adicionando a seguinte diretriz exclude
ao seu arquivo /etc/yum.conf
:
exclude=mongodb-org,mongodb-org-database,mongodb-org-server,mongodb-mongosh,mongodb-org-mongos,mongodb-org-tools
Execute o MongoDB Community Edition
ulimit
A maioria dos sistemas operacionais do tipo Unix limita os recursos do sistema que um processo pode usar. Esses limites podem impactar negativamente a operação do MongoDB e devem ser ajustados. Consulte Configurações do UNIX ulimit
para sistemas autogerenciados para obter as configurações recomendadas para sua plataforma.
Observação
Se o valor ulimit
para o número de arquivos abertos estiver em 64000
, o MongoDB gerará um aviso de inicialização.
Caminhos de Diretório
Para Usar Diretórios Padrão
Por padrão, o MongoDB é executado com a conta de usuário mongod
e utiliza os seguintes diretórios padrão:
/var/lib/mongo
(o diretório de dados)/var/log/mongodb
(o diretório log)
O gerenciador de pacotes cria os diretórios padrão durante a instalação. O proprietário e o nome do grupo são mongod
.
Para Usar Diretórios Não Padrão
Para usar um diretório de dados e/ou diretório de registros diferente dos diretórios padrão:
Crie o novo diretório ou diretórios.
Edite o arquivo de configuração
/etc/mongod.conf
e modifique os campos de acordo:storage.dbPath
para especificar um novo caminho de diretório de dados (por exemplo,/some/data/directory
)systemLog.path
para especificar um novo caminho de arquivo de log (por exemplo,/some/log/directory/mongod.log
)
Certifique-se de que o usuário que executa o MongoDB tenha acesso ao diretório ou diretórios:
sudo chown -R mongod:mongod <directory> Se você alterar o usuário que executa o processo MongoDB,deverá conceder ao novo usuário acesso a esses diretórios.
Configure o SELinux, se aplicado. Consulte Configurar o SELinux.
Configurar SELinux
A partir do MongoDB 5.0, uma nova política do SELinux está disponível para instalações do MongoDB que:
Use um instalador
.rpm
.Use as configurações padrão.
Execute no RHEL7 ou posterior.
Para instalações do MongoDB Enterprise que usam autenticação LDAP, as seguintes políticas adicionais do SELinux devem estar em vigor:
Para sistemas que usam autenticação LDAP por meio de bibliotecas do sistema operacional, o MongoDB deve ter acesso às portas LDAP
tcontext=system_u:object_r:ldap_port_t:s0
. Você pode habilitar o acesso executandosetsebool -P authlogin_nsswitch_use_ldap 1
.Para sistemas que utilizam autenticação LDAP por meio de saslauthd, você deve habilitar o modo de cluster executando o
sudo setsebool -P daemons_enable_cluster_mode 1
.
Se a sua instalação não atender estes requisitos, consulte as Instruções do SELinux para pacotes do .tgz
.
Observação
Se o seu MongoDB deployment usar configurações personalizadas para qualquer um dos itens a seguir:
Você não pode usar a política do SELinux fornecida pelo MongoDB. Uma alternativa é criar uma política SELinux personalizada; no entanto, uma política personalizada escrita incorretamente pode ser menos segura ou pode impedir que sua instância mongod
funcione.
Instalar a Política do SELinux
Certifique-se de ter os seguintes pacotes instalados:
git
make
checkpolicy
policycoreutils
selinux-policy-devel
sudo yum install git make checkpolicy policycoreutils selinux-policy-devel Baixe o repositório de políticas.
git clone https://github.com/mongodb/mongodb-selinux Crie a política.
cd mongodb-selinux make Aplique a política.
sudo make install
Importante
Funcionalidade incompatível com versões anteriores
A partir do MongoDB 5.1, você deve executar o seguinte comando no diretório no qual a política do SELinux foi clonada anteriormente antes de fazer desatualizar para uma versão anterior do MongoDB:
sudo make uninstall
Política do SELinux Considerações
A política do SELinux foi projetada para funcionar com a configuração resultante de uma
.rpm
instalação de pacote padrão do MongoDB . Consulte as suposições de instalação padrão para obter mais detalhes.A política do SELinux foi projetada para servidores do
mongod
. Não se aplica a outros daemons ou ferramentas do MongoDB, como:A política de referência fornecida pelo Projeto SELinux inclui uma macro
mongodb_admin
. Essa macro não está incluída na política do SELinux do MongoDB. Um administrador no domíniounconfined_t
pode gerenciarmongod
.Para desinstalar a política, acesse o diretório onde você baixou o repositório de políticas e execute:
sudo make uninstall
Procedimento
Siga estas etapas para executar o MongoDB Community Edition em seu sistema. Estas instruções pressupõem que você esteja usando as configurações padrão.
Sistema de Inicialização
Para executar e gerenciar seu processo do mongod
, você utilizará o sistema de inicialização integrado do sistema operacional. Versões recentes do Linux tendem a utilizar systemd (que utiliza o comando systemctl
), enquanto versões mais antigas do Linux tendem a utilizar System V init (que utiliza o comando service
).
Se você não tiver certeza de qual sistema de inicialização sua plataforma usa, execute o seguinte comando:
ps --no-headers -o comm 1
Em seguida, selecione a aba apropriada abaixo com base no resultado:
systemd
- selecione a aba systemd (systemctl) abaixo.init
- selecione a aba System V Init (service) abaixo.
Inicie o MongoDB.
Você pode iniciar o processo mongod
emitindo o seguinte comando:
sudo systemctl start mongod
Se receber um erro semelhante ao seguinte ao iniciar o mongod
:
Failed to start mongod.service: Unit mongod.service not found.
Execute o seguinte comando primeiro:
sudo systemctl daemon-reload
Em seguida, execute o comando de inicialização acima novamente.
Verifique se o MongoDB foi iniciado com sucesso.
Você pode verificar se o processo mongod
começou com sucesso emitindo o seguinte comando:
sudo systemctl status mongod
Opcionalmente, você pode garantir que o MongoDB iniciará após reinicialização do sistema emitindo o seguinte comando:
sudo systemctl enable mongod
Pare o MongoDB.
Conforme necessário, você pode interromper o processo mongod
emitindo o seguinte comando:
sudo systemctl stop mongod
Reinicie o MongoDB.
Você pode reiniciar o processo mongod
emitindo o seguinte comando:
sudo systemctl restart mongod
Você pode acompanhar o estado do processo em busca de erros ou mensagens importantes
observando o resultado no arquivo /var/log/mongodb/mongod.log
.
Comece a usar o MongoDB.
Inicie uma sessão mongosh
na mesma máquina host que o mongod
. Você pode executar mongosh
sem nenhuma opção de linha de comando para se conectar a um mongod
que esteja sendo executado em seu host local com a porta padrão 27017.
mongosh
Para obter mais informações sobre como se conectar usando mongosh
, como se conectar a uma instância mongod
em execução em um host e/ou porta diferente, consulte a documentação do mongosh.
Para ajudá-lo a começar a usar o MongoDB, o MongoDB oferece guias de introdução em várias edições de drivers. Para obter a documentação do driver, consulte Começar a desenvolver com MongoDB.
Inicie o MongoDB.
Você pode iniciar o processo mongod
emitindo o seguinte comando:
sudo service mongod start
Verifique se o MongoDB foi iniciado com sucesso
Você pode verificar se o processo mongod
começou com sucesso verificando o conteúdo do arquivo de log em /var/log/mongodb/mongod.log
para uma leitura de linha
[initandlisten] waiting for connections on port <port>
onde <port>
é a porta configurada no /etc/mongod.conf
, 27017
por padrão.
Opcionalmente, você pode garantir que o MongoDB iniciará após reinicialização do sistema emitindo o seguinte comando:
sudo chkconfig mongod on
Pare o MongoDB.
Conforme necessário, você pode interromper o processo mongod
emitindo o seguinte comando:
sudo service mongod stop
Reinicie o MongoDB.
Você pode reiniciar o processo mongod
emitindo o seguinte comando:
sudo service mongod restart
Você pode acompanhar o estado do processo em busca de erros ou mensagens importantes
observando o resultado no arquivo /var/log/mongodb/mongod.log
.
Comece a usar o MongoDB.
Inicie uma sessão mongosh
na mesma máquina host que o mongod
. Você pode executar mongosh
sem nenhuma opção de linha de comando para se conectar a um mongod
que esteja sendo executado em seu host local com a porta padrão 27017.
mongosh
Para obter mais informações sobre como se conectar usando mongosh
, como se conectar a uma instância mongod
em execução em um host e/ou porta diferente, consulte a documentação do mongosh.
Para ajudá-lo a começar a usar o MongoDB, o MongoDB oferece guias de introdução em várias edições de drivers. Para obter a documentação do driver, consulte Começar a desenvolver com MongoDB.
Desinstale o MongoDB Community Edition
Para remover completamente o MongoDB de um sistema, você deve remover os próprios aplicativos MongoDB, os arquivos de configuração e quaisquer diretórios que contenham dados e registros. A seção a seguir orienta você nas etapas necessárias.
Aviso
Esse processo removerá completamente o MongoDB, sua configuração e todos os bancos de dados. Este processo não é reversível, portanto, certifique-se de fazer backup de todas as suas configurações e dados antes de continuar.
Pare o MongoDB.
Interrompa o processo mongod
com o seguinte comando:
sudo service mongod stop
Informações adicionais
Vinculação ao localhost por padrão
Por padrão, o MongoDB é iniciado com bindIp
, definido como 127.0.0.1
, que se vincula à interface de rede localhost. Isso significa que o mongod
só pode aceitar conexões de clientes que estejam executando na mesma máquina. Os clientes remotos não conseguirão se conectar ao mongod
e o mongod
não conseguirá inicializar um conjunto de réplicas, a menos que esse valor seja definido como uma interface de rede válida acessível a partir dos clientes remotos.
Este valor pode ser configurado de duas maneiras:
no arquivo de configuração do MongoDB com
bindIp
, oupor meio do argumento linha de comando
--bind_ip
Aviso
Antes de vincular sua instância a um endereço IP acessível publicamente, você deve proteger seu cluster contra o acesso não autorizado. Para obter uma lista completa de recomendações de segurança, consulte a Lista de verificação de segurança para implementações autogerenciadas. No mínimo, procure habilitar a autenticação e fortalecer a infraestrutura de rede.
Para obter mais informações sobre como configurar bindIp
, consulte Vinculação de IP em implementações autogerenciadas.
Pacotes do MongoDB Community Edition
O MongoDB Community Edition está disponível em seu próprio repositório dedicado e contém os seguintes pacotes com suporte oficial:
Nome do Pacote | Descrição | ||||||
---|---|---|---|---|---|---|---|
mongodb-org | Um metapackage que instala automaticamente os pacotes do componente listados abaixo. | ||||||
mongodb-org-database | Um
| ||||||
mongodb-mongosh | Contém o MongoDB Shell ( mongosh ). | ||||||
mongodb-org-tools | Um
|