Monitoriza tu servidor con Glance

glances

Al igual que conocéis Htop, en está ocasión vamos a ver que es y como se instala Glance.

Glance es una herramienta de monitoreo basado en CLI curses para GNU/Linux y BSD OS. Glance es mucho más completo que el ultra conocido HTOP.
Glances utiliza la librería PsUtil para obtener la información del sistema. Está desarrollada en Phyton.

glance-screenshot

Instalación

Pre-requisitos:

  • Python 2.6+ (no probado con Python 3+)
  • build-essential (para instalación vía Pypi y setup.py)
  • python-dev (para instalación vía Pypi)
  • python-setuptools (para instalación vía setup.py)
  • python-psutil 0.4.1+ (reemplaza las librería anteriores libstatgrab’s lib)
  • python-jinja2 2.0+ (opcional para exportar a HTML)
  • pysensors (librería Python para estadísticas de sensores)

Desde administrador de paquetes (la manera mas fácil)

Paquetes existen para Debian (SID), Arch, Fedora, RedHat, FreeBSD

Desde PyPi (forma facil y multiplatforma)

PyPi es una administrador de paquetes no oficial.

Primero necesitas instalar pypi en tu sistema. Por ejemplo en Ubuntu/Xubuntu:


sudo apt-get install python-pip build-essential python-dev

Luego, instalar la ultima version de Glance:


sudo pip install Glances

Esta instalación es básica para servidores y/o equipos con sistemas Debian/Ubuntu. Para instalar Glance en servidores basados en RHEL/Centos hay que instalar repositorios EPEL y después hacer


yum -y install python-pip

Ejecucion de Glance

En modo Standalone

Si quiere monitorear la maquina local, ejecuta:

glance

En modo cliente/servidor

Si quieres monitorear un maquina remotamente (llamado servidor) desde otra (llamada cliente)

Ejecuta este comando en el servidor:


server$ glances -s

Y este en el cliente:


client$ glances -c @server

Donde @server es la IP del servidor o el nombre del servidor

Glance utiliza el esquema de servicio XML/RPC y puede ser usado por otro software cliente

Guía de usuario

Por defecto las estadísticas se actualizan cada segundo, para cambiar esto puede usar la opción -t. Por ejemplo para definir la actualización cada 5 segundos seria:

glances -t 5

Las estadisticas importantes estan coloreadas como:

  • VERDE: conteo de estadísticas es “OK”
  • AZUL: conteo de estadistica es “CAREFUL” (Cuidado)
  • MAGENTA: conteo de estadistica es “WARNING” (Alarma)
  • ROJO: conteo de estadística es “CRITICAL” (Critico)

Cuando Glance esta en ejecucion puedes presionar las siguiente teclas:

‘h’ muestra el mensaje de ayuda en pantalla con las teclas que puedes utilizar

‘a’ definir el método automático. Los procesos son ordenados automaticamente

Si CPU > 70%, ordena los procesos por consumo de CPU

Si MEM > 70%, orden los procesos por consumo de tamaño de memoria

‘b’ intercambia entre bit/s o byte/s para la E/S de red

‘c’ ordena la lista de procesos por consumo de CPU

‘d’ habilita/deshabilita las estadísticas de I/O en disco

‘e’ habilita el modulo de sensores (la librería PySensors es necesaria; Solo Linux)

‘f’ hablita/deshabilita las estadísticas del sistema de archivos

‘l’ habilita/deshabilita el logeo de la aplicación.

‘m’ ordena la lista de procesos por consumo de memoria

‘n’ habilita/deshabilita las estadisticas de la interfaz de red

‘p’ ordena por el nombre del proceso

‘w’ elimina los WARNING finalizados (que ya no estan) del archivo log

’1′ intercambia entre las estadisticas globales del CPU y las estadisticas particulares por cada CORE

‘q’ salir de la aplicacion

En modo servidor, puede definir la IP donde escuchara las peticiones (-B DIRECCION) y el puerto (-p PUERTO)

En el modo cliente, puede definir el puerto del servidor con -p PUERTO

La IP de escucha por defecto es 0.0.0.0, es decir, en todas las que tenga el equipo.

Si teneis alguna pregunta sobre Glance, decirlos en los comentarios!! Be water my friends!!

Evitar que la sesión de SSH se cierre – Timeout NO¡

No sé si os ha pasado, que dejas una sesión de ssh abierta por digamos media hora.. haciendo algo importantísimo.. y de repente, se te cierra! sobre todo con los nuevos routersmodem sigma 3 de ONO en España.

Es que el SSH server si ve que no hay actividad, cierra en un determinado tiempo la sesión. Para evitar esto, a nuestro cliente podemos habilitarle los keepalive timeouts, muy simple:

edita el archivo como root /etc/ssh/ssh_config en tu máquina cliente, al final agrega esto:

ServerAliveInterval 15

Suficiente enviar un keepalive cada 15 segundos… el servidor remoto te dejará abierta la sesión sin dar timeout.

Instalar Ubuntu Server sobre RAID 1 software

Un pequeño manual o reseña como lo querrais llamar… de cómo instalar Ubuntu Server en un sobre un RAID creado por software, en una máquina con dos discos iguales. Esta manual implica particionar y formatear discos duros, lo que destruye todos los datos. Por favor no la uses si no sabes lo que estás haciendo.

Página 1 – Particionar los discos duros

Instalar Ubuntu Server  (vale perfectamente para todas las version de Ubuntu Server) sobre un arreglo RAID creado por software es fácil, pero la interfaz puede ser confusa. La instalación la haré sobre una máquina virtual con dos discos duros idénticos de 8 GB cada uno.

Ubuntu installer 1

La instalación es totalmente standard hasta el momento de particionar los discos duros. En ese momento hay que decidir cuánto espacio dedicarle a cada función. En esta máquina de prueba usaré dos arreglos RAID; uno para la memoria virtual y otro para los datos. El de memoria virtual será de 512 MB (igual a la cantidad de RAM en este servidor) y el resto estará dedicado a una partición única.

Esta es la primera pantalla del particionador (nótense los dos discos iguales):

Ubuntu partitioner 1Acá escogeré la tercera opción, «Manually edit partition table». El particionador manual se ve así:

Ubuntu partitioner 2

Primero editaré el primer disco (/dev/sda en este caso). El instalador de Ubuntu pregunta si estoy seguro de crear una tabla de partición en blanco en el disco duro. Contestaré «Yes».

Ubuntu partitioner 3Ahora aparece el espacio vacío en el particionador:

Ubuntu partitioner 4Cuando selecciono el espacio vacío, Ubuntu pregunta qué deseo hacer con él.

Ubuntu partitioner 5Respondo «Create a new partition» y me pide que le diga cuánto espacio dedicarle a la partición. Ofrece usar todo el espacio (8.6 GB, en este caso).

Ubuntu partitioner 6Como mi idea es usar 0.5 GB para memoria virtual, bajo lo que ofrece a 8.1 GB

Ubuntu partitioner 7El tipo de partición es «Primary»

Ubuntu partitioner 8y deseo que lo cree al principio del disco duro.

Ubuntu partitioner 9Tras crear la partición, debemos decirle a Ubuntu el rol que esta tendrá. Por default, Ubuntu ofrece usar la partición para el sistema operativo.

Ubuntu partitioner 10

En este caso, queremos dedicarle la partición a un arreglo RAID. Por lo tanto, muevo el cursor a «Use as:» y aprieto Enter. En la pantalla siguiente se puede elegir el rol de la partición:

Ubuntu partitioner 11

Elige «physical volume for RAID» y presiona Enter. El rol de la partición cambia para confirmar:

Ubuntu partitioner 12Falta decirle que esta partición es booteable. Presiona enter sobre «bootable flag».

Ubuntu partitioner 13Esta partición está lista. Presiona «Done setting up the partition».

Ubuntu partitioner 14Ahora el disco duro tiene una partición creada, y espacio libre. Crearemos otra partición primaria en el resto del espacio. El uso será physical volume for RAID, no booteable. Presiona Enter sobre «FREE SPACE» y sigue los mismos pasos de nuevo. Recuerda aceptar usar todo el espacio restante, y cambiar el rol de la partición a «physical volume for RAID». Cuando termines, la parte relevante de la ventana principal del particionador debiera verse más o menos así (como se vea exactamente dependerá de tus discos duros):

Ubuntu partitioner 15

Ahora debes repetir exactamente el mismo proceso con el segundo disco duro. Los tamaños de las particiones deben ser idénticos. Cuando termines la ventana principal del particionador debiera verse así:

Ubuntu partitioner 16

Ahora es el momento de crear los arreglos RAID

Para crear los dispositivos RAID, escoge «Configure software RAID» (la opción de más arriba en el menú principal del particionador).

Ubuntu partitioner 17Antes de continuar, debemos confirmar que queremos guardar los cambios a las tablas de partición. Responde «Yes».

Ubuntu partitioner 18

Tras guardar los cambios aparece el menú de RAID por software. Crearemos dos dispositivos MD, uno para los datos y otro para la memoria virtual. Escoge «Create MD device».

Ubuntu MD 1

Lo primero que Ubuntu quiere saber es qué tipo de arreglo RAID estamos creando. En este caso es RAID 1. Escoge RAID 1 y presiona Enter.Ubuntu MD 2

Luego debemos decirle cuántos dispositivos serán parte de este arreglo. En este caso, usaremos 2.

Ubuntu MD 3Luego hay que decirle cuántos de éstos estarán en standby por si hay fallas (los «spares»). En este caso, 0, que es lo que ofrece por default (ya que el mínimo de dispositivos para un RAID 1 son 2, todos estarán ocupados).

Ubuntu MD 4

Por último hay que escoger los dispositivos que serán parte del arreglo. En este caso elegí la primera partición de cada disco (/dev/sda1 y /dev/sdb1).

Ubuntu MD 5Una vez que el arreglo está creado, el instalador muestra la pantalla inicial de la configuración de RAID de nuevo.

Ubuntu MD 1Repite los mismos pasos para crear un segundo dispositivo MD, RAID 1, con las otras dos particiones.

Cuando termines selecciona «Finish» y volverás a la pantalla inicial del particionador, donde habrá dos dispositivos nuevos: los discos duros virtuales que representan los arreglos RAID.

Ubuntu Partitioner with MD devicesLos dispositivos RAID se comportan como discos duros, y también deben ser particionados.

Página 3 – particionar los arreglos RAID

Escoge el primer dispositivo RAID, el de más capacidad (en este ejemplo, 8.1 GB) y presiona Enter. El particionador, por default, no le asigna rol.

Ubuntu partioning MD device 1Escoge «Use as: do not use» y presiona Enter. Elige usar un sistema de archivos Ext3:

Ubuntu partioning MD device 2y presiona Enter. Aún falta un paso más, decirle al instalador que queremos usar esta partición para el sistema de archivos. Mueve el cursor a «Mount point: none» y presiona Enter.

Ubuntu partioning MD device 3Dile que quieres usar esta partición para «/ – the root file system»

Ubuntu partioning MD device 4y, por último, confirma que terminaste de configurar esta partición. Apreta Enter sobre «Done setting up the partition». La partición debiera verse así antes de confirmar:

Ubuntu partioning MD device 5En la pantalla principal del particionador, los cambios están guardados (dice en forma muy compacta que será un sistema de archivos ext3, para montar /). Es hora de particionar el otro arreglo RAID.

Ubuntu partioning MD device 6

Escoge el RAID #1 y presiona Enter. Al igual que en el caso anterior, el instalador no le da un uso por default. Escoge «Use as: do not use» y presiona Enter.

Ubuntu partioning MD device 7

Elige «swap area» para este disco y presiona Enter.

Ubuntu partioning MD device 8Una vez que la partición esté configurada, elige «Done setting up the partition» y el particionador mostrará los dos dispositivos RAID con su configuración lista:

Ubuntu partioning MD device 9

Mueve el cursor hasta el final de la pantalla del particionador y elige «Finish partitioning and write changes to disk.»

Ubuntu partioning MD device 10Una vez más debemos confirmar los cambios a las tablas de partición:

Ubuntu partioning MD device 11Elige «Yes» y presiona Enter. El resto de la instalación de Ubuntu server es normal y no tiene relación con los discos. Si todo sale bien, el sistema bootea correctamente desde su arreglo RAID.