Noticias
New Serverspace Centro de datos en Uzbekistán: Tashkent
Serverspace Black Friday
RF
Junio ​​29 2023
Actualizado el 31 de julio de 2025

Cómo supervisar el rendimiento de MongoDB con Grafana y Prometheus Ubuntu

MongoDB Ubuntu Servidor web

La supervisión de recursos es un aspecto esencial de la gestión de cualquier sistema, ya sea un sistema informático, una red o un servidor. Al monitorear los recursos, podemos obtener información valiosa sobre el rendimiento de nuestros sistemas, identificar posibles problemas antes de que se conviertan en problemas críticos y optimizar el uso de los recursos para mejorar el rendimiento y reducir los costos.

Aquí hay algunas razones específicas por las que es importante monitorear los recursos:

  • Optimización del rendimiento — La monitorización de recursos ayuda a identificar cuellos de botella en el rendimiento para que los administradores puedan tomar medidas correctivas para mejorar el rendimiento del sistema. Por ejemplo, si observamos que CPU el uso es constantemente alto, podemos actualizar el hardware o ajustar la distribución de la carga de trabajo para equilibrar la carga de manera más efectiva.
  • Planificación de capacidad La monitorización de recursos proporciona información sobre la capacidad utilizada, lo que permite a los administradores tomar decisiones informadas sobre cuándo añadir más recursos para satisfacer la creciente demanda. Esto ayuda a garantizar que el sistema tenga suficiente capacidad para satisfacer las demandas actuales y futuras.
  • Control de costos — El monitoreo de recursos ayuda a rastrear el uso de recursos, lo que puede ayudar a las organizaciones a identificar oportunidades para reducir costos al optimizar el uso y retirar recursos no utilizados.
  • Seguridad — Los recursos de monitoreo también pueden ayudar a detectar posibles amenazas a la seguridad al brindar visibilidad sobre actividades o patrones inusuales que pueden indicar una violación u otro acceso no autorizado.

En general, la supervisión de recursos es una herramienta esencial para garantizar el rendimiento, la escalabilidad y la seguridad óptimos de los sistemas de TI.

programa para la instalacion

En ese artículo usaremos el paquete para construir ese sistema de monitoreo, alerta y visualización. MongoDB, Graphana, Prometheus proporcionarán una solución interesante para nuestros propósitos. Graphana es un sistema que incluye muchos módulos y formas de su sistema de visualización. Muy cómoda. Prometheus juega un papel igualmente importante: monitorear, alertar y transportar datos. MongoDB es una base de datos común con guardar datos como función principal. ¡Echemos un vistazo a esto!

Instalar y explotar el sistema de monitoreo.

Antes de usar la utilidad principal, actualice y actualice su sistema:

sudo apt update -y && sudo apt dist-upgrade -y
Update OS
Captura de pantalla №1: actualizar el sistema operativo

Para tirar del contenedor necesita registrarse en DockerHub, complete todos los campos necesarios y verifique el correo electrónico para confirmar:

Captura de pantalla №2 — Sitio

Con el siguiente paso, descargue todos los requisitos y el software:

apt install docker.io
Captura de pantalla №3 — Instalar

Luego, debemos iniciar sesión en la cuenta en nuestro servidor mediante el siguiente comando:

docker login
Login
Captura de pantalla №4 — Iniciar sesión

¡No verá la contraseña de escritura, pero se ingresarán todas las letras y símbolos! Necesitamos extraer todos los contenedores necesarios que tienen bibliotecas y aplicaciones de sistema compiladas:

docker pull grafana/grafana && docker pull prom/prometheus && docker pull ranchercharts/bitnami-mongodb-exporter:0.8.0-debian-9-r4
Pulling software
Captura de pantalla №5 — Software de extracción

Después de esto, necesitamos crear dependencias entre la base de datos y el sistema de monitoreo, creemos un archivo de configuración en la carpeta:

cd / && mkdir /conf && nano conf/prometheus.yml
Folder
Captura de pantalla №6 — Carpeta

Introduzca en los archivos de configuración los siguientes parámetros:

global:
scrape_interval: 15s # how often to scrape targets by default
evaluation_interval: 15s # how often to evaluate rules by default

scrape_configs:
- job_name: 'mongodb-exporter'
scrape_interval: 5s
static_configs:
- targets: ['mongo-exporter:9216']

Text for config
Captura de pantalla №7 — Texto para configuración

En esos parámetros hemos indicado MongoDB y el puerto para la comunicación y exportación de datos. Pulsar combinación de botones Ctrl + O  para guardar configuración y Ctrl + X  para salir del editor de texto. Ahora ejecute el contenedor con nuestros módulos:

sudo docker run -d --name=grafana -p 3000:3000 grafana/grafana
sudo docker run -d --name=prometheus -p 9090:9090 prom/prometheus
sudo docker run -d --name mongodb-exporter -p 9216:9216 ranchercharts/bitnami-mongodb-exporter:0.8.0-debian-9-r4
Run container
Captura de pantalla №8 — Ejecutar contenedor

En la salida, veremos la ID de cada contenedor en proceso. Vamos a comprobarlo:

docker ps -a
Check
Captura de pantalla n.º 9 — Comprobar

Si todo el proceso está bien, entonces podemos continuar e instalar el shell gráfico para el sistema a través del comando:

apt-get install ubuntu-gnome-desktop
Install Gnome
Captura de pantalla №10 — Instalar Gnome

Sea paciente y espere el final de la instalación de todo el shell y luego reinicie el sistema mediante el comando:

reboot

Después de que este servidor se reinicie y veremos el panel para iniciar sesión, escriba sus credenciales e ingrese:

Panel login
Captura de pantalla №11 — Inicio de sesión del panel

Para nuestros propósitos, necesitamos instalar el navegador Firefox y esperar el final de la instalación:

sudo apt install firefox
Install Firefox
Captura de pantalla n.º 12 — Instalar Firefox

Ejecute en el navegador de escritorio para el siguiente paso:

Run FireFox
Captura de pantalla n.º 13: Ejecutar FireFox

Vaya a la HTTP://localhost:3000 en la barra de búsqueda. Esa URL abre Graphana, escriba el nombre de usuario y la contraseña con la configuración predeterminada Inicio de sesión: admin y Contraseña: admin. Ingrese las credenciales:

Login Graphana
Captura de pantalla №14 — Iniciar sesión en Graphana

Bien, ya estamos dentro. Vaya a la pestaña Administración y elija Agregar datos, luego puede ingresar la URL para Prometheus http://localhost:9090:

Main window
Captura de pantalla №15 — Ventana principal

Haga clic en el botón Añadir fuente de datos:

Button for add
Captura de pantalla №16 — Botón para agregar

¡Revisa el mensaje arriba de esta fuente y lo conseguimos! ¡El sistema fue instalado!

 Add sources
Captura de pantalla n.º 17 — Añadir fuentes

Conclusión

En conclusión, la monitorización de recursos es crucial para la gestión eficaz de cualquier sistema. Mediante el seguimiento de recursos tales como CPU uso, ancho de banda y costo, las organizaciones pueden optimizar el rendimiento de sus sistemas de TI e identificar posibles amenazas a la seguridad. En este artículo, analizamos cómo configurar un sistema de monitoreo de recursos utilizando herramientas como Prometheus, MongoDB y Grafana. Si sigue las instrucciones de esta guía, puede instalar y utilizar fácilmente estas herramientas para crear un sistema eficaz de supervisión, alerta y visualización para su organización. Al instalar el sistema correcto, puede asegurarse de que su infraestructura de TI funcione sin problemas, de manera confiable y con la máxima eficiencia.

FAQ - Preguntas frecuentes sobre la monitorización de MongoDB con Grafana y Prometheus

  • P1: ¿Por qué es importante la monitorización de recursos para MongoDB y los servidores en general?
    La monitorización de recursos ayuda a realizar un seguimiento de métricas de rendimiento clave como CPU, memoria, E/S de disco y uso de red. Permite la detección temprana de cuellos de botella, garantiza la estabilidad del sistema, previene interrupciones y ayuda a optimizar la asignación de recursos y los costos.
  • P2: ¿Qué funciones desempeñan Grafana y Prometheus en esta configuración de monitorización?
    Prometheus recopila y almacena métricas de los servicios monitorizados, incluido MongoDB. Grafana se conecta a Prometheus y proporciona una interfaz web intuitiva para visualizar estas métricas mediante paneles y alertas.
  • P3: ¿Puedo monitorear MongoDB sin usar? Docker contenedores?
    Sí, puede instalar los exportadores Prometheus, Grafana y MongoDB de forma nativa en su Ubuntu sistema, pero usando Docker Simplifica la implementación, el aislamiento y la gestión.
  • P4: ¿Con qué frecuencia Prometheus recopila datos de MongoDB?
    En la configuración de ejemplo, Prometheus raspa las métricas de MongoDB cada 5 segundos, pero puedes ajustar scrape_interval en el archivo prometheus.yml según tus necesidades.
  • P5: ¿Cuáles son los problemas comunes que hay que tener en cuenta al configurar este sistema de monitoreo?
    Asegúrese de que la conectividad de red entre contenedores o servicios sea correcta, la exposición correcta de los puertos y la configuración precisa de los destinos en Prometheus. Además, proteja el acceso a los paneles de Grafana para evitar la visualización no autorizada.
  • P6: ¿Cómo puede la monitorización ayudar a mejorar el rendimiento de MongoDB?
    Al analizar las métricas recopiladas, los administradores pueden identificar consultas lentas y de alto rendimiento. CPU o uso de memoria, picos de conexión o cuellos de botella en el disco, lo que permite tomar decisiones proactivas de ajuste o escalamiento.
  • P7: ¿Es necesario instalar un entorno de escritorio en Ubuntu ¿Ejecutar Grafana y Prometeo?
    No, Grafana y Prometheus se ejecutan como servicios web accesibles mediante un navegador. El entorno de escritorio es opcional si prefiere interactuar localmente en lugar de remotamente.
Votar:
5 de 5
Calificación promedio: 5
Calificado por: 3
1101 CT Ámsterdam Países Bajos, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300

También le podría interesar...

Utilizamos cookies para hacer que su experiencia en el Serverspace mejor. Al continuar navegando en nuestro sitio web, usted acepta nuestros
Uso de Cookies además Política de privacidad.