Estadísticas de uso en Linux con Sysstat

Cada vez tengo mas clara una cosa, hacer scripts es entretenido y se aprende bastante, pero hay veces que no hace falta reinventar la rueda, o bien por que no interesa, o bien por que no hay tiempo y necesitas una solución rápida.

Este es el caso de Sysstat: en este caso he visto numerosos scripts para hacer lo que ya hace Sysstat y dejan mucho que desear. Sysstat lo hace bien, y creedme que lo hace muy bien. Al final sacar estadísticas de uso cada X minutos, uso de disco, de red, estadísticas de CPU, memoria, etc…

Para instalar Sysstat es muy fácil, solo ejecutamos:

[/] # yum -y install sysstat

El comando para visualizar los datos recogidos es: sar, pero si lo ejecutamos nos indicará:

[/] # sar
Cannot open /var/log/sysstat/sa20: No such file or directory
Please check if data collecting is enabled

Como se puede visualizar, el comando busca el fichero de logs: /var/log/sysstat/sa[dd], donde dd es el día actual, en este caso el 20. Antes de poder visualizar algún contenido en este fichero, primero debemos escribir datos en él, para ello debemos ejecutar dos binarios:

 /usr/lib/sysstat/sa1
 /usr/lib/sysstat/sa2

Al binario sa1 debemos pasarle dos opciones: el intervalo y el numero de veces que queremos ejecutarlo, por ejemplo:

 /usr/lib/sysstat/sa1 1 1

En el caso sa2, este es un binario que escribirá un reporte diario en el fichero de log /var/log/sysstat/sa[dd] y podría ser ejecutado una vez al día. Por ejemplo:

/usr/lib/sysstat/sa2 -A

Estos dos binarios no se ejecutan de manera automática, por lo que una buena forma de automatizar esto, es añadiéndolos al cron del usuario ,dejando algo parecido a lo siguiente:

*/5 * * * * root /usr/lib/sysstat/sa1 1 1
59 23 * * * root /usr/lib/sysstat/sa2 –A

Así, ejecutaremos cada 5 minutos el binario sa1 y una vez al día el binario sa2, justo antes de las 00:00.

Una vez el binario sa1 haya sido ejecutado al menos una vez, podremos ejecutar el comando sar, el cual sin ninguna opción nos mostrará algo parecido a lo siguiente:

También podremos visualizar otras estadísticas, como estadísticas de las interfaces de red:

Es decir que cada vez que ejecutamos el binario sa1 se guardan en ese instante de tiempo un montón de datos interesantes. Hay algunos datos que no se registran en el fichero de log, por defecto, por lo que habria que modificar la linea del cron que creamos antes, y añadir las opciones correspondientes:

# ./sa1 -h
Usage: /usr/lib/sysstat/sadc [ options ] [ <interval> [ <count> ] ] [ <outfile> ]
Options are:
[ -C <comment> ] [ -D ] [ -F ] [ -L ] [ -V ]
[ -S { INT | DISK | IPV6 | POWER | SNMP | XDISK | ALL | XALL } ]

Podéis echarle un vistazo a la página man del comando sar, que como veréis hay una infinidad de opciones interesantes, que demuestran que este Sysstat es una herramienta muy potente y que debemos tener en cuenta para poner en todos aquellos sistemas de los que queramos conocer un poco más.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s