Usando Linux para muchas cosas y disfrutando de videojuegos, en dispositivos moviles, consolas y pc. Using Linux for many things and enjoying video games, mobile devices, consoles and pc

Como instalar SmokePing en Centos

Necesitas una herramienta que te muestre de forma gráfica la latencia de tu red?. Te presento SmokePing, una magnifica aplicación del creador de RRDtool escrita en perl y con una variedad de plugins para poder monitorear latencia en una fácil interfaz web que hoy te mostrare como instalar paso a paso en un servidor Linux Centos 6.4.

Requerimientos


-Instalamos repositorio epel de Fedora para algunos paquetes que no los tiene Centos

rpm --import https://fedoraproject.org/static/0608B895.txt
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm
yum install yum-priorities

-Editamos para quitarle prioridad a los rpm de epel
vi /etc/yum.repos.d/epel.repo
[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

-Instalamos dependencias
yum install openssl-devel popt-devel libidn-devel curl bind-utils openssh-server mod_fcgid
yum install perl perl-Net-Telnet perl-Net-DNS perl-LDAP perl-libwww-perl perl-RadiusPerl perl-IO-Socket-SSL perl-Socket6 perl-CGI-SpeedyCGI perl-FCGI perl-RRD-Simple perl-CGI-SpeedyCGI perl-ExtUtils-MakeMaker perl-Net-OpenSSH

-Instalamos fping
wget -c http://www.fping.org/dist/fping-3.8.tar.gz

tar xzvf fping-3.8.tar.gz
cd fping-3.8

-Compilamos
./configure
make
make install

-Instalamos echoping
wget -c http://downloads.sourceforge.net/project/echoping/echoping/6.0.2/echoping-6.0.2.tar.gz

tar xzvf echoping-6.0.2.tar.gz
cd echoping-6.0.2

./configure
make
make install

-Activamos sus librerias
vi /etc/ld.so.conf
/usr/local/lib/echoping

-Activamos el cambio
ldconfig

-Descargamos smokeping
wget -c http://oss.oetiker.ch/smokeping/pub/smokeping-2.6.9.tar.gz
tar xzvf smokeping-2.6.9.tar.gz

-Descargamos e instalamos módulos de perl necesitados
cd smokeping-2.6.9/setup/
./build-perl-modules.sh

-Compilamos
./configure --prefix=/opt/smokeping
make install

-Creamos algunos directorios que faltan y modificamos los ficheros de configuracion
cd /opt/smokeping
mkdir data var cache
cd etc/
for foo in *.dist; do cp $foo `basename $foo .dist`; done

-Las pruebas hay muchas formas de configurarlas como se explica en la ayuda de la aplicación (bastante larga por cierto) o podemos usar parte de los ejemplos que también ahí podemos consultar. Por el momento para esta prueba mostraremos algunas. Editamos

vi config

owner    = DriveMeca
contact  = pepe@gmail.com
mailhost = localhost
cgiurl   = http://192.168.1.167/smokeping/smokeping.cgi
imgcache = /opt/smokeping/cache
datadir  = /opt/smokeping/data
piddir  = /opt/smokeping/var
smokemail = /opt/smokeping/etc/smokemail.dist
tmail = /opt/smokeping/etc/tmail.dist
*** Alerts ***
to = drivemeca@test.com
from = smokealert@test.com

*** Probes ***

+ DNS
 binary = /usr/bin/dig
 server = 8.8.8.8
 pings = 3
 forks = 5

+ FPing
binary = /usr/local/sbin/fping

+ EchoPingHttp
 binary = /usr/local/bin/echoping
 pings = 5
 forks = 5
 offset = 50%
 ipversion = 4
 url = /

+ EchoPingHttps
 binary = /usr/local/bin/echoping
 pings = 5
 forks = 5
 offset = 50%
 ipversion = 4

+ Curl
 binary = /usr/bin/curl
 pings = 5

urlformat = http://%host%/

*** Targets ***

probe = FPing

menu = Top
title = Network Latency Grapher
remark = Welcome to the SmokePing website of test.com

 + network
 menu = Net latency
 title = Network latency (ICMP pings)

 ++ www1
 host = www.google.com

 + services
 menu = Service latency
 title = Service latency (DNS, HTTP)

 ++ DNS
 probe = DNS
 menu = DNS latency
 title = Service latency (DNS)

 +++ www1
 host = www.google.com

 + HTTP
 probe = Curl
 menu = http full page
 title = HTTP latency

 ++ www1
 host = www.google.com

-Creamos un enlace simbolico a la carpeta cache
ln -s /opt/smokeping/cache /opt/smokeping/htdocs/cache

-Nos creamos un conf para apache con pedido de usuario y contraseña
vi /etc/httpd/conf.d/smokeping.conf
ScriptAlias /smokeping/smokeping.cgi "/opt/smokeping/htdocs/smokeping.fcgi.dist"
Alias /smokeping/ "/opt/smokeping/htdocs/"

<Directory "/opt/smokeping/htdocs">
        Options FollowSymLinks
        AuthType Basic
        AuthName "Smokeping"
        AuthBasicProvider file
        AuthUserFile /var/www/cgi-bin/htpasswords
        Require valid-user
</Directory>

-Nos creamos el usuario y su contraseña (podemos agregar los que necesitemos)
htpasswd -c /var/www/cgi-bin/htpasswords drivemeca
New password: 
Re-type new password: 
Adding password for user drivemeca

-Cambiamos permisos
chmod 600 /var/www/cgi-bin/htpasswords
chown apache.apache /var/www/cgi-bin/htpasswords
chmod 600 /opt/smokeping/etc/smokeping_secrets.dist
chown -R apache.apache /opt/smokeping/

-Creamos un script de inicio para SmokePing

vi /etc/init.d/smokeping
#!/bin/sh
#
# smokeping    This starts and stops the smokeping daemon
# chkconfig: 345 98 11
# description: Start/Stop the smokeping daemon
# processname: smokeping
# Source function library.
. /etc/rc.d/init.d/functions

SMOKEPING=/opt/smokeping/bin/smokeping
LOCKF=/var/lock/subsys/smokeping
CONFIG=/opt/smokeping/etc/config

[ -f $SMOKEPING ] || exit 0
[ -f $CONFIG ] || exit 0

RETVAL=0

case "$1" in
  start)
        echo -n $"Starting SMOKEPING: "
        daemon $SMOKEPING
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch $LOCKF
        ;;
  stop)
        echo -n $"Stopping SMOKEPING: "
        killproc $SMOKEPING
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && rm -f $LOCKF
        ;;
  status)
        status smokeping
        RETVAL=$?
        ;;
  reload)
        echo -n $"Reloading SMOKEPING: "
        killproc $SMOKEPING -HUP
        RETVAL=$?
        echo
        ;;
  restart)
        $0 stop
        sleep 3
        $0 start
        RETVAL=$?
        ;;
  condrestart)
        if [ -f $LOCKF ]; then
                $0 stop
                sleep 3
                $0 start
                RETVAL=$?
        fi
        ;;
  *)
        echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"
        exit 1
esac

-Activamos permisos
chmod 755 /etc/init.d/smokeping

-Ejecutamos los servicios de httpd y SmokePing
service httpd start
chkconfig httpd on
service smokeping start
chkconfig smokeping on

-Nos logeamos con el usuario creado en el URL de nuestro servidor, en este caso http://192.168.1.167/smokeping/smokeping.cgi
DriveMeca instalando SmokePing en Centos

-En el menu de la izquierda veremos los links de las pruebas que configuramos en el config
DriveMeca instalando SmokePing en Centos

-En la medida que pase el tiempo, los valores irán apareciendo
DriveMeca instalando SmokePing en Centos

Te resulta útil SmokePing? Ya lo usas o planeas implementarlo?
Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones o sígueme en twitter google+ o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar RRDtool en Centos 6.4

RRD (Round Robin Database) es una aplicación opensource para almacenar y mostrar gráficos de series de tiempo que hace mucho tiempo se volvió el estándar de uso para otras aplicaciones en perl, python, ruby, etc. Aunque es muy útil, su instalación a veces es algo compleja al depender de varias dependencias pero no te preocupes, hoy les mostrare como instalar rrdtool en Linux Centos 6.4 paso a paso.

Requerimientos

  • Linux Centos 6.4 (para este ejemplo de 64 bits)
  • Apache web server para visualizar los graficos

-Instalamos dependencias

yum install gcc make cairo-devel libxml2-devel pango-devel pango libpng-devel freetype freetype-devel libart_lgpl-devel httpd wget perl-ExtUtils-MakeMaker xorg-x11-fonts*

-Activamos variables de entorno

BUILD_DIR=/tmp/rrdbuild
INSTALL_DIR=/opt/rrdtool

-Creamos directorio temporal y nos pasamos a el

mkdir -p $BUILD_DIR
cd $BUILD_DIR

-Descargamos la ultima versión, la descomprimimos y entramos a su directorio

wget -c http://oss.oetiker.ch/rrdtool/pub/rrdtool.tar.gz
tar xzvf rrdtool.tar.gz
cd rrdtool-1.4.8/

-Activamos variable de entorno de pkgconfig, en caso de que estés instalando en un servidor Linux Centos de 32 bits, el path seria /usr/lib/pkgconfig/

export PKG_CONFIG_PATH=/usr/lib64/pkgconfig/

-Comenzamos la configuración

./configure --prefix=$INSTALL_DIR

-Compilamos e instalamos

make
make install



-Verificamos nos haya quedado bien ejecutando uno de los ejemplos que viene en la aplicación

cd /opt/rrdtool/share/rrdtool/examples/
./stripes.pl
cp stripes.png /var/www/html/

-Iniciamos Apache para poder ver el gráfico del ejemplo

service httpd start

-Nos conectamos desde un browser para ver el gráfico, en este caso al URL http://192.168.1.167/stripes.png
DriveMeca instalando rrdtool en Centos 6.4

-Otro gráfico de ejemplo
DriveMeca instalando rrdtool en Centos 6.4

Seguramente ya haz oído hablar de rrdtool y es posible que ya alguna aplicación que usas lo aplique para sus gráficos. Ahora que sabes como instalarlo, lo usaras? en que proyectos? Ya lo usas?
Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones o sígueme en twitter google+ o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark

Como instalar Debian 7

Existe una distribución Linux de la que han nacido otras, hablamos de Debian, una de las mas veteranas en el mundo opensource que se caracteriza por ser robusta aunque por esto posiblemente no veremos en ella los últimos paquetes.
Debian siempre sera un buen candidato para nuestros servidores y por ello hoy les mostrare como instalar su versión 7.2 Wheezy paso a paso.

-Descargamos el ISO en variante netinstall desde este URL. Esto nos da la ventaja de tener en un único ISO la instalación de 32 o 64 bits con la desventaja de que necesitaremos internet a la hora de instalar

-Generamos un CD o USB booteable y hacemos boot. Se nos da la posibilidad de instalar la versión de 32 o de 64 bits ademas de con o sin ambiente gráfico. Para este ejemplo, instalaremos la versión de 64 bits sin ambiente gráfico. Presionamos Enter en la opción elegida
DriveMeca instalando Debian Wheezy 7.2

-Escogemos el idioma en que instalaremos y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Escogemos el país en que esta ubicado el equipo así el sistema activara la zona horaria. Presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Configuramos la distribución del teclado y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Se descargan algunos requerimientos para la instalacion
DriveMeca instalando Debian Wheezy 7.2

-Escribimos un nombre o hostname y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Escribimos el dominio internet a usar y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Escribimos la contraseña para root y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Confirmamos la contraseña y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Siguiente paso, crearnos una cuenta sin privilegios desde la que trabajaremos y solo usaremos root cuando se necesite instalar o configurar algo. Escribimos el nombre de la persona que la usara y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Creamos un nombre de usuario para la cuenta sin privilegios y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Asignamos una contraseña y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Confirmamos la contraseña y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Se actualiza la fecha y hora desde internet
DriveMeca instalando Debian Wheezy 7.2

-Particionamos el disco tomando la opción de LVM para mas adelante poder expandirlo si lo necesitamos con otro disco sin gran complejidad
DriveMeca instalando Debian Wheezy 7.2

-Elegimos el disco a particionar, en este caso es el único disponible y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Para una instalación sencilla recomiendo una única partición, si conoces del tema, haz el particionado mas a tu gusto. Presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Guardamos los cambios respondiendo Si
DriveMeca instalando Debian Wheezy 7.2

-Ya estamos listos para particionar el disco, se nos muestra como quedara. Presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Escribimos los cambios en LVM eligiendo Si
DriveMeca instalando Debian Wheezy 7.2

-Se instala el sistema base
DriveMeca instalando Debian Wheezy 7.2

-Elegimos el servidor principal de donde se descargaran actualizaciones o nuevos paquetes y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Dependiendo del país que hayamos elegido, serán los servidores que podremos configurar para usar de replica. Presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-En caso de salir a internet por medio de un proxy, colocaremos la información, sino, dejamos en blanco y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Se configura apt
DriveMeca instalando Debian Wheezy 7.2

-Se actualizan los repositorios locales
DriveMeca instalando Debian Wheezy 7.2

-Se nos da la posibilidad de participar en una encuesta de uso anónimo de programas para en base a su popularidad estén en el primer CD de la distribución Debian, hacemos nuestra elección y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Elegimos los grupos de aplicaciones que instalaremos y presionamos Enter sobre el botón Continuar
DriveMeca instalando Debian Wheezy 7.2

-Instalamos el gestor de arranque. Presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-La instalación fue completada con éxito, se nos pide reiniciar el equipo; antes quitamos el CD o USB y presionamos Enter
DriveMeca instalando Debian Wheezy 7.2

-Primer boot de nuestro Debian Wheezy 7.2 ya instalado
DriveMeca instalando Debian Wheezy 7.2

-Nos logeamos con la cuenta sin privilegios y en caso dado con el comando su podemos cambiarnos a root para tareas administrativas
DriveMeca instalando Debian Wheezy 7.2

Usas Debian, en modo servidor o Desktop? Que te gusta de esta distribución?
Si te resulto útil este articulo, se social, compártelo con otros por medio de los botones o sígueme en twitter google+ o email y podrás estar enterado de todas mis publicaciones.
Disfrútenlo.

Share/Bookmark