LinuxParty

NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado
 

Podría decirse que Docker es una de las herramientas de DevOps más apreciadas que agilizan el desarrollo, la implementación y el envío de aplicaciones dentro de contenedores.

El concepto de contenedorización implica aprovechar las imágenes de contenedores. Estos son paquetes ejecutables pequeños, livianos e independientes que incluyen todo lo que se necesita para ejecutar una aplicación, incluido el código fuente, las bibliotecas y las dependencias, y los archivos de configuración.

Al hacerlo, la aplicación puede ejecutarse en casi cualquier entorno informático; infraestructura de TI tradicional, nube y una gran variedad de versiones de Linux/UNIX.

El monitoreo de contenedores ayuda a los equipos de operaciones a identificar problemas subyacentes y resolverlos de manera oportuna. El monitoreo de contenedores abarca la captura de métricas básicas como el uso de la CPU , la utilización de la memoria , el tamaño del contenedor y la utilización del ancho de banda, por mencionar algunos. Además, puede recopilar registros en tiempo real que son útiles para depurar y alertar al equipo de TI sobre cuándo escalar.

Zabbix es una popular herramienta de monitoreo de infraestructura de TI que vigila casi todos los elementos de su entorno, incluidos los dispositivos físicos, como servidores y dispositivos de red, como enrutadores y conmutadores. También puede monitorear aplicaciones, servicios y bases de datos.

En esta guía, le mostraremos cómo puede monitorear contenedores Docker usando la herramienta de monitoreo Zabbix en Linux.

Requisitos

Esto es lo que necesita antes de comenzar:

Primero, asegúrese de tener dos nodos: el primer nodo es el servidor Zabbix. Este es el nodo desde el cual monitorearemos el servidor Docker remoto. Tenemos un artículo sobre:

Instalando y configurando Zabbix (Server y Agente) en Debian Etch

El segundo nodo es el servidor Docker en el que está instalado Docker . Este es el nodo desde donde ejecutaremos los contenedores Docker y monitorearemos la actividad de los contenedores.

A continuación, asegúrese de tener acceso SSH a su nodo de servidor Docker con un usuario sudo ya configurado.

Con su configuración en su lugar, ¡ahora puede arremangarse!

Paso 1: Instale Zabbix-Agent en Linux

Para monitorear los contenedores de Docker en el servidor remoto, debe instalar un agente Zabbix , que es un agente de monitoreo que se implementa en un nodo de destino para monitorear activamente las métricas del sistema y otras aplicaciones.

Primero, debe instalar el repositorio Zabbix en el nodo Docker .

----------- En Ubuntu 20.04 -----------
$ sudo wget https://repo.zabbix.com/zabbix/5.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_5.4-1+ubuntu20.04_all.deb
$ sudo dpkg -i zabbix-release_5.4-1+ubuntu20.04_all.deb
$ sudo apt update
$ sudo apt install zabbix-agent2
----------- En distribución basada en RHEL ----------- 
$ sudo rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm
$ sudo dnf update
$ sudo dnf install zabbix-agent
----------- En Debian 11 -----------
$ sudo wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1%2Bdebian11_all.deb
$ sudo dpkg -i zabbix-release_5.4-1%2Bdebian11_all.deb
$ sudo apt update
$ sudo apt install zabbix-agent2
----------- En Debian 10 -----------
$ sudo wget https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1%2Bdebian10_all.deb
$ sudo dpkg -i zabbix-release_5.4-1%2Bdebian10_all.deb
$ sudo apt update
$ sudo apt install zabbix-agent2

Paso 2: configurar Zabbix-Agent en Linux

De forma predeterminada, el agente de Zabbix está configurado para enviar métricas al servidor de Zabbix en el mismo host en el que está instalado. Dado que nuestro objetivo es monitorear los contenedores docker en el servidor remoto, se requieren algunas configuraciones adicionales.

Por lo tanto, acceda al archivo de configuración del agente Zabbix .

$ sudo vim /etc/zabbix/zabbix_agent2.conf

El archivo de configuración contiene ajustes que especifican la dirección a la que se envían las métricas, el puerto utilizado para las conexiones y mucho más. En su mayor parte, la configuración predeterminada funcionará bien.

Para configurar el agente Zabbix para que envíe métricas al servidor Zabbix , localice la directiva que está configurada para enviar métricas a la dirección de loopback, o simplemente, el mismo sistema host.

Server=127.0.0.1

Configure la dirección para reflejar la dirección del servidor Zabbix

Server=zabbix-server-IP

Además, vaya a la sección " Comprobaciones activas " y cambie la directiva para que apunte a la dirección IP del servidor Zabbix.

ServerActive=zabbix-servidor-IP

Asegúrese también de ajustar el nombre de host del servidor Docker en consecuencia. El nombre de host de mi servidor Docker es Ubuntu20 .

Hostname=Ubuntu20

Luego guarde los cambios y salga del archivo de configuración de Zabbix.

Para que el agente de Zabbix vigile los contenedores de Docker, debe agregar el usuario de Zabbix, que está instalado de forma predeterminada, al grupo de Docker.

$ sudo usermod -aG docker zabbix

Para aplicar los cambios realizados en el archivo de configuración, reinicie el servicio Zabbix-agent y permita que se inicie al iniciar el sistema.

$ sudo systemctl restart zabbix-agent2
$ sudo systemctl enable zabbix-agent2

Confirme el estado de ejecución del agente Zabbix de la siguiente manera.

$ sudo systemctl status zabbix-agent2 

Verifique el estado del agente de Zabbix

El agente de Zabbix escucha en el puerto 10050 . Si tiene un firewall UFW o firewalld en ejecución, considere abrir el puerto de la siguiente manera.

----------- En el cortafuegos UFW -----------
$ sudo ufw allow 10050/tcp
$ sudo ufw reload
----------- En cortafuegos ----------- 
$ sudo firewall-cmd --add-port=10050/tcp --permanent
$ sudo firewall-cmd --reload

¡Estupendo! Ahora estamos en la mitad del camino. El agente de Zabbix ahora puede enviar las métricas del contenedor de Docker al servidor de Zabbix.

En el siguiente paso, agregaremos el servidor Docker a la interfaz web de Zabbix y monitorearemos los contenedores Docker.

Paso 3: agregue Docker al servidor Zabbix para monitoreo

Para monitorear un host remoto, debe agregarlo al tablero del servidor Zabbix a través de un navegador. Zabbix proporciona innumerables plantillas para varios servicios y aplicaciones. Vincularemos la plantilla apropiada al host de Docker para monitorear específicamente los contenedores. Pero primero, acceda a la página de inicio de sesión del servidor Zabbix.

http://zabbix-ip-del-servidor/zabbix

Iniciar sesión

Iniciar sesión

Una vez que haya iniciado sesión, vaya a la barra lateral derecha y haga clic en ' Configuración ' y luego en ' Hosts '.

Configuración del servidor Zabbix

Configuración del servidor Zabbix

En la esquina superior derecha, haga clic en ' Crear host '.

Zabbix Crear host

Zabbix Crear host

Complete los detalles del servidor Docker , como el nombre de host y el nombre visible . Para Grupos, escriba ' Docker Groups ' (cada host debe estar asociado con un grupo).

Debajo de la etiqueta ' Interfaces ' haga clic en ' Agregar ' y en el menú que aparece seleccione ' Agente '.

Agregar host a la supervisión de Zabbix

Agregar host a la supervisión de Zabbix

A continuación, complete la dirección IP privada del servidor Docker y asegúrese de que el puerto esté configurado en 10050 .

Agregue el servidor Docker a Zabbix

Agregue el servidor Docker a Zabbix

A continuación, haga clic en la pestaña Plantillas , y en la sección ' Vincular nuevas plantillas ', especifique ' Docker by Zabbix agent 2 '. Luego haga clic en el botón ' Agregar '.

Vincular la plantilla de Zabbix a Docker

Vincular la plantilla de Zabbix a Docker

Al hacer clic en el botón Agregar, el host Docker remoto se agregará automáticamente como se indica.

Supervisión de Zabbix Docker

Supervisión de Zabbix Docker

En este punto, el servidor Zabbix ahora está monitoreando su servidor Docker. En el próximo paso, implementaremos un contenedor y verificaremos qué métricas se pueden monitorear.

Paso 4: Supervisar las métricas de Docker en Zabbix Monitoring

Para comenzar a monitorear las métricas de Docker , vamos a lanzar un contenedor de prueba. Entonces, regrese a su servidor Docker e inicie un contenedor.

En este ejemplo, extraeremos una imagen de contenedor de Ubuntu y crearemos un contenedor llamado docker_test_container . Luego obtendremos acceso al shell usando la -itopción. El comando completo para las operaciones es el siguiente.

$ sudo docker run --name docker_test_container -it ubuntu bash

Crear una imagen de contenedor de Ubuntu en Docker

Puede intentar algo ambicioso, como instalar paquetes de software como Apache o MariaDB para generar algunas métricas, como la utilización de la CPU y el tráfico de red.

Ahora regresa al tablero del servidor Zabbix . Haga clic en ' Supervisión ' y luego en ' Hosts '. Pulsa sobre el nombre de tu servidor Docker y en la opción de menú que aparece, selecciona ' Últimos datos '.

Servidores de monitoreo Zabbix

Servidores de monitoreo Zabbix

Después de unos minutos de implementar el contenedor, el servidor Zabbix lo detectará y comenzará a completar algunas estadísticas.

Host acoplable de monitoreo de Zabbix

Host acoplable de monitoreo de Zabbix

También puede ver los gráficos de las diversas métricas del contenedor haciendo clic en las opciones de ' gráficos ' del servidor Docker en la página ' Hosts '. A continuación puede ver las métricas de uso de CPU y memoria.

Supervisión del rendimiento de Docker de Zabbix

Supervisión del rendimiento de Docker de Zabbix

Para simular el bloqueo del contenedor, saldremos inesperadamente del contenedor ejecutando el siguiente comando en el shell del contenedor.

# salida 2

Esto implica que hemos terminado el contenedor con un código de error de 2. Esto se registra dentro de los metadatos del contenedor. Para ver la alerta, vaya a la barra lateral izquierda y haga clic en ' Supervisión ' y luego en ' Panel '.

La alerta se muestra a continuación.

Advertencias de Zabbix Docker

Advertencias de Zabbix Docker

Para corregir el error, simplemente vuelva a iniciar el contenedor.

$ sudo docker start docker_test_container 

Y esto nos lleva al final de esta guía. Lo hemos guiado a través de un procedimiento paso a paso sobre cómo puede monitorear los contenedores Docker utilizando la herramienta de monitoreo Zabbix .

Pin It

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Filtro por Categorías