En semanas anteriores os hable de Photon y de cómo crear contenedores Docker, cuando disponemos de varios contenedores tenemos la necesidad de monitorizarlos, para detectar usos de CPU, Memoria, espacio en disco... Hoy os voy a mostrar cómo podemos monitorizar de forma sencilla nuestros contenedores con cAdvisor.
cAdvisor es un sistema de monitorización de contenedores, desarrollado por Google que tiene soporte nativo para Docker, el cual puede ser usado a través de VMware Photon, sin problemas, su despliegue se realilza a través de un nuevo contenedor de la siguiente forma:
docker run \ --volume=/:/rootfs:ro \ --volume=/var/run:/var/run:rw \ --volume=/sys:/sys:ro \ --volume=/var/lib/docker/:/var/lib/docker:ro \ --publish=8080:8080 \ --detach=true \ --name=cadvisor \ google/cadvisor:latest
Una vez desplegado el contenedor, podemos acceder via web a traves de :8080">:8080">:8080">http://<localhost>:8080 y se abrirá una interfaz bastante sencilla e intuitiva, la cual nos va a mostrar los recursos del sistema y el listado de contendores que tenemos desplegados. En la siguiente imgagen podéis observar los contenedores que tengo desplegados:
Si pulsamos sobre el contenedor de mongodb, que fue el que creamos en el artículo anterior, se nos abrirá una nueva página:
Lo primero de todo, en esta nueva página, nos encontraremos con la configuración de recursos del contenedor, nos aparece la CPU y memoria que tiene configurado nuestro contenedor, en la imagen anterior podemos observar como nuestro contenedor tiene por defecto la configuracion de Memoria y CPU, por lo que usará, en caso de ser necesario, todo los recursos del sistema.
Los contenedores docker son ejecutados cómo procesos del sistema, en la imgaen anterior nos encontramos el uso de dicho proceso como si ejecutasemos el comando ps a través de una consola linux. A nivel gráfico podemos ver el usuario de cada uno de las CPU y de la memoria en tiempo real, bastante interesante para verificar el estado de nuestro contenedor, en la siguiente imagen podéis comprobar dichas gráficas.
A nivel de CPU, vamos a tener una gráfica por cada uno de los cores que puede usar nuestro contenedor, otra a nivel global del uso de CPU, a nivel de memoria veremos el consumo en relación a la memoria total que puede usar nuestro contenedor.
Existen otras gráficas para medir el ancho de banda y uso de red del contenedor, en resumen disponemos de una herramienta totalmente gratuita que de forma sencilla y eficaz nos va a permitir monitorizar nuestros contenedores Docker, a parte del nuestro sistema, asi que si estáis comenzando a implantar Docker en vuestro negocio y usáis entornos VMware, os recomiendo el uso de Photon + Docker + cAdvisor.
Con este post me despido de ustedes hasta Septiembre, que paséis muy buen verano.