O que vem instalado no servidor MongoDB?
- MongoDB Community 8.0 do repositório oficial do MongoDB
- Autenticação ativada, com um utilizador chamado yonetici com a função root na base de dados admin
- Ligações remotas na porta 27017 (bindIp 0.0.0.0)
- A shell mongosh e ferramentas de base de dados como mongodump e mongorestore
- Definições em /etc/mongod.conf, dados em /var/lib/mongodb, registo em /var/log/mongodb/mongod.log
- Firewall com apenas as portas 22 e 27017 abertas, mais fail2ban para o SSH
Que tamanho é necessário para o MongoDB?
As notas de produção do MongoDB não indicam um valor de RAM, mas explicam a cache: o WiredTiger usa o maior valor entre metade de (RAM menos 1 GB) e 256 MB. Isto dá 256 MB com 1 GB, 512 MB com 2 GB e 1,5 GB com 4 GB. As mesmas notas pedem dois núcleos por mongod, por isso esta instalação começa com 2 núcleos. Como regra geral, use 1 GB para experiências e comece a produção com 2 GB de RAM. A cache acompanha a RAM sozinha e os dados e o endereço IP mantêm-se quando aumenta a partir do painel.
| Utilização | Tamanho | Preço | Escolher |
|---|---|---|---|
| Inicial | 1 GB RAM · 2 vCore · 25 GB NVMe | $3.08/mês | |
| Médio | 2 GB RAM · 2 vCore · 40 GB NVMe | $4.51/mês | |
| Potente | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mês |
Para quem é?
- Projetos Node.js, Python, Go ou Java assentes numa base de dados de documentos
- Quem executa a aplicação noutro lado e quer a base de dados no seu próprio servidor
- Quem leva dados MongoDB existentes para o seu próprio servidor com o mongodump
- Programadores que precisam de um MongoDB remoto para desenvolvimento e testes
O que acontece depois de encomendar?
- Defina o tamanho e conclua o pagamento.
- O servidor arranca e o MongoDB instala-se sozinho. Nos nossos testes com servidores reais, demorou cerca de 3 minutos.
- No separador Resumo do painel, copie as linhas Endereço de ligação, Utilizador e Palavra-passe.
- Escreva a sua connection string: mongodb://yonetici:PASSWORD@IP:27017/?authSource=admin
- Crie um utilizador separado para a aplicação e guarde o yonetici, que tem a função root, para o trabalho de administração.
Em todos os servidores
- Cópias de segurança diárias incluídas no preço
- Tráfego ilimitado
- Acesso root completo
- Aumentar ou reduzir a RAM e o CPU mais tarde, e fazer crescer o disco
- Localização: Istanbul · IST-1.
Bom saber
- Ao encomendar, aceita os termos da Server Side Public License (SSPL) do MongoDB.
- A porta 27017 está aberta à internet. Para a limitar, execute ufw delete allow 27017/tcp e depois ufw allow from YOUR_IP to any port 27017.
- As ligações são feitas sem TLS: a palavra-passe está protegida, mas os dados não são cifrados. Para dados sensíveis, use um túnel SSH ou defina o seu próprio certificado com net.tls.
- Este é um mongod autónomo. As transações e os change streams só funcionam em replica sets, por isso ative você a replicação em mongod.conf se precisar deles.
- O MongoDB vem do seu próprio repositório e fica na versão 8.0. As atualizações aplicam-se com o apt.
MongoDB: perguntas e respostas
Como me ligo ao meu servidor MongoDB?
A connection string é mongodb://yonetici:PASSWORD@IP:27017/?authSource=admin. O mongosh, o MongoDB Compass e os controladores ligam-se todos com ela. A palavra-passe da instalação só tem letras e algarismos, por isso não precisa de codificação de URL.
De quanta RAM precisa o MongoDB?
O MongoDB não tem um valor oficial de RAM mínima. Como regra geral, 1 GB serve para experiências e 2 GB ou mais é um bom ponto de partida para produção. A cache do WiredTiger é de 256 MB com 1 GB e de 1,5 GB com 4 GB, e os dados e índices mais usados devem caber nela.
As transações e os change streams funcionam neste servidor?
O MongoDB só as oferece em replica sets e em sharded clusters, e esta instalação é um mongod autónomo. Se precisar delas, configure a replicação e um ficheiro de chave em mongod.conf e execute rs.initiate() para iniciar um replica set de um só membro.
A minha ligação ao MongoDB é cifrada?
As ligações ao MongoDB não têm TLS na instalação: a palavra-passe está protegida, mas os dados circulam sem cifra. Para dados sensíveis, abra um túnel SSH com ssh -L 27017:127.0.0.1:27017 root@IP, usando a palavra-passe SSH indicada junto de Nome de utilizador no separador Resumo. Depois ligue-se a 127.0.0.1.
Como faço cópia de segurança do MongoDB?
O servidor tem uma cópia de segurança todas as noites, os últimos 7 dias ficam guardados e isto está incluído no preço. O mongodump também está instalado: faça um dump com mongodump --uri e restaure-o com mongorestore.
Como passo os meus dados MongoDB existentes?
Faça um dump no servidor antigo com mongodump, copie os ficheiros para o novo servidor por SFTP e carregue-os com mongorestore --uri. Se vem de uma versão mais antiga, leia as notas de atualização do MongoDB.