esto es tener tiempo libre !!!

No, no tengo tanto tiempo libre como parece.... me hago algo de tiempo para escribir pavadas y otras no tanto... es solo eso.... si uds quieren saber lo que hacer la gente que tiene tiempo libre y una conexion a internet, los invito a ver los siguientes tres videos...... ESO ES ESTAR AL PEDO !!!!!











PD: guarda... si cuando van caminando por las calles de mendoza alguna de las caras les resulta familiar... no es coincidencia, es real !!! es el !!!

Copiando un poco

Una vez una profesora de manera muy picara me dijo "si le copias a uno es plagio, pero si le copias a muchos lo podes hacer pasar como un trabajo de investigación" (lógico, me lo dijo cuando yo ya no era su alumno, porque en clase no dejaba que nos copiaramos :P ) y como yo investigo en internet, es que esto lo copie del blog del castor

Esto en realidad nace por la necesidad de contestarle al dani con respecto a que hoy te muestran tetas por television y a toda hora y bueno.... para responder a eso que mejor que un video


Enchulame el grafiquito !!!

Y seguimos jugando y avanzando con las rrdtool y fuimos mejorando varios aspecto del gráfico y sacándole un poco el jugo a la implementación.




Básicamente el avance fue en dos direcciones, por un lado en los comentarios al pie del gráfico, que nos indica máximo, promedio y valores actuales, y por el otro lado la posibilidad de armar un gráfico con varios datos a la vez, que es lo que vemos arriba.

El comando "rrdtool graph" tiene varios parámetros para la creación de los gráficos. Para poder agregar textos y los datos al final de la pagina usamos dos que son el "COMMENT" para agregar comentarios y textos y que no utilizan datos de la base de datos del rdd, y la opcion "GPRINT" para cuando el comentario o texto queremos que nos imprima algun datos de los gráficos.

De esta forma si, por ejemplo, quisiéramos agregarle la hora a nuestro gráfico, entre los parámetros del "rrdtools graph" deberíamos agregarle algo asi como:

COMMENT:"\n Hora\: `date +%H`\:`date +%M`\:`date +%S` \n"

Con esto le estaremos agregando al pie del gráfico la hora. Ahora si quisieramos generar los textos de las estadisticas al pie del grafico, podriamos agregar algo asi como:

COMMENT:"Entrante : " \
GPRINT:in_eth0_bits:MAX:'%7.2lf %sb/s' \
GPRINT:in_eth0_bits:AVERAGE:"%7.2lf %Sb/s" \
GPRINT:in_eth0_bits:LAST:"%7.2lf %Sb/s \n" \

Con esto estaríamos agregando una linea con con los valores máximos, promedio y ultimo de la variable "in_eth0_bits". Cabe destacar que los máximos y promedios son tomados entre los valores que vamos e imprimir en el gráfico, y no entre los totales de la base de datos del rdd.

Con el "GPRINT" aparecen un par de opciones especiales, por un lado el "%7.2lf" esto no marca la precisión con la que se debe imprimir el valor, en este caso, vamos a tener un numero decimal de 7 caracteres y 2 decimales. La otra opción es la "%s", esto nos va a indicar la unidad de medida en K,M o G según correspondan a kilo, mega y giga segón haya sido necesario modificar el numero por la precisión definida. De esta forma entre el "%7.2lf" y el "%s" vamos a transformar los valor grandes en números mas legibles.


Pero esto no es lo que hace poderoso o lo mas atractivo del uso de las rrdtools. El verdadero potencial esta en poder obtener varios valores e incluso de multiples archivos rrd y poderlos combinar en un solo grafico y hasta con operaciones matematicas de por medio, pudiendo sumarlos, restarlos, etc, para poder obtener un nuevo valor a graficar.

De esta forma solucionamos un problema muy interesante. En una de las redes que administro tengo en mi router de frontera un túnel ip, que es como una vpn pero sin encriptar (por no decir la verdad que es justamente al revés, una vpn es un túnel ip sobre ip que antes de montar los datos ip sobre otro paquete ip primero los encriptamos ).

El tema en cuestión estaba en que originalmente tenia dos gráficos generado por el MRTG por separados, uno para ver el trafico del túnel y otro que me mostraba el trafico total (el saliente a internet y el saliente por el túnel).

Ahora con las RRDtools podemos hacer un solo gráfico con los cuatro valores ( interfase y túnel, entrante y saliente de cada uno) y de esta forma, en un solo gráfico poder ver no solo cuanto sale hacia afuera, sino poder ver cuanto va a internet y cuanto al túnel. Este es el gráfico que se ve un poco mas arriba, aunque justo en ese momento la mayor parte del trafico era por el túnel y muy poco hacia internet. Acá les dejo el comando completo con lo que estoy haciendo ese grafiquito tan chulo.

rrdtool graph salida-day.png \

-s -12h5min -e now -v 'bits/seg' \

-w 500 -h 135 \
DEF:in_eth0=192.168.218.222_2.rrd:ds0:AVERAGE \
DEF:in_tunnel0=192.168.218.222_9.rrd:ds0:AVERAGE \
DEF:out_eth0=192.168.218.222_2.rrd:ds1:AVERAGE \
DEF:out_tunnel0=192.168.218.222_9.rrd:ds1:AVERAGE \
CDEF:in_eth0_bits=in_eth0,8,* \ CDEF:in_tunnel0_bits=in_tunnel0,8,* \
CDEF:out_eth0_bits=out_eth0,-8,* \ CDEF:out_tunnel0_bits=out_tunnel0,-8,* \
COMMENT:" Hora\: `date +%H`\:`date +%M`\:`date +%S` \n" \
COMMENT:" Maximo Promedio Actual \n" \
AREA:in_eth0_bits#00FF00:"Entrante Total" \
GPRINT:in_eth0_bits:MAX:'%4.2lf %sb/s' \
GPRINT:in_eth0_bits:AVERAGE:"%4.2lf %Sb/s" \
GPRINT:in_eth0_bits:LAST:"%4.2lf %Sb/s \n" \
AREA:in_tunnel0_bits#FF0000:"Entrante Uncu" \
GPRINT:in_tunnel0_bits:MAX:'%4.2lf %sb/s' \
GPRINT:in_tunnel0_bits:AVERAGE:"%4.2lf %Sb/s" \
GPRINT:in_tunnel0_bits:LAST:"%4.2lf %Sb/s \n" \
AREA:out_eth0_bits#F000FF:"Saliente Total" \
GPRINT:out_eth0_bits:MAX:'%4.2lf %sb/s' \
GPRINT:out_eth0_bits:AVERAGE:"%4.2lf %Sb/s" \
GPRINT:out_eth0_bits:LAST:"%4.2lf %Sb/s \n" \
AREA:out_tunnel0_bits#0000FF:"Saliente Uncu" \
GPRINT:out_tunnel0_bits:MAX:'%4.2lf %sb/s' \
GPRINT:out_tunnel0_bits:AVERAGE:"%4.2lf %Sb/s" \
GPRINT:out_tunnel0_bits:LAST:"%4.2lf %Sb/s \n"

Algo a destacar es que es muy importante en el orden en que se colocan las sentencias que imprimen los textos y los gráficos. En lo que son los gráficos, si vamos a usar "AREA" debemos imprimir las de valor mas grande primero, ya que al no ser transparentes, vamos a tapar a las de menor tamaño.

Ahora estamos jugando con el demonio de snmp en linux, asique es muy probable que sea nuestro próximo paso a documentar.



M.P.B.N. - Al parecer va a llegar antes el vino que el jamón

Al parecer va a llegar antes el vino que el jamón (si queres saber de que hablo mira el primer post), porque Nicole Neumann sigue sin cumplir su promesa, y es por eso que hacemos nuestra adhesión al "Movimiento Penete en Bolas Nicole !!!"

Porque las promesas se tienen que cumplir !!! y sobre las de este tipo !!!!! de que estamos hablando ??' Nicole prometió desnudarse y desfilar totalmente desnuda por la esquina de Corrientes y Florida de la capital porteña !!

También y hablando en serio... como va a prometer eso !!!!! desnudarse en publico !!! y gratis !!! esta bien, era por una causa justa, la idea para los que no esten informados del tema, estaba como buena.... la promesa de ponerce en bolas estaba en el marco de una campaña en contra el uso de piles de animales para las vestimentas, y de ahi la idea de no usar pieles y quedarse en bola !!!

en teoria no era solo ella, sino que fueron varias, pero creo que nadie logro colmar las calles mas que ella, ahi si que aparecieron "proteccionistas" por todos lados, ese dia a esa hora habían mas ñatos en esa esquina "que estrellas en el cielo y arenas en el mar" !!! ahi si Arjona que te creo que se cumple eso..

pero haciendo una pequeña reflección, que mal.. solo para ver a Nicole desnuda !!

Verguenza deberia darles a todos esos que estaban ahi ese dia !!!! que clase de gente son !!!! de naturaleza perverza !!! dejando sus puestos de trabajo, faltando a clases, dejando todas sus obligaciones de lado, esperando durante horas..... y cuando llego el momento y estando ahi y a poco metros de Nicole NO LA AYUDARON A CUMPLIR SU PROMESA !!! si al fin y al cabo ella se subió a la camioneta y se dirigió a la esquina de Corrientes y Florida a desnudarse, porque la gente que la vio llegar y la vio dubitativa no la ayudo a cumplir su promesa ?? por que ?? verguenza debería derles a todos esos que estaban ahi y no ayudaron ala pobre Nicole a cumplir su palabra !!!

y es por eso... culpa de los que estaban ahi ese dia y no hicieron nada, es que nacio el M.P.B.N. y hoy nosotros nos unimos a la causa !!!!


IT Crow dice: Dile no a la pirateria !!

Y comenzó la segunda temporada de IT Crow !! aunque al parece esta media mala... pero bueno, ya veremos de bajarla. Por lo pronto y hablando de bajar cosas de internet, aca tenemos a los muchachos de IT Crow mostrando el lado feo de la pirateria




Segun dicen por ahi, esto es del tercer capitulo..... despues les cuento...

Condicion de "super deportista"

Y si, esa es mi condición ahora. Asi es como estoy y como me siento ahora, como un "super deportista" que acaba de terminar un pentatlon.... solo que lo único que hice yo fue jugar al fútbol durante una hora !!!!

Ya hace casi dos años que no jugaba al fútbol y el año pasado casi no hice actividad física (tipico de informático, no ?? ) y como que ya era hora de hacer algo, cuando me llamo el dani y me dijo: "che, vos jugas al fútbol??" le dije "si, dale vamos".

Y como era de esperarse a los 15 minutos de haber empezado a jugar, yo ya estaba mirando el reloj para ver cuanto faltaba!! (mientras recordaba lo dicho alguna vez por un amigo de "La hora referi !!!!") Pero aun asi seguimos jugando... y corriendo... y después haciendo como que jugaba... y despues haciendo como que corría... y para terminar viendo como jugaban... y viendo como corrían...

En realidad no estuve tan mal, eso comparandome con el resto que estábamos jugando... yo mire el reloj a los 15 min, pero otro a los 10min de haber empezado ya estaba en el piso porque después de un par de piques no dio mas, y otros tantos que se peleaban por entrar al arco para poder descansar un poco, asique no estaba tan mal, comparando con el resto... y si, mal de muchos, consuelo de tonto, pero bueno soy un tonto que se consuela con poco.

En realidad jugué y corrí hasta el final y es mas, mi gol fue el que dio por terminado el partido, pero también es valido aclarar que ese tiro no fue el único tiro que hice hacia el arco, pero si uno de los pocos que recuerdo que no solo le apunte al arco, sino que salio hacia el arco !!! y si.. soy pésimo, pero sigo jugando igual !!!

Igual, de esto ya pasaron casi dos días, y el tema en cuestión no es haber jugado al fútbol despues de casi dos años, sino que TODAVÍA ME DUELE TODO !!! aun tengo demasiado ácido láctico en todo el cuerpo , no solo en las piernas, sino en la espalda y hasta en la base del cuello !!!!! asique me duelo TODO !!!! (aunque según wikipedia el dolor no es producido por el ácido láctico sino por no se que historia del cambio del pH de la sangre y no se que más, si queres saber mas del tema deberías leer wikipedia :P)

Igual la semana que viene nos volvemos a juntar a jugar al futbol, asique en unos días mas les comento si sigo manteniendo esta condición de "super deportista" !!!

Implementando RRDTool con MRTG y no morir en el intento

y bueno empecemos... si has leído el primer post sabras que de esto se trata el blog, de ir registrando todo lo que considere que valga la pena...

y lo primero se lo llevan las RRDTools... siempre que he podido he instalado SNMP+MRTG para poder registrar el consumo del trafico y poder ver anomalías en las redes. MRTG es muy útil para poder ver que esta pasando con el trafico de la red (aunque tambien he llegado a consultar la temperatura del micro de los servidores con SNMP y un par de cosas mas), pero es muy útil para ver el estado en ese momento o los registros de las ultimas horas, pero al momento de volver a ver el trafico de red de hace varios dias atras, o incluso unas 10 horas atras, se queda corto.

Y es aca donde las RRDToos entran en juego. Las RRDTools en realidad no remplazan al MRTG, y es mas, al final del documento terminaremos implementando SNMP + MRTG + RRDTools...

Las RRD en realidad es otra forma de guardar la información recolectada por el MRTG (es mas, la D de RRD es de database :) Round Robin Database). Lo que hace las RRD es tomar cada registro que consige el MRTG por SNMP y guardarlo. Después y con otro proceso separado podemos consultar esa base de datos y graficar la porción de tiempo que uno quiera y con la resolucion, tamaño de imagen que uno quiera. El tema es que acostumbrado a lo fácil de implementar que es MRTG y un poco por el cambio de concepto que son las RRDTools es que, en un par de veces lo había intentado pero sin llegar a buen puerto.... pero esta tarde y depués de un par de lecturas y pruebas ya tengo andando RRDTools... y es aca donde nace:

"Implementando RRDTool con MRTG y no morir en el intento"

Vamos a partir de la base que ya tenemos MRTG funcionando, que ya tenemos los HTML del MRTG y hasta un index con el resumen de las interfases principales. Todos los comandos y directorios van a estar dados para ser usados bajo Debian... igual bajos otras distribuciones podrás hacer algo para que funcione.

Cabe destacar y antes de empezar que esta implementación representa un "borrón y cuenta nueva" en lo que respecta a los gráficos. Al cambiar la forma de guardar los datos y de graficar, los gráficos de trafico que ya teníamos no nos sirven y empezaremos a crear gráficos nuevos. Por lo cual te aconsejo que guardes una copia de tus viejos gráficos de trafico.

Lo primero es instalar las RRDTools con nuestro querido comando:

aptitude install rrdtool librrds-perl

El siguiente paso es localizar los archivos de configuración del MRTG. Yo por lo general genero un archivo por cada dispositivo que monitoreo y lo guardo en el /etc/mrtg/cfg y después con un pequeño script de BASH disparo cada una de las consultas a los dispositivos. Es este script de BASH el que coloco en el /etc/crontab para poder programar la tarea.

Una vez instalado las rrdtool el siguiente paso es decirle al MRTG que ahora empiece a usar las rrd. Para ello, en nuestro archivo .cfg en las primeras lineas, luego de definir el el WorkDir, es que agramos las siguientes lineas:

WorkDir: /var/www/mrtg
Options[_]: bits,growright

WriteExpires: Yes

Logformat: rrdtool


Logico que lo importante en realidad es solo la última linea, la del Logformat. De ahora en mas cada vez que ejecutemos el MRTG con este archivo de configuración, se guardaran datos en un archivo con el nombre con que ya nos venia generando los archivos el MRTG, pero ahora con extensión .rrd en el directorio /var/www/mrtg. Con esto ya tenemos la primera parte, guardar los datos.

Al guardar los datos desde MRTG lo que hace es guardar los datos del trafico entrante en un campo llamado ds0 y los datos del trafico saliente en el ds1 dentro del archivo .rrd. Esto es muy importante porque de aca en más, lo que haremos es consultar por estos campos, por ds0 y por ds1, para realizar los gráficos.

Vamos a la segunda parte, a generar los gráficos nuevos. La idea es generar, en primera instancia los graficos con los mismos nombres que usa el MRTG para no perder nuestras paginas HTML "tan chulas" que ya teníamos. Para generar los graficos usamos el comando rrdtool graph y de la siguiente forma:

rrdtool graph 192.168.218.27_1-day.png \
-s -12h -e -5min -v 'Bits por Segundo' \

-w 500 -h 135 \

DEF:in=192.168.218.27_1.rrd:ds0:AVERAGE \

DEF:out=192.168.218.27_1.rrd:ds1:AVERAGE \

CDEF:in_bits=in,8,* \

CDEF:out_bits=out,8,* \

AREA:in_bits#00FF00 \

LINE1:out_bits#0000FF


Donde:
192.168.218.27_1-day.png : sera nuestro archivo de salida
-s -12h : es para que el inicio del gráfico sea 12 horas en el pasado
-e -5min : y el final del gráfico sea 5 minutos en el pasado
-w 500 -h 135 : son las dimensiones de nuestro gráfico

y aca viene lo importante:

DEF:in=192.168.218.27_1.rrd:ds0:AVERAGE
CDEF:in_bits=in,8,* \
AREA:in_bits#00FF00 \


en estas lineas definimos que, del archivo 192.168.218.27_1.rrd tome el campo ds0 y que lo guarde en la "variable" in. Después en la linea del CDEF convertimos de Byts a Bits y guardamos el resultado en una nueva variable (in_bits), en la linea AREA, lo que hacemos es graficar estos datos, pintando de color verde la parte que queda por debajo de la linea.

De esta forma generamos el gráfico del trafico diario. Para generar el resto de los graficos la idea es al misma, pero cambiando la fecha de origen y agregando la opcion -S que indica el paso o escala del dibujo. De esta forma si queremos hacer el grafico de la semana y con el promedio del trafico cada 30 minutos (1800 segundos) el comando seria:

rrdtool graph 192.168.218.27_2-week.png \
-s -168h -e -5min -S 1800 -v 'Byts por segundo
' \
-w 900 -h 200 \

DEF:in=192.168.218.27_2.rrd:ds0:AVERAGE \

DEF:out=192.168.218.27_2.rrd:ds1:AVERAGE \

CDEF:in_byts=in,8,* \

CDEF:out_byts=out,8,* \

AREA:in_byts#00FF00 \

LINE1:out_byts#0000FF



Después de esto nos quedan una sola cosa, que es la automatizar la generación de los gráficos. Acá temamos varias opciones, desde usar las herramientas de rrdtool.cgi, hasta el soporte para rrdtools en php. Por lo pronto, yo he tomado el camino mas simple y rápido. Arme otro script en BASH que me genera todos los gráficos, y a este script lo llamo desde el script del MRTG, de esta forma cada vez que corre el MRTG genero los gráficos.

Posiblemente después incursionaremos en las php-rrdtool y haremos alguna pagina bien bonita para poder consultar por periodos de fechas y demás.... pero por lo pronto fue BASH

Si te intereso esto, puede que te interese este otro post