PDF de programación - RRDtool, herramienta de bases de datos en round robin

<<>>
Imágen de pdf RRDtool, herramienta de bases de datos en round robin

RRDtool, herramienta de bases de datos en round robingráfica de visualizaciones

Actualizado el 22 de Marzo del 2020 (Publicado el 10 de Abril del 2017)
1.491 visualizaciones desde el 10 de Abril del 2017
467,7 KB
20 paginas
RRDtool, herramienta de bases de datos en round

robin.

Enrique Galdú
[email protected]

Tabla de contenidos

Introducción...........................................................................................................................3
Resultados ..............................................................................................................................3
¿Cómo funciona internamente? .........................................................................................6
Funciones de RRDtool.........................................................................................................8
Crear una base de datos RRD.............................................................................................9
Actualizar una base de datos RRD..................................................................................12
Crear gráficos .......................................................................................................................13
Un ejemplo práctico. ..........................................................................................................14
Frontends: Remstats ...........................................................................................................17
Conclusiones........................................................................................................................18
Mas información .................................................................................................................18

Introducción.

¿Qué es RRDtool?
• RRDtool es un sistema para almacenar y mostrar datos a través del tiempo. Ej.

tráfico de red, temperatura de la sala de máquinas, carga de servidores.

• Los datos se almacenan de manera compacta, round robin
• La base de datos no crece con el tiempo.
• Se puede mostrar fácilmente en forma de gráficos para distintos periodos de

tiempo.

¿Qué se puede hacer con esta herramienta?
• cualquier cosa que se te ocurra

Necesitas:
• poder medir un valor a lo largo del tiempo
• especificar que resoluciones deben guardarse
• alimentar a RRDtool con estos valores
• crear gráficos: PNG, GIF (con esta herramienta)
• publicarlos en páginas web

El Servei d’Informàtica lo utiliza sobre su infraestructura:
• monitorización
• estudio de rendimiento
• disponibilidad
• estadísticas de uso
• alertas

Resultados

Vamos a ver algunos gráficos

3

RRDtool, herramienta de bases de datos en round robin.

Figura 1. Consumo de CPU en anubis, un día

Figura 2. Consumo de CPU en anubis, un año

Se observa el tanto por cien de cpu usado, tanto por usuarios como por el sistema, al
lo largo del periodo de tiempo representado. También se indica el máximo y la media
de utilización durante ese periodo.

Figura 3. Número de usuarios.

Número de usuarios en el sistema. Este dato se obtiene a partir del comando who.

4

RRDtool, herramienta de bases de datos en round robin.

Figura 4. Carga del sistema. Número de procesos esperando CPU.

Cada una de las lineas representa la carga del sistema para el último minuto, cinco
minutos y quince minutos respectivamente. Se obtiene a partir de la salida del co-
mando uptime.

Figura 5. Ocupación de disco.

El área representa la capacidad del disco, mientras que la linea indica el disco que
está siendo usado. Se obtiene de la salida del comando df.

Figura 6. Mensajes de correo.

Muestra el número de mensajes de correo enviados, recibidos y bloqueados. Para ello
se procesan las lineas de log del servidor de correo postfix.

5

RRDtool, herramienta de bases de datos en round robin.

Figura 7. Tiempo de respuesta www.uji.es (antes de migración)

Figura 8. Tiempo de respuesta www.uji.es (después de migración)

Tiempo de respuesta del servidor web. Se obtiene a partir del tiempo que se tarda en
obtener la página principal del servidor.

¿Cómo funciona internamente?

¿Cómo se almacenan los datos?
• se recogen con una frecuencia determinada
• se almacenan en diferentes "archivos", según su resolución y en paralelo

6

RRDtool, herramienta de bases de datos en round robin.

En esta base de datos RRD hay tres archivos RRA para diferentes periodos de tiempo.
El archivo para 5 minutos contiene los últimos valores recogidos. El archivo para 1
hora contiene los valores para una hora, calculados a partir de 12 valores del anterior
archivo RRA. Finalmente el archivo para un día, tiene un valor que resume la medida
para un día. Este se obtiene a partir de 24 valores del RRA de 1 hora.
Cada uno de los archivos tiene un tamaño fijo, por lo que no crece en el tiempo.
Existe un apuntador al último dato recogido. Los diferentes archivos se actualizan en
paralelo a partir de las actualizaciones periódicas.

Funciones de consolidación.
• Ejemplo de cálculo de la media.

Los diferentes archivos se forman aplicando la función de consolidación a los valores
originales.

Validación de los datos
• valor mínimo y máximo aceptable
• frecuencia mínima de actualización
• mínimo de valores en la consolidación

7

RRDtool, herramienta de bases de datos en round robin.

Cuando recogemos datos es importante que estos sean validos. De nada nos sirve
recoger datos si no tienen ningún sentido. RRDtool nos permite establecer una serie
de restricciones sobre los datos antes de procesarlos. Si no se cumple las restricciones
esa muestra tomará el valor *UNKNOWN*.

Funciones de RRDtool

Funciones de RRDtool
• Interactuamos con la base de datos a través de las funciones de RRDtool
• Están ampliamente documentadas
• Tienen la misma sintaxis con independencia del lenguaje desde donde lo uses:

• linea de comandos
• módulo de perl
• PHP
• C

Sugerencia: Normalmente sólo usaras algunas de ellas, las más importantes son: cre-
ate , update , graph , y la utilidad rrdcgi . En los siguientes puntos verás ejemplos de
cómo se utilizan.

En la actualidad RRDtool soporta estas funciones:



create
• crea una nueva base de datos RRD
• se crea con su tamaño final
• se rellena con datos *UNKNOWN*

• update

• almacena un nuevo conjunto de valores en el RRD
• los datos se procesan según las propiedades del RRD

graph
• crea un gráfico a partir de los datos de uno o varios RRD

xport
• exportar datos en formato XML basados en uno o varios RRD

rrdcgi
• utilidad externa para producir gráficos bajo demanda

info
• extrae la información de definición del RRD

dump
• volcado de datos en XML











8

RRDtool, herramienta de bases de datos en round robin.

restore
• recuperación de datos con el formato del dump

fetch
• obtener datos de un determinado periodo de tiempo de un RRD la función

graph se basa en ella

tune
• modifica la configuración de un RRD

last
• informa de la última actualización del RRD

rrdresize
• cambia el tamaño de un RRA, creando una nuevo RRD











Crear una base de datos RRD

A la hora de crear una base de datos RRD necesitamos saber una serie de datos ac-
erca de lo que queremos medir. En concreto deberemos especificar la frecuencia de
actualización, la naturaleza de los datos, las funciones que forman los archivos y la
resolución de estos.

• Necesitamos saber:

la frecuencia de actualización

• debemos indicar cada cuanto tiempo esperamos servir datos a la base de datos

Ej. 300 segundos (5 minutos)

naturaleza de los datos

• COUNTER

• contador, siempre se incrementa
• registra el incremento/intervalo tiempo
• Ej. tráfico de red, bytes/s

• GAUGE

• indicador, distintos valores en el tiempo
• registra el valor "tal como lo medimos" Ej. uso de cpu, número de usuarios,

temperatura

• DERIVE

• contador, puede decrecer

• ABSOLUTE

• valor absoluto
• contador que se resetea tras su lectura
• registra el valor, el incremento es implícito

9

RRDtool, herramienta de bases de datos en round robin.

• Lo veremos mas claro con un ejemplo:

• Creamos la base de datos

rrdtool create all.rrd --start 978300900 \

DS:a:COUNTER:600:U:U
DS:b:GAUGE:600:U:U
DS:c:DERIVE:600:U:U
DS:d:ABSOLUTE:600:U:U
RRA:AVERAGE:0.5:1:10

\

\

\

\

Nota: Definimos una variable de cada tipo.

• Insertamos los datos

rrdtool update all.rrd

\

978301200:300:1:600:300 \
978301500:600:3:1200:600 \
978301800:900:5:1800:900 \
978302100:1200:3:2400:1200 \
978302400:1500:1:2400:1500 \
978302700:1800:2:1800:1800 \
978303000:2100:4:0:2100 \
978303300:2400:6:600:2400 \
978303600:2700:4:600:2700 \
978303900:3000:2:1200:3000

Nota: La primera columna indica la marca de tiempo, las siguientes son los valores

para cada una de las cuatro variables.

• Creamos el gráfico

rrdtool graph all.png --start 978300600 --end 978304200

\

-height 200 --imgformat PNG
DEF:linea=all.rrd:a:AVERAGE LINE3:linea#FF0000:"Line A,COUNTER"
DEF:lineb=all.rrd:b:AVERAGE LINE3:lineb#00FF00:"Line B,GAUGE"
DEF:linec=all.rrd:c:AVERAGE LINE3:linec#0000FF:"Line C,DERIVE"
DEF:lined=all.rrd:d:AVERAGE LINE3:lined#000000:"Line D,ABSOLUTE"

\

\

\

\

Nota: Pintamos una linea para cada variable, identificando el tipo en la leyenda del

gráfico.

• Y este es el resultado:

10

RRDtool, herramienta de bases de datos en round robin.

Nota: Puedes observar que para la variable A, aunque insertamos datos que van
aumentando, se dibuja una linea recta. Esta representa el incremento constante.

La linea B, GAUGE, representa los valores tal como los recogemos.
La linea C, DERIVE, se comporta como la A pero permite decremento.
La linea D, ABSOLUTE, para los mismos datos que la A, representa un incremento

mayor, ya que supone que se resetea el contador.

funciones de consolidación para los archivos RRA

• AVERAGE
• MIN
• MAX
• LAST
Indicará la función a aplicar sobre los datos originales para obtener valores de un
RRA con menor resolución. Normalmente nos interesará guardarnos la media de
los valores recogidos, pero también nos puede ser útil el mínimo o máximo valor
del periodo.

resolución de los archivos RRA

• de cuantas muestras se compone cada RRA
• cuantos valores ha de guardar cada RRA
Especificamos la “resolución” de nuestro archivo y la “longitud” del mismo.

En resume
  • Links de descarga
http://lwp-l.com/pdf2725

Comentarios de: RRDtool, herramienta de bases de datos en round robin (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad