Cargando



Cómo instalar Glances para monitorizar en remoto por web Linux

Descubre cómo puedes monitorear con Glances en remoto en sistemas Linux y cómo instalarlo.


ene 29 2018 17:36
Avanzado
Total de Apartados : 3

El monitoreo frecuente de los sistemas que administramos nos permite estar un paso delante de los problemas que puedan presentarse a corto, mediano o largo plazo ayudando de una forma totalmente integral a la administración general.

 

Existen cientos de herramienta que nos facilitan ver el estado de software y hardware con sus diferentes parámetros pero en esta oportunidad hablaremos de una utilidad llamada Glances la cual va mucho más allá permitiéndonos gestionar el equipo no solo localmente sino también a través de cualquier navegador web, dispositivo móvil u otro PC haciéndola una solución integral ya que en algunas ocasiones no podremos estar frente al equipo a analizar y ella se convierte en la solución ideal para acceder remotamente y ve el comportamiento del sistema.

 

Qué es Glances
Glances es una herramienta de monitoreo integral del sistema operativo que puede ser ejecutada en un ambiente de multiplataforma y ha sido escrita en Python para su optimo desarrollo.

 

El objetivo con el cual fue creada Glances es ofrecer al administrador o usuario el máximo de información posible en un mínimo espacio usando la interfaz curses, local, o basada en la web. Es importante mencionar que estos datos se pueden adaptar dinámicamente dependiendo del tamaño de la interfaz de usuario evitando así omitir detalles.

 

Una de las características sobresalientes de Glances es que tiene la habilidad para funcionar en modo cliente / servidor. La monitorización remota del servidor se puede ejecutar a través del terminal, la interfaz web o la API (XML-RPC y RESTful).

 

Las estadísticas también se pueden exportar a archivos o bases de datos externas para una posterior gestión administrativa.

 

Como hemos mencionado, Glances está escrito en Python y hace uso de bibliotecas para obtener información del sistema seleccionado. Está basado en una arquitectura abierta donde los desarrolladores pueden agregar nuevos complementos o exportar módulos aumentando as la capacidad de uso y análisis de la utilidad.

 

Qué analiza Glances
Los componentes que analiza Glances son:
  • CPU
  • Memoria
  • Tiempo de carga
  • Lista de procesos
  • Interfaz de red
  • Discos I/O
  • IRQ / Raid
  • Sensores
  • Archivos de sistemas y carpetas
  • Docker
  • Monitor
  • Alertas
  • Información del sistema
  • Tiempo de inicio de sesión
  • Quicklook (CPU, MEM, LOAD)

 

Características de Glances
Al usar Glances tendremos las siguientes ventajas:
  • Glances puede ser ejecutada en múltiples plataformas como GNU / Linux, FreeBSD, OS X y Windows.
  • Glances cuenta con un servidor XML-RPC y una API RESTful JSON la cual habilita que esta utilidad sea usada en un software adicional permitiendo así la administración remota.
  • Incluye una interfaz de usuario web la cual nos permite acceder a la información desde cualquier dispositvo.
  • Al usar Glances, será posible exportar todas las estadísticas del sistema a formatos como CSV, InfluxDB, Cassandra, OpenTSDB, StatsD, ElasticSearch o RabbitMQ. Glances también ofrece un tablero de Grafana dedicado a los datos.

 

 

Requisitos para usar Glances
Los requisitos básicos para usar Glances son:
python 2.7 o >=3.3
psutil>=2.0.0
Algunas dependencias adicionales son:
bernhard (para el módulo de exportación de Riemann)
bottle (para el modo de servidor web)
cassandra-driver (para el módulo de exportación de Cassandra)
couchdb (para el módulo de exportación CouchDB)
docker (para el soporte de monitoreo Docker), solo en Linux
elasticsearch (para el módulo de exportación Elastic Search)
hddtemp (para soporte de monitoreo de temperatura HDD), solo en Linux
influxdb (para el módulo de exportación InfluxDB)
kafka-python (para el módulo de exportación de Kafka)
matplotlib (para soporte gráfico / gráfico)
netifaces (para el plugin de IP)
nvidia-ml-py3 (para el plugin GPU)
pika (para el módulo de exportación RabbitMQ / ActiveMQ)
potsdb (para el módulo de exportación OpenTSDB)
prometheus_client (para el módulo de exportación Prometheus)
py-cpuinfo (para el módulo de información de CPU Quicklook)
pymdstat (para compatibilidad con RAID), solo en Linux
pysnmp (para soporte de SNMP)
pystache (para la función de acción de script)
pyzmq (para el módulo de exportación ZeroMQ)
requests (para los puertos, complementos de la nube y módulo de exportación restful)
scandir (para el plugin Folders), Solo para Python <3.5
statsd (para el módulo de exportación StatsD)
wifi (para el plugin wifi), solo en Linux
zeroconf (para el modo de autodetección)

 


1. Instalar Glances en Linux

 

Paso 1

Para ejecutar la utilidad Glances en el modo de servidor web, este debe ser instalado junto con el módulo de Python Bootle, el cual es un micro-framework WSGI rápido, simple y liviano, podremos ejecutar alguna de las siguientes opciones:
sudo apt install glances python-bottle (Debian/Ubuntu)
sudo yum install glances python-bottle (RHEL/CentOS)
sudo dnf install glancespython-bottle (Fedora 22+)

 

Paso 2

Alternativamente tenemos las siguientes opciones de instalación:
  • Si usamos PIP podremos ejecutar lo siguiente:
sudo pip install bottle
  • Si deseamos instalar dependencias usando este método podremos ejecutar:
pip install glances[action,browser,cloud,cpuinfo,chart,docker,export,folders,gpu,ip,raid,snmp,web,wifi]
Paso 3

Para actualizar Glances usaremos:
pip install --upgrade glances
pip install --upgrade glances

Paso 4

Para instalar ambas dependencias y la última versión lista para producción de Glances debemos ejecutar alguno de los siguientes comandos:
curl -L https://bit.ly/glances | /bin/bash
wget -O- https://bit.ly/glances | /bin/bash
Nota
Esta opción solo aplica en ambientes GNU/Linux.

 

Paso 5

Si somos amantes de usar Docker, Glances cuenta con un contenedor disponible el cual incluye la versión HEAD de desarrollo, si deseamos usar este método ejecutaremos:
  • Obtener el contenedor de Glances:
docker pull nicolargo/glances
  • Ejecutar el contenedor en modo consola:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:ro --pid host --network host -it docker.io/nicolargo/glances
Paso 6

Si contamos con otros sistemas operativos podremos ejecutar lo siguiente:

 

FreeBSD
pkg install py27-glances (Instala los binarios de Glances)
cd /usr/ports/sysutils/py-glances/ (Instala Glances desde Ports)
make install clean

 

macOS
brew install glances (Instalación usando HomeBrew)
sudo port install glances (Instalación usando MacPors)

 

Windows
Debemos contar con Python instalado en el sistema y ejecutar lo siguiente:
pip install glances

 

Android
Necesitaremos un dispositivo rooteado y la aplicación Termux la cual obtenemos gratuitamente en el siguiente enlace:

 

 

Luego ejecutaremos lo siguiente desde ella:

apt update
apt upgrade
apt install clang python python-dev
pip install bottle
pip install glances
Finalmente, si deseamos instalar Glances desde un recurso podremos ejecutar:
wget https://github.com/nicolargo/glances/archive/vX.Y.tar.gz -O - | tar xz
cd glances-*
python setup.py install

 

 


2. Habilitar el firewall para Glances en Linux


Debido a que Glances puede ser accedido a través de la web es necesario que concedamos el permiso al puerto para el acceso web.

 

Paso 1

Si usamos Firewalld debemos ejecutar las siguientes líneas:
sudo firewall-cmd --permanent --add-port=61208/tcp
sudo firewall-cmd –reload
Paso 2

En caso de usar UFW podremos ejecutar lo siguiente:
sudo ufw status
sudo ufw enable
sudo ufw allow 61208/tcp
sudo ufw reload

 

 


3. Usar Glances en Linux

 

Paso 1

Glances puede ser ejecutado de forma local o remota, para ejecutarlo de forma local basta con usar la siguiente línea:
Glances
Paso 2

Al pulsar Enter veremos un completo resumen de los parámetros del sistema:

 

 

 

Paso 3

Si deseamos ejecutar el modo cliente/servidor debemos usar la siguiente línea:
glances -s
Paso 4

Para habilitar el modo de acceso web, ideal en este tutorial, debemos ejecutar en segundo plano el siguiente comando:
glances -w

 

Paso 5

Esta acción debemos dejarla en ejecución para habilitar el acceso remoto, y como vemos, la sintaxis para acceder es:
http://IP_Servidor:61208/
Paso 6

Si accedemos desde un navegador, en este caso Google Chrome, veremos toda la información de la distribución donde se ha instalado Glances:

 

 

 

Paso 7

Aun podemos acceder desde nuestro Smartphone:

 

6-glances-android.png

 

Paso 8

Como podemos ver, cada categoría que abarca Glances será desplegada allí.
Glances usa una escala de colores para determinar la prioridad o estado de los servicios los cuales son:

 

6b-tabla-Glances-usa-una-escala-de-colores.png

 

Paso 9

Las opciones disponibles con Glances son:

 

m
Ordena los procesos por MEM%.

 

p
Ordena los procesos por nombre.

 

c
Ordena los procesos por CPU%.

 

d
Muestra u oculta estadísticas de E/S del disco.

 

a
Ordena los procesos automáticamente.

 

f
Muestra u oculta el sistema de archivos statshddtemp.

 

j
Ordena los procesos por tasa de E/S.

 

s
Muestra u oculta las estadísticas de los sensores.

 

y
Muestra u oculta las estadísticas de hddtemp.

 

l
Muestra u oculta los registros.

 

n
Muestra u oculta las estadísticas de la red.

 

x
Elimina las advertencias y registros críticos.

 

h
Muestra u oculta la pantalla de ayuda.

 

q
Sale de la utilidad.

 

w
Elimina registros de advertencia.

 

Hemos visto como esta práctica utilidad será de gran ayuda para las tareas de administración en múltiples sistemas operativos.

 

En este tutorial cómo habilitar escritorio remoto con línea de comandos o utilizando la interfaz gráfica en Linux.


¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

Hola! Si no encuentras algún tutorial en el buscador de Solvetic, Solicítalo Aquí

X