Nota
MongoDB Atlas
MongoDB Atlas es una opción de servicio MongoDB alojado en la nube que no requiere instalación y ofrece un nivel gratuito para comenzar.
Overview
Utilice este tutorial para instalar MongoDB 7.0 Community Edition en Red Hat Enterprise Linux, CentOS Linux u Oracle Linux []1 mediante el yum gestor de paquetes
Versión de MongoDB
Este tutorial instala MongoDB 7.0 Community Edition. Para instalar una versión diferente de MongoDB Community, utilice el menú desplegable de versiones en la esquina superior izquierda de esta página para seleccionar la documentación correspondiente.
Considerations
Soporte de plataforma
MongoDB 7.0 Community Edition admite lo siguiente Versiones de64bits de Red Hat Enterprise Linux (RHEL), CentOS Linux, Oracle Linux [],1 Rocky Linux y AlmaLinux []2 en Arquitecturax86_:64
RHEL / CentOS Stream / Oracle / Rocky / AlmaLinux 9
RHEL / CentOS Stream / Oracle / Rocky / AlmaLinux 8
RHEL/CentOS/Oracle 7
MongoDB solo soporta las versiones de 64 bits de estas plataformas.
MongoDB 7.0 Community Edition en RHEL / CentOS / Oracle / Rocky / AlmaLinux también admite la arquitectura ARM64 en plataformas seleccionadas.
Consulte Soporte de plataforma para obtener más información.
| [1] | (1, 2) MongoDB solo admite Oracle Linux que ejecuta el Red Hat Compatible Kernel (RHCK). MongoDB no es compatible con el Unbreakable Enterprise Kernel (UEK). |
| [2] | Los productos on-premises de MongoDB lanzados para la versión 8.0+ de RHEL son compatibles y están soportados en Rocky Linux versión 8.0+ y AlmaLinux versión 8.0+, siempre que esas distribuciones cumplan con su obligación de ofrecer compatibilidad total con RHEL. |
Notas de producción
Antes de implementar MongoDB en un entorno de producción, considera el documento Notas de Producción para Implementaciones Autogestionadas, que ofrece consideraciones de rendimiento y recomendaciones de configuración para implementaciones de MongoDB en producción.
Instale MongoDB Community Edition
Siga estos pasos para instalar MongoDB Community Edition usando el administrador de paquetes yum.
Configura el repositorio.
Cree un archivo /etc/yum.repos.d/mongodb-org-7.0.repo para que pueda instalar MongoDB directamente usando 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
También puedes descargar los archivos .rpm directamente desde el repositorio de MongoDB. Las descargas están organizadas por versión de Red Hat/CentOS (por ejemplo, 9), luego la versión de lanzamiento de MongoDB (p. ej. 7.0), luego arquitectura (p. ej., x86_64).
Instala el servidor de MongoDB Community.
Para instalar la última versión estable de MongoDB, emita el siguiente comando:
sudo yum install -y mongodb-org
Para instalar una versión específica de MongoDB, indica cada paquete de componentes individualmente y agrega el número de versión al nombre del paquete.
sudo yum install -y \ mongodb-org-7.0.24 \ mongodb-org-database-7.0.24 \ mongodb-org-server-7.0.24 \ mongodb-mongosh \ mongodb-org-mongos-7.0.24 \ mongodb-org-tools-7.0.24 \ mongodb-org-database-tools-extra-7.0.24
Nota
yum Actualiza automáticamente los paquetes cuando hay nuevas versiones disponibles. Si desea evitar las actualizaciones de MongoDB, fije el paquete añadiendo la siguiente directiva exclude a su archivo /etc/yum.conf:
exclude=mongodb-org,mongodb-org-database,mongodb-org-server,mongodb-mongosh,mongodb-org-mongos,mongodb-org-tools
Ejecute MongoDB Community Edition
ulimit
La mayoría de los sistemas operativos similares a Unix limitan los recursos del sistema que un proceso puede utilizar. Estos límites pueden tener un impacto negativo en la operación de MongoDB y deben ajustarse. Se debe consultar Configuraciones de UNIX ulimit para implementaciones autogestionadas y conocer las configuraciones recomendadas para la plataforma.
Nota
Si el valor ulimit para el número de archivos abiertos es inferior a 64000, MongoDB genera una advertencia de inicio.
Rutas de directorio
Para usar directorios por defecto
Por defecto, MongoDB se ejecuta utilizando la cuenta de usuario mongod y emplea los siguientes directorios por defecto:
/var/lib/mongo(el directorio de datos)/var/log/mongodb(el directorio de registros)
El administrador de paquetes crea los directorios por defecto durante la instalación. El propietario y el nombre del grupo son mongod.
Para usar directorios no por defecto
Para utilizar un directorio de datos y/o un directorio de registros diferentes a los directorios por defecto:
Cree el nuevo directorio o directorios.
Edite el archivo de configuración
/etc/mongod.confy modifique los siguientes campos en consecuencia:storage.dbPathpara especificar una nueva ruta de directorio de datos (p. ej.,/some/data/directory)systemLog.pathpara especificar una nueva ruta de entrada de registro (por ejemplo,/some/log/directory/mongod.log)
Asegúrese de que el usuario que ejecuta MongoDB tenga acceso al directorio o a los directorios:
sudo chown -R mongod:mongod <directory> Si cambia el usuario que ejecuta el proceso de MongoDB, debe conceder al nuevo usuario acceso a estos directorios.
Configura SELinux si corresponde. Consulta Configurar SELinux.
Configure SELinux
A partir de MongoDB 5.0, está disponible una nueva política de SELinux para las instalaciones de MongoDB que:
Utilice un instalador
.rpm.Utilice los ajustes de configuración por defecto.
Ejecute en RHEL7 o posterior.
Para las instalaciones de MongoDB Enterprise que utilizan autenticación LDAP, se deben implementar las siguientes políticas SELinux adicionales:
Para implementaciones que utilizan autenticación LDAP mediante bibliotecas del sistema operativo, MongoDB debe tener acceso a los
tcontext=system_u:object_r:ldap_port_t:s0puertos LDAP. Puede habilitar el accesosetsebool -P authlogin_nsswitch_use_ldap 1ejecutando.Para las implementaciones que utilicen la autenticación LDAP mediante saslauthd, debe habilitar el modo clúster ejecutando
sudo setsebool -P daemons_enable_cluster_mode 1.
Si su instalación no cumple con estos requisitos, consulte las Instrucciones de SELinux para los .tgz paquetes.
Nota
Si su implementación de MongoDB utiliza configuraciones personalizadas para cualquiera de los siguientes:
No puede usar la política SELinux proporcionada por MongoDB. Una alternativa es crear una política SELinux personalizada; sin embargo, una política personalizada mal escrita puede ser menos segura o impedir mongod el funcionamiento de su instancia.
Instale la política de SELinux
Asegúrese de que tiene instalados los siguientes paquetes:
gitmakecheckpolicypolicycoreutilsselinux-policy-devel
sudo yum install git make checkpolicy policycoreutils selinux-policy-devel Descargue el repositorio de políticas.
git clone https://github.com/mongodb/mongodb-selinux Compile la política.
cd mongodb-selinux make Aplique la política.
sudo make install
Importante
Característica incompatible con versiones anteriores
A partir de MongoDB 5.1, debe ejecutar el siguiente comando desde el directorio en el que se clonó previamente la política SELinux antes de poder revertir a una versión anterior de MongoDB:
sudo make uninstall
Consideraciones de la política de SELinux
La política de SELinux está diseñada para funcionar con la configuración que resulta de una instalación estándar del paquete MongoDB
.rpm. Consulta los supuestos de instalación estándar para más detalles.La política de SELinux está diseñada para servidores
mongod. No se aplica a otros demonios o herramientas de MongoDB, tales como:La política de referencia proporcionada por el proyecto SELinux incluye una macro
mongodb_admin. Esta macro no se incluye en la política de MongoDB SELinux. Un administrador en el dominiounconfined_tpuede gestionarmongod.Para desinstalar la política, diríjase al directorio donde descargó el repositorio de políticas y ejecute:
sudo make uninstall
Procedimiento
Se debe seguir estos pasos para ejecutar MongoDB Community Edition en el sistema. Estas instrucciones asumen que se está utilizando la configuración por defecto.
Sistema de inicialización
Para ejecutar y gestionar el proceso de mongod, se usará el sistema de inicialización incorporado del sistema operativo. Las versiones recientes de Linux tienden a usar systemd (que utiliza el comando systemctl), mientras que las versiones más antiguas de Linux tienden a usar System V init (que utiliza el comando service).
Si no está seguro de qué sistema de inicialización utiliza su plataforma, ejecute el siguiente comando:
ps --no-headers -o comm 1
Luego, seleccione la pestaña adecuada a continuación según el resultado:
systemd- selecciona la pestaña systemd (systemctl) a continuacióninit- selecciona la pestaña System V Init (service) a continuación.
Inicia MongoDB.
Puedes iniciar el proceso mongod emitiendo el siguiente comando:
sudo systemctl start mongod
Si recibe un error similar al siguiente al iniciar mongod:
Failed to start mongod.service: Unit mongod.service not found.
Ejecute primero el siguiente comando:
sudo systemctl daemon-reload
Luego ejecuta de nuevo el comando de inicio mencionado arriba.
Verifica que MongoDB se haya iniciado correctamente.
Puedes verificar que el proceso mongod ha comenzado correctamente emitiendo el siguiente comando:
sudo systemctl status mongod
Puedes asegurarte opcionalmente de que MongoDB se inicie después de un reinicio del sistema emitiendo el siguiente comando:
sudo systemctl enable mongod
Detenga MongoDB.
Según sea necesario, puedes detener el proceso mongod ejecutando el siguiente comando:
sudo systemctl stop mongod
Reinicia MongoDB.
Puedes reiniciar el proceso mongod emitiendo el siguiente comando:
sudo systemctl restart mongod
Puedes seguir el estado del proceso para detectar errores o mensajes importantes observando la salida en el archivo /var/log/mongodb/mongod.log.
Comienza a utilizar MongoDB.
Inicia una sesiónmongosh en la misma máquina host que el mongod. Puedes ejecutar mongosh sin opciones de línea de comandos para conectarse a un mongod que se ejecuta en su localhost con el puerto por defecto 27017.
mongosh
Para obtener más información sobre cómo conectarse usando mongosh, por ejemplo, para conectarse a una instancia mongod que se ejecuta en un host y/o puerto diferente, consulta la documentación de mongosh.
Para ayudarle a empezar a usar MongoDB, MongoDB provee Guías para comenzar para varias ediciones de controladores. Para la documentación del controlador, consulte Comience a desarrollar con MongoDB.
Inicia MongoDB.
Puedes iniciar el proceso mongod emitiendo el siguiente comando:
sudo service mongod start
Verifica que MongoDB haya iniciado correctamente
Puedes verificar que el proceso mongod se ha iniciado correctamente comprobando el contenido de la entrada de registro en /var/log/mongodb/mongod.log para una lectura de línea
[initandlisten] waiting for connections on port <port>
donde <port> es el puerto configurado en /etc/mongod.conf, 27017 por defecto.
Puedes asegurarte opcionalmente de que MongoDB se inicie después de un reinicio del sistema emitiendo el siguiente comando:
sudo chkconfig mongod on
Detenga MongoDB.
Según sea necesario, puedes detener el proceso mongod ejecutando el siguiente comando:
sudo service mongod stop
Reinicia MongoDB.
Puedes reiniciar el proceso mongod emitiendo el siguiente comando:
sudo service mongod restart
Puedes seguir el estado del proceso para detectar errores o mensajes importantes observando la salida en el archivo /var/log/mongodb/mongod.log.
Comienza a utilizar MongoDB.
Inicia una sesiónmongosh en la misma máquina host que el mongod. Puedes ejecutar mongosh sin opciones de línea de comandos para conectarse a un mongod que se ejecuta en su localhost con el puerto por defecto 27017.
mongosh
Para obtener más información sobre cómo conectarse usando mongosh, por ejemplo, para conectarse a una instancia mongod que se ejecuta en un host y/o puerto diferente, consulta la documentación de mongosh.
Para ayudarle a empezar a usar MongoDB, MongoDB provee Guías para comenzar para varias ediciones de controladores. Para la documentación del controlador, consulte Comience a desarrollar con MongoDB.
Desinstale MongoDB Community Edition
Para remover completamente MongoDB de un sistema, debe remover las aplicaciones de MongoDB, los archivos de configuración y cualquier directorio que contenga datos y registros. La siguiente sección le presenta una guía a través de los pasos necesarios.
Advertencia
Este proceso completamente removerá MongoDB, su configuración y todas las bases de datos. Este proceso no es reversible, así que asegúrese de que toda su configuración y datos estén respaldados antes de continuar.
Detenga MongoDB.
Detenga el proceso de mongod emitiendo el siguiente comando:
sudo service mongod stop
Información Adicional
Vinculación a localhost por defecto
By default, MongoDB launches with bindIp set to 127.0.0.1, which binds to the localhost network interface. This means that the mongod can only accept connections from clients that are running on the same machine. Remote clients will not be able to connect to the mongod, and the mongod will not be able to initialize a replica set unless this value is set to a valid network interface which is accessible from the remote clients.
Este valor se puede configurar:
en el archivo de configuración de MongoDB con
bindIp, omediante el argumento de la línea de comandos
--bind_ip
Advertencia
Antes de vincular la instancia a una dirección IP de acceso público, se debe asegurar el clúster contra accesos no autorizados. Para obtener una lista completa de recomendaciones de seguridad, se debe consultar Checklist de seguridad para implementaciones autogestionadas. Como mínimo, se debe considerar habilitar la autenticación y reforzar la infraestructura de red.
Para obtener más información sobre cómo configurar bindIp, consulta Vinculación de IP en Implementaciones Autogestionadas.
Paquetes de MongoDB Community Edition
MongoDB Community Edition está disponible en su propio repositorio dedicado y contiene los siguientes paquetes oficialmente soportados:
Nombre del paquete | Descripción | ||||||
|---|---|---|---|---|---|---|---|
| Un | ||||||
| Un
| ||||||
| Contiene el MongoDB Shell ( | ||||||
| Un
|