Saltar al contenido

Cómo instalar Ubuntu 18.04 MongoDB en

marzo 4, 2020

 

El autor ha seleccionado la Creative Commons Corporation para recibir una donación de $ 100 como parte del programa de escritura de donaciones.

Introducción

MongoDB es una base de datos libre y de código abierto NoSQL documento utilizado comúnmente en aplicaciones web modernas.

En este tutorial vamos a instalar MongoDB, gestionar su servicio, y, opcionalmente, permitir el acceso remoto.

Requisitos previos

Para seguir este tutorial, necesitará:

  • Una Ubuntu 18.04 servidor configurado siguiendo este tutorial de configuración inicial del servidor, incluyendo un usuario no root sudo y un firewall.

Paso 1 – Instalación de repositorios oficiales de paquetes de MongoDB

Ubuntu incluye una versión actualizada de MongoDB, que significa que podemos instalar los paquetes necesarios usando apt.

En primer lugar, actualizar la lista de paquetes de tener la versión más reciente de la lista de repositorios:

sudo apt update

  • sudo update apt

Ahora instalar el paquete en sí MongoDB:

sudo apt install -y mongodb

  • sudo apt instalar mongodb -y

Este comando instala varios paquetes que contienen la última versión estable de MongoDB, junto con las herramientas de gestión útiles para el servidor MongoDB. El servidor de base de datos se inicia automáticamente después de la instalación.

A continuación, vamos a verificar que el servidor está en marcha y funciona correctamente.

Paso 2 – Comprobación del servicio de base de datos y

El proceso de instalación se inició MongoDB de forma automática, pero vamos a verificar que el servicio se ha iniciado y que la base de datos está funcionando.

En primer lugar, comprobar el estado del servicio:

sudo systemctl status mongodb

  • sudo systemctl estado mongodb

Vas a ver esta salida:

Output● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2018-05-26 07:48:04 UTC; 2min 17s ago
Docs: man:mongod(1)
Main PID: 2312 (mongod)
Tasks: 23 (limit: 1153)
CGroup: /system.slice/mongodb.service
└─2312 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf

Según systemd, el servidor MongoDB está en funcionamiento.

Nos puede verificar esto en realidad aún más por la conexión al servidor de base de datos y ejecutar un comando de diagnóstico

ejecutar este comando:

mongo --eval 'db.runCommand({ connectionStatus: 1 })'

  • mongo –eval ‘db.runCommand ({ConnectionStatus: 1})’

Esto le salida de la versión actual de la base de datos, la dirección del servidor y el puerto, y la salida del comando de estado:

OutputMongoDB shell version v3.6.3
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.3
{
"authInfo" : {
"authenticatedUsers" : [ ],
"authenticatedUserRoles" : [ ]
},
"ok" : 1
}

Un valor de 1 para el campo bien en la respuesta indica que el servidor está funcionando correctamente.

A continuación, vamos a buscar la forma de gestionar la instancia del servidor.

Paso 3 – Administración del servicio MongoDB MongoDB

instala como un servicio systemd, lo que significa que se puede gestionar mediante comandos de systemd estándar junto con todos los demás servicios Sytem en Ubuntu.

Para verificar el estado del servicio, tipo:

sudo systemctl status mongodb

  • sudo systemctl estado mongodb

Puede detener el servidor en cualquier momento escribiendo:

sudo systemctl stop mongodb

  • sudo parada systemctl mongodb

Para iniciar el servidor cuando está detenido, escriba:

sudo systemctl start mongodb

  • sudo inicio systemctl mongodb

también puede reiniciar el servidor con un solo comando:

sudo systemctl restart mongodb

  • sudo systemctl reinicio mongodb

Por defecto, MongoDB está configurado para iniciarse automáticamente con el servidor. Si desea deshabilitar el inicio automático, tipo:

sudo systemctl disable mongodb

  • sudo systemctl desactivar mongodb

Es tan fácil de volverlo a activar. Para ello, utilice:

sudo systemctl enable mongodb

  • sudo systemctl permiten mongodb

A continuación, vamos a ajustar la configuración del firewall para nuestra instalación MongoDB.

Paso 4 – Ajuste del servidor de seguridad (Opcional)

Suponiendo que ha seguido las instrucciones iniciales de instalación del servidor de tutorial para que el servidor de seguridad en el servidor, el servidor MongoDB no será accesible desde Internet.

Si tiene intención de utilizar el servidor MongoDB sólo a nivel local con las aplicaciones que se ejecutan en el mismo servidor, esta es la configuración recomendada y segura. Sin embargo, si usted le gustaría ser capaz de conectarse a su servidor MongoDB de la Internet, usted tiene que permitir las conexiones entrantes en UFW.

Para permitir el acceso a MongoDB en su puerto predeterminado 27017 de todas partes, se puede usar sudo UFW permiten 27017. Sin embargo, lo que permite el acceso a Internet al servidor MongoDB en una instalación por defecto permite a cualquier persona el acceso sin restricciones al servidor de base de datos y sus datos.

En la mayoría de los casos, MongoDB se debe tener acceso sólo desde ciertas ubicaciones de confianza, como el otro servidor de alojamiento de una aplicación. Para lograr esta tarea, puede permitir el acceso en el puerto por defecto de MongoDB mientras especifica la dirección IP de otro servidor que se explícitamente permitido conectarse:

sudo ufw allow from your_other_server_ip/32 to any port 27017

  • sudo UFW permiten a your_other_server_ip / 32 a cualquier puerto 27017

Puede verificar el cambio en la configuración del cortafuegos con UFW:

sudo ufw status

  • sudo UFW estado

debería ver el tráfico al puerto 27017 permitida en la salida:

Status: active

To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
27017 ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
27017 (v6) ALLOW Anywhere (v6)

Si ha decidido que sólo una determinada dirección IP para conectarse al servidor MongoDB, la dirección IP de la ubicación permitida será incluido en lugar de cualquier lugar en la salida.

Puede encontrar la configuración de servidor de seguridad más avanzadas para restringir el acceso a los servicios de la UFW Fundamentos: Las reglas del cortafuegos habitual y comandos.

A pesar de que el puerto está abierto, MongoDB actualmente sólo está escuchando en la dirección local 127.0.0.1. Para permitir conexiones remotas, agregue la dirección IP públicas del servidor para el archivo mongod.conf.

Abrir el archivo de configuración MongoDB en su editor:

sudo nano /etc/mongodb.conf

  • sudo nano /etc/mongodb.conf

Añadir dirección IP de su servidor a un valor bindIP:

...
logappend=true

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

...

Asegúrese de colocar una coma entre la dirección IP existente y la que ha agregado.

Guarde el archivo, salga del editor y reinicie MongoDB:

sudo systemctl restart mongodb

  • sudo systemctl reinicio mongodb

MongoDB está escuchando para conexiones remotas, pero cualquier persona puede acceder a él. Seguir la parte 2 de Cómo Instalación y seguridad en MongoDB en Ubuntu 16.04 añadir una administrativos cosas por el usuario y bloquear aún más.

Conclusión

Puede encontrar tutoriales más en profundidad sobre cómo configurar y usar MongoDB en estos artículos comunidad digitalocean. La documentación oficial MongoDB es también un gran recurso sobre las posibilidades que ofrece MongoDB.