Apache Tomcat 8 Proxy Balancer en Debian Jessie

Siguiendo con los Cluster´s y dado que ya hemos hecho uno simplemente de Apache que mejor que darle paso a Tomcat de que se presente de la misma forma!

El esquema sera el mismo que el expuesto para el Cluster Apache Proxy Balancer si no lo has visto te invito a visitar el post y ver los requisitos.

Comencemos!

1.- Instalación y configuración de Servidor Apache2 (Proxy)

Iniciaremos por el servidor Apache que nos hará de proxy para todos las peticiones HTTP:

NOTA!: recuerda que los comandos los coloco con el carácter especial # pero tu has de obviarlo!


apt-get update && apt-get -y upgrade
apt-get install -y apache2 libapache2-mod-jk

Después de esto al acceder desde tu navegador Web a la IP del servidor 192.168.1.30 tendrías que poder la Web por defecto de Apache en la que se te muestra información básica del mismo, algo como lo que sigue:

Ahora configuramos el archivo por defecto de Apache para habilitar el Balancer desde el mismo, editamos el archivo /etc/apache2/sites-enabled/000-default.conf y añadimos las siguientes lineas:


JkMount /status status
JkMount /* loadbalancer

Quedando de esta forma:

Perfecto, ahora vamos a configurar el archivo workers.properties donde se definen los nodos del Cluster Tomcat, en este caso y por defecto el archivo se encuentra en /etc/libapache2-mod-jk/workers.properties, pero crearemos un archivo nuevo y en otra ubicación para evitar complicaciones y le daremos los permisos respectivos:


touch /etc/apache2/workers.properties && chmod 755 /etc/apache2/workers.properties

Ahora lo editamos y añadimos los siguientes parámetros:

worker.list=loadbalancer, status

worker.tomcat1.port=8009
worker.tomcat1.host=192.168.1.41
worker.tomcat1.type=ajp13
worker.tomcat2.port=9009
worker.tomcat2.host=192.168.1.42
worker.tomcat2.type=ajp13

worker.tomcat1.lbfactor=1
worker.tomcat2.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=tomcat1,tomcat2

worker.status.type=status

Fijate que has de cambiar el puerto y la IP de cada Worker en cada NODO Tomcat, ajustalo a la configuración IP segun tu caso.

Ahora editamos el archivo /etc/apache2/mods-enabled/jk.conf en el que comentamos la linea que comienza con el parámetro JkWorkersFile y añadimos una nueva con la dirección de nuestro nuevo archivo worker.properties creado anteriormente, tendría que quedarte así:

También es necesario que modifiques los parámetros Location que se encuentran mas abajo con la siguiente configuración:


<Location /jk-status>
# Inside Location we can omit the URL in JkMount
JkMount jk-status
Order allow,deny
#Deny from all
Allow from all
</Location>
<Location /jk-manager>
# Inside Location we can omit the URL in JkMount
JkMount jk-manager
Order allow,deny
#Deny from all
Allow from all
</Location>

Ha de quedar como sigue!

 

2. – Instalacion y configuracion de NODOS Tomcat 8

La siguiente configuración es la misma para ambos servidores NODO, solo los valores en ROJO han de ser ajustados segun el servidor que toque.

Lo primero es instalar Tomcat 8 y unos extras:


apt-get update && apt-get -y upgrade
apt-get install -y tomcat8 tomcat8-admin tomcat8-docs tomcat8-examples

Una ves finalizada la instalación tienes que añadir el usuario de administración, el código es el siguiente y ha de ir dentro de las etiquetas principales, solo has de asignar el usuario y la contraseña que desees.

<role rolename=”manager-gui”/>
<user username=”tomcat” password=”secret” roles=”manager-gui”/>

Ahora simplemente reiniciamos Tomcat 8 en los dos NODOS:


/etc/init.d/tomcat8 restart

Despues puedes comprar el estado de los mismos con:


/etc/init.d/tomcat8 status

Luego de esto puedes acceder a cada servidor desde su IP añadiendo el puerto por defecto 8080 (http://192.168.1.31:8080 y http://192.168.1.32:8080)

Si todo esta correcto verías un mensaje por defecto de Tomcat 8.

Ahora es necesario modificar el archivo /etc/tomcat8/server.xml, busca la linea <connector port=”8009” protocol=”AJP/1.3” redirectport=”8443” /> que se encuentra comentada, simplemente tendrás que descomentar eliminado las etiquetas <!– del principio y –> del final, en el NODO Tomcat 1 no hay problema en dejar el port 8009 como puerto por defecto pero en el NODO Tomcat 2 es necesario que lo cambies por otro, por ejemplo 9009.

A continuación hemos de crear un archivo index.jsp para realizar la prueba del balanceador, en este caso crearemos el directorio demo con el siguiente comando en ambos servidores Tomcat:


mkdir /var/lib/tomcat8/webapps/demo

Ahora crearemos dentro de dicho directorio el archivo index.jsp (mkdir /var/lib/tomcat8/webapps/demo/index.jsp) con el siguiente contenido:

<!DOCTYPE html>
<html>
<head>
<title>Hello Tomcat</title>
</head>
<body>
<h1>Welcome to Tomcat Server 1</h1>
<h3>Hello World!</h3>
</body>
</html>

Ten en cuenta cambiar el numero en rojo por 2 para el caso del index.jsp del NODO Tomcat 8 192.168.1.32.

Finalmente reiniciamos los servicios en los 3 servidores:

Apache (192.168.1.30)


/etc/init.d/apache2 restart

Tomcat 1(192.168.1.31)


/etc/init.d/tomcat8 restart

Tomcat 2 (192.168.1.32)


/etc/init.d/tomcat8 restart

Ahora accediendo a la IP del Apache Proxy http://192.168.1.30/demo podremos ver el mensaje Welcome to Tomcat 1 o Welcome to Tomcat 2 variando cada ves que actualicemos la Web ya que el Apache Proxy ira repartiendo o balanceando la carga de solicitudes HTTP que se realizan al servidor entre ambos NODOS Tomcat 8.

Accediendo a http://192.168.1.30/status podrás ver el estado actual de NODOS Tomcat que se encuentran operativos, estadísticas entre otra información valiosa así como realizar algunos cambios en los parámetros de configuración!

Eso es todo! espero que os sirva de ayuda, hasta la próxima!

Retomar una sesión SSH.

Screen Terminal

Cuantas veces has estado realizando una tarea bien sea en la oficina o en algun cliente que esta llevando mas tiempo de lo que te esperabas?, copiando o moviendo archivos o incluso eliminando archivos de grabaciones de audio o video que se estan llevando una vida porque son 50 GB de informacion, el reloj no se detiene y en menos de media hora tienes que estar en camino para poder llegar a recoger a tu hijo@ al cole, lo que estas haciendo es fundamental para que el sistema funcione correctamente y no puedes cerrarlo todo y dejar al cliente colgado!

Pues bien, la solucion es simple, “SCREEN“, si no esta instalado en el servidor en el que estas operando instalalo con APT:

apt-get install screen

Su uso es muy sencillo, una ves instalado solo tienes que abrir una consola con el comando screen:

$ screen -S nombreDeLaSesion

Algunas opciones interesantes de esta app son las siguientes:

OPCIONES
# -S sockname Da nombre a la sesión [pid].sockname.
# -ls Lista las sesiones abiertas de screen.
# -r Reattach a un sesión. Es posible especificar el nombre ej: screen -r sockname.
# -t título Permite dar un título a una ventana.
# Ctrl-a ? Ayuda y sumario de funciones.
# Ctrl-a c Crear una nueva ventana (sin nombre).
# Ctrl-a Ctrl-n Cambiar a la Siguiente o Anterior terminal.
# Ctrl-a Ctrl-N Cambiar a la Siguiente o Anterior terminal N [0-9].
# Ctrl-a ” Lista navegable de terminales en funcionamiento.
# Ctrl-a a Limpiar un Ctrl-a pulsado por error.
# Ctrl-a Ctrl-d Desconectar y dejar la sesión en funcionamiento.
# Ctrl-a x Bloquear todas las terminales con una clave.
# Ctrl-a d Dettach. Sale de la sesión pero la deja en segundo plano junto a todas sus ventanas.
# exit Cierra la ventana actual. Cerrando todas las ventanas se cierra la sesión de screen.

Como puedes ver hay numerosas opciones bastante interesantes yo hace años que la uso y te aseguro que uso como mucho 3 o 4 de ellas solamente, combinada con Tmux y otras las aplicaciones en un entorno de producción donde tienes que estar constantemente monitorizando o haciendo varias cosas vía Shell su uso se hace imprescindible, espero que te sea de ayuda el dato!

Hasta otra…

Cluster Apache Proxy Balancer

Que es un proxy?

Según la Wikipeda “en una red informática, es un servidor, programa o dispositivo, que hace de intermediario en las peticiones de recursos que realiza un cliente (A) a otro servidor (C)”, es decir, es un método usado para controlar en cierta forma el trafico.

En este caso quiero referirme específicamente a Apache Proxy, digamos que tenemos una pequeña Web corporativa donde mostramos simplemente la información de los servicios de nuestra empresa, un pequeño formulario de contacto y algunas imágenes, es evidente que una Web de este tipo no recibirá muchas visitas al día, digamos que como mucho concurrente-mente tendrá un aproximado de entre 10 y 50 visitas al día, ahora pensemos en el trafico que puede llegar a recibir Facebook!, la expresión correcta seria MADRE MIA! no?, pues si, no se la cifra exacta de la cantidad de visitas que recibe Facebook, pero os aseguro que la Web de Facebook no se almacena en un simple paquete de Hosting Reseller, ni en un VPS, ni siquiera en un server dedicado sino en granjas de servidores para garantizar así que la cantidad de visitas simultaneas que recibe esa Web no haga que los servidores caigan y consigan así ese trending topic en Twitter con el hashtag #facebook-down o algo similar.

Hoy quiero plasmar como poner en marcha de forma muy sencilla un cluster con balanceo de carga con un servidor Apache 2.4.10 basado en Debian Jessie 8.7 como HTTP Proxy y 2 servidores Backend basados en Debian Jessie 8.7 tambien, aunque como refiero en la imagen de arriba puede tratarse de servidores que se encuentren en el backend basados en distintos OS o incluso distintos tipos de versiones de Web Server como NGINX, IIS, Apache, etc.

IMPORTANTE:

Obviar en todos los comandos el caracter especial #

Que necesitamos:

  1. Una instalación limpia de 3 servidores (pueden ser maquinas virtuales tranquilamente no os agobies) con Debian Jessie 8.7 (No explicare como instalar Debian en esta ocasión, quizás mas adelante y luego añado acá el link a dicho post) .
  2. Un ordenador cliente con Kitty o en su defecto Putty, o la consola con la que estés habituado a trabajar.
  3. Obviamente conexión a Internet 😉
  4. Ganas de teclear un rato!

A ensuciarnos las manos

Los siguientes pasos son a ejecutar en los tres servidores:

Hacemos un update de las fuentes de APT:

# apt-get update

Instalamos Apache, actualmente al instalarlo desde APT instalara la version 2.4.10, pero probablemente si se hace en un momento en el que el release sea otra versión sera la que instale.

# apt-get install apache2 apache2-doc

Cada servidor ha de tener su respectiva IP con lo cual yo en particular asignare las siguientes:

  • 192.168.1.30 (Servidor Apache Proxy)
  • 192.168.1.31 (Servidor Apache Cluster 1)
  • 192.168.1.32 (Servidor Apache Cluster 2)

Teniendo instalado Apache 2.4.10 en cada servidor modificamos el contenido del index en los dos servidores Backend (Cluster1 y Cluster2) con el siguiente comando (como root):

En el Servidor Apache Proxy:

# cp /var/www/html/index.html /var/www/html/index_.html && echo "PROXY" > /var/www/html/index.html

En el Servidor Apache Cluster 1:

# cp /var/www/html/index.html /var/www/html/index_.html && echo "CLUSTER 1" > /var/www/html/index.html

En el Servidor Apache Cluster 2:

# cp /var/www/html/index.html /var/www/html/index_.html && echo "CLUSTER 2" > /var/www/html/index.html

Ahora si accedemos a cada una de sus IP´s a traves de un navegador veremos que cada una nos muestra PROXY o CLUSTER 1 o CLUSTER 2.

Ahora vamos al servidor Proxy y desde la consola necesitamos activar o habilitar los módulos necesarios para que Apache Proxy funcione correctamente con lo que ejecutamos los siguientes comandos uno a uno, con la ejecución de cada uno de estos comandos veremos de vuelta el aviso de que se debe reiniciar Apache para que entre en funcionamiento cada modulo, no obstante los ejecutamos todos y finalmente haremos el reinicio de Apache.:

# a2enmod proxy
# a2enmod proxy_http
# a2enmod proxy_balancer
# a2enmod lbmethod_byrequests

Ahora reiniciamos Apache 2 con el siguiente comando:

# service apache2 restart

Ahora en principio ya tenemos lo necesario para realizar la configuración del Proxy, así que vamos a  ello.

En el servidor Proxy con IP 192.168.1.30 hacemos un backup del archivo inicial por si acaso y editamos el archivo

/etc/apache/sites-available/000-default.conf quedando con el siguiente de la siguiente manera:


<VirtualHost *:80>

<Proxy balancer://mycluster>
BalancerMember http://192.168.1.31:80
BalancerMember http://192.168.1.32:80
</Proxy>

ProxyPreserveHost On

ProxyPass / balancer://mycluster/
ProxyPassReverse / balancer://mycluster/

</VirtualHost>

En este caso se trata del archivo de configuración de Apache por defecto, lo que se refiere a cualquier solicitud de cualquier dominio que responda al puerto 80 (HTTP), en la sección de Proxy indicamos que se trata de un balancer llamado mycluster, dentro de las etiquetas incluimos a los dos miembros con la directiva BalancerMember indicando su respectiva ruta y puertos correspondientes, el parametro ProxyPreserveHost permite que el salto del servidor FronEnd (Proxy) al servidor BackEnd Cluster 1 o 2 sea transparente para el visitante de la Web, y las directivas ProxyPass y ProxyPassReverse gestionan el salto y la vuelta del servidor de FrontEnd a BackEnd.

Luego de estas modificaciones solo nos resta reiniciar Apache en el servidor Proxy:

# service apache2 restart

Ahora al tratarse de la configuración por defecto del servidor Proxy a nivel de Apache si intentamos acceder a su dirección IP a través del navegador con http://192.168.1.30 veremos que lo que nos muestra es CLUSTER 1, y si refrescamos o actualizamos la Web el contenido cambiara a CLUSTER 2, cada ves que refresquemos comenzara a pasarnos a mostrar el contenido de lo que hay en /var/www/html/* de cada uno de los servidores que estén añadidos al Cluster-Balancer, no obstante como usuarios siempre pensaremos que estamos accediendo al contenido en el Servidor Proxy.

Lo importante de todo esto es la escalabilidad y estabilidad, esto tomando en cuenta que en el caso de que la cantidad de visitas comience a llegar a tal punto en el que los servidores comiencen a caer podemos ir escalando el servicio para conseguir asi repartir de mejor manera el trafico o las peticiones HTTP de los usuarios, mientras mas visitas, añadimos mas servidores al cluster.

Ahora lo siguiente tiene que ser un cluster de MySQL, y dado que esto lo he montado todo en VMWare lo otro sera llevarlo a containers de Docker y comprobar diferencias de rendimiento!

Manten el statu-quo!

Adicional!

Hay algo adicional e interesante que es usado para manejar o gestionar lo relacionado con el balanceo que viene implícito en el Apache, el Balancer-Manager, para activarlo solo has de añadir una configuración adicional a la configuración del VHost, en este caso el archivo quedaría así:


<VirtualHost *:80>
BalancerMember http://192.168.1.31:80
BalancerMember http://192.168.1.32:80

ProxyPreserveHost On
SetHandler balancer-manager
Order allow,deny
allow from 192.168.1

ProxyPass /balancer-manager !
ProxyPass / balancer://mycluster/
ProxyPassReverse / balancer://mycluster/

</VirtualHost>

Ahora reiniciamos el servicio de Apache como siempre:

# service apache2 restart

De esta forma accediendo desde la IP del Proxy y añadiendo balancer-manager como ruta podemos acceder al panel de configuración del Balancer del Proxy donde verían algo como lo que muestro en la imagen a continuación donde tendrás la opción de hacer cambios a nivel del Balancer y aplicarlos en caliente sin necesidad de reiniciar el servicio de Apache!

Reconstrucción de ligamento medial patelofemoral (MPFL) 1era Parte

Son muchas las cosas que han pasado en estos casi 2 años desde que puse en marcha este blog y que por mil motivos no continué, inicialmente por mi sincera incapacidad de dedicar algo de tiempo a el para al menos apuntar algo una ves  a la semana, algunas de estas cosas mas trascendentales o importantes que otras, una de ellas y la que creo mas importante me lleva a hablar un poco de medicina,  a lo que dedicare este post.

Ligamento Medial Patelo Femoral o en sus siglas MPFL es un ligamento que da cierta estabilidad a la rodilla permitiendo que la rotula se mantenga digamos centrada, desde mis 17 o 18 años venia padeciendo de problemas en mis dos rodillas ya que siempre han sido un poco laxas y en dos oportunidades sufri de luxacion de la rotula de mi rodilla derecha, esto al parecer hizo que mis ligamentos se estiraran o desgarraran y que con el tiempo sufriera de cada ves mas dolor en mis rodillas. No obstante no fue sino hasta hace aproximadamente 2 años y medio que bajando la sierra del Collserola con mi familia y los compañeros de clase de mi hija, cargando una mochila de camping de unos 15 kilos, con mi hija en brazos y mi mascota Nymeria (Border Collie de 1 año) atada al cinto de la mochila terminara por crujir (se veia venir), esto me llevo a sufrir de dolores bastante insorportables a partir de alli, trabajar a diario con dicho dolor hasta el punto de cojear mientras caminaba y no poder conducir mas de 20 minutos sin dolor, sin contar que mi actividad fisica se redujo a cero, pasar de correr 6 km diarios y hacer hasta mas de 50 km en bici a no hacer absolutamente nada e incrementar mi peso en 12 kg mas.

Finalmente lo que se sabia, operacion de reconstruccion de ligamento media patelo femoral, la operacion o cirujia para quien no la conozca en el siguiente video esta bastante detallado, les pongo en tipo animacion para evitar ser un poco gore al respecto:

Pues nada! comentar que la operacion realmente no es nada dolorosa, obvio, estas sedado hasta las celulas, te ponen lo que llaman un bloqueo a nivel del nervio femoral, eso te deja con la pierna dormida desde la cadera hasta la puta de los dedos, adicional te ponen la epidural con lo cual todo lo que hacen con tu pierna es totalmente desconocido para ti durante todo el procedimiento, por otro lado a mi adicional a todo ello creo que me han puesto algun tipo de anestesia adicional bien sea a nivel respiratorio o en la via ya que os juro que de lo ultimo que me acuerdo es del anestesista poniendome algo en la via y la mascarilla de oxigeno, lo proximo que recuerdo es del movimiento que note cuando me sacaban de la mesa de operaciones y me pasaban a la camilla para llevarme a reanimacion.

Ahora bien, nada mas llegar a reanimacion, el dolor comienza a aumentar rapidamente, es alli cuando te ponen el bloqueo en el nervio femoral, previa aplicacion de la respectiva morfina que siendo sinceros mola un poco LOL, en mi caso la operacion fue en el Hospital de la Esperanza y he de decir que la atencion muy bien, las enfermeras estupendas, algunas no tanto ya que se ve que no tienen mucha vocacion y estan mas por la pasta, pero luego el resto super amables y muy concientes de que somos personas y no numeros en un papel.

Mi medico cirujano al menos en mi experiencia ha sido genial, es un tío al que la experiencia se le nota con tan solo hablar 2 minutos con el, muy profesional, con un estado de animo positivo y que transmite confianza, muy profesional en todo momento, os dejo la información de el por si en algún momento tienen la necesidad de consultar con un especialista yo sinceramente lo recomiendo con los ojos cerrados su nombre es Joan Leal Blanquet en la Web de topdoctores.es podrán ver un poco mas de su información profesional.

A mi en particular me recibieron para el ingreso el dia anterior a la operacion sobre las 21:00h, la operacion fue a las 08:00h del dia siguiente, el dia anterior puedes comer y beber lo que quieras hasta media noche, ya despues de ello te piden que no comas ni bebas nada, al dia siguiente muy temprano lo primero es el razurado de la pierna entera, ducha con un jabon especial y enjuague bucal con un tipo de enjuague que ellos suelen usar, entiendo que sera tema de normativas sanitarias o que se yo, y si, si me preguntas tienes que ir con la tipica bata de papel e incluso calzoncillos del mismo material que ellos mismos te proporcionan, realmente incomodo la verdad! LOL

Como recomendación, si os toca ser intervenidos en las mismas condiciones/hospital, salir cenados de casa o cenar antes de entrar al hospital que fue lo que yo hice, cerca hay varios sitios donde cenar bien, llevar un disco duro con pelis y un portátil es fundamental, o una tablet en su defecto, aunque creerme que entre los sedantes y las visitas de las enfermeras a la habitación lo que mas desearan es dormir plácidamente en los pocos momentos en los que se encuentren a gusto!

De momento y para no hacer tan largo este post, lo dejare hasta aquí, no obstante os dejo algunas fotos del primer día antes de la operación y en un próximo post añado mas.

PD: el orden de las fotos es descendente en cuanto a cronología se refiere!

Un presunto sedante para dormir mejor
Otro angulo de la habitación, no muy chula la verdad, las plantas de abajo están mucho mejor porque están reformadas
Lo ultimo que te permiten comer a media noche de la víspera de la operación
La cama, un poco incomoda la verdad
Mi antes de la operación de la rodilla
Normas y reglas para las visitas en el hospital

Retomando cosas!

Hace siglos que ni tan siquiera recordaba que tenia un blog en la raíz de mi dominio de siempre (widevision.es), al parecer las horas son pocas y los días me quedan cortos para tantas cosas, no soy de mucho escribir, mas bien de mucho leer, normalmente suelo estar aprendiendo o probando sistemas nuevos, nuevos lenguajes de programación, intentando desesperadamente quizás retomar algún proyecto olvidado, pero otras veces me encuentro tan saturado de tantas cosas relacionadas con mi área laboral que termino haciendo cosas como bricolaje, dibujando, tocando el bajo eléctrico o simplemente viendo alguna serie de moda en Netflix. Hacia mucho tiempo que no escribía acá y creo que algo importante en la vida es tener los hábitos un poco organizados, en muchas oportunidades me parece que intento abarcar muchas cosas, muchas áreas y muchos temas sin considerar que los días tienen solo 24 horas, que tengo familia y que en la vida no todo es la parte laboral o profesional sino que también es de vital importancia dedicar un poco de tiempo a la familia, o incluso a aquellas pequeñas cosas de las que aveces ni nos inmutamos por los ritmos frenéticos de vida que tenemos en nuestra era.

Cosas tan simples como disfrutar de una buena taza de café y simplemente disfrutar del silencio, ver las nubes, ver los arboles, es mas, podemos irnos a algo tan básico como RESPIRAR!, si, aveces hasta respirar lo hacemos mal por el estrés, por no concentrarnos en ello, en fin, creo que es importante aveces hacer un completo breake de todas esas cosas que nos van intoxicando en el día a día y detenerse, y ni tan siquiera pensar, solo existir por un rato, respirar profundamente y sin mas.

Han pasado muchísimas cosas desde mi ultimo post aquí, y como algo que quiero hacer verdaderamente es retomar este blog, poderlo comenzar a desplegar por así decirlo y donde pueda comenzar a guardar un poco de información o compartir alguna otra, intentare dedicar algo de tiempo a diario para irlo actualizando, no se si tu ahora mismo estés leyendo esto, ni siquiera se en que fecha lo estarás leyendo, pero espero que lo que antes, ahora o en un futuro próximo comparta de alguna manera te sirva, bien sea a nivel profesional o personal, y si no es así al menos que a mi me sirva para desahogar o para invertir parte de mi tiempo, o que incluso me sirva para conseguir esa pequeña meta que me estoy planteando ahora mismo que no es mas que hacer que algo mas sea habitual en mi vida, tanto como el café que tomo por las mañanas.

Saludos!

Sons Of Anarchy (RECOMENDADA)

Hijos de la Anarquia

Si eres fanatic@ de las motos clásicas al puro estilo de Harley Davidson o Indian Motorcycle tienes que ver esta estupenda serie de la cadena FX que esta ya en su 7ma y ultima temporada. Siempre he sido un fan del buen cine y las series y cuando me entere de esta tenia que darle la oportunidad dada mi afición a las motos clásicas, tengo que decir que luego de ver el capitulo 1 de la temporada 1 no pude parar, termine 6 temporadas en menos de 2 semanas, el poco tiempo libre del que disponía lo empleaba en ver la serie y la verdad es que no me arrepiento.

La serie es una especie de mezcla entre las clásicas películas de EL PADRINO donde se da importancia a la familia que es conformada por los amigos que integran el club de motos, y al mismo tiempo tiene un poco de Breaking Bad ya que se trata de un club de motos que esta metido en toda clase de actividades ilegales, desde trafico de armas y drogas así como sicariato, etc, obviamente no estoy de acuerdo o apruebo este tipo de actividades delictivas, pero lo que he de decir que me gusta mas de la serie (aparte de las estupendas motos y todo ese mundillo) es que tienen una especie de código de honor con el que protegen o hacen aveces justicia por su propia mano ante la intranquilidad o la impunidad que incluso en nuestro mundo real es muchas veces mas que evidente.

En fin! una serie cargada de testosterona, motos, tramas, intrigas y demás que no puedes perderte!.

Referencia IMdb: http://www.imdb.com/title/tt1124373/

XIRRUS WIFI – Review básico!

Xirrus LogoCuando se trata de dar cobertura WIFI en casa solemos conformarnos con el equipo que nos entrega nuestro ISP que suele ser un Router ADSL o una ONT de Fibra Optica con antena WIFI de una calidad media/baja, en su gran mayoría suelen ser equipos de calidad dudosa dado que habitualmente las empresas operadoras se cubren las espaldas dando una descripción aveces un poco ambigua del servicio para evitar garantizar demasiado según que servicio. Lo tipico es recibir en casa el par de cobre o la fibra óptica conectado a algún equipo chino de bajo coste y bajas prestaciones (no desmerezco las cosas chinas pero en general la electrónica no suele ser muy buena) compatibles con “a/b/g” y últimamente también en “n”.

Hoy dia ya tenemos en el mercado multitud de equipos compatibles con la nueva IEEE 802.11ac, que nos ofrece velocidades mucho mayores en nuestros equipos siempre y cuando nuestro portátil, tablet o smartphone sea compatible con dicha tecnología podemos disfrutar de ella, los costes suelen variar mucho y si eres de esas personas que detesta estar unido a un cordón umbilical y requieres mas libertad garantizando la velocidad te toca invertir un poco mas de lo habitual!

Pues bien, hace poco en el trabajo he tenido la grata oportunidad de conocer un excelente producto/fabricante tomando en cuenta la relacion calidad/precio que suelen tener, se trata de una empresa llamada XIRRUS que cuenta con una excelente gama de productos WIFI empresariales con excelentes prestaciones y de muchos tipos tanto para interiores como exteriores, controladores, switches etc, pero una de las cosas mas llamativas de estos equipos es su sistema operativo (OS) llamado ArrayOS que cuenta con un Firewall Embebido Palo Alto con filtrado a CAPA 7, si, haz leído bien! WIFI a CAPA 7.

Estos equipos tienen la posibilidad de filtrar o bloquear contenidos a nivel de aplicación, con lo cual puedes filtrar trafico casi para cualquier tipo de aplicación, puedes bloquear aplicaciones como Facebook, Whatsapp, Twitter, etc, con lo que si eres el SYSADMIN de una empresa en la que desplieguen estos equipos y los jefes te ponen detrás de su administración a bloquear estas aplicaciones te puedes quedar rápidamente sin amigos!

He tenido la oportunidad de hacerme la certificación XIRRUS CERTIFIED WIRELESS TECHNICIAN (XCWT) y trabajar con los XR-620 de 2 modulos y los RX-2436 de cuatro modulos, cada uno de estos equipos cuenta con 2 puertos Ethernet Gigabit, uno de ellos PoE, en el caso de los XR-620 el PoE es de 20W y en el caso de los RX-2436 son de 75W (estos últimos se calientan un poco). En cuanto a los puertos Ethernet tienes posibilidad de configurarlos en bonding para lograr redundancia, también como load balance o incluso puedes configurarlos como Daisy Chain para conectar así muchos de ellos en cascada.

Mi opinión personal de estos equipos es bastante buena, son equipos de un precio un poco elevado para tenerlos en casa, pero me parecen una apuesta muy acertada para despliegue WIFI a nivel empresarial o para PYMES, son equipos con excelente rendimiento y prestaciones, 100% recomendados!

Al finalizar el curso de formación XCWT he tenido la fortuna de recibir como obsequio por el fabricante uno de estos estupendos equipos para practicar y jugar un poco con su configuración, os dejo algunas fotos!

20150205_193844.jpg 20150205_193838.jpg 20150205_193817.jpg 20150205_193756.jpg 20150205_193737.jpg 20150205_193708.jpg 20150205_193637~2.jpg

Mas adelante publicare algo sobre sus opciones de configuración!

Activando Apache en Mac OS X Yosemite

Probablemente seas uno de esos usuarios de Mac OS X (al menos en cuanto a Sistema Operativo se refiere) que suele programar y que para ello requiere tener un entorno en el cual trabajar, la mayoría de las personas suelen programar en entornos de tipo LAMP (Linux, Apache, MySQL y PHP) y puede que al actualizar a Yosemite (dependiendo de la versión de OS X de la que vengas) te hayas dado cuenta de que ya no tienes la opción de habilitar Apache desde Preferencias del Sistema, pues la activación en Yosemite es muy sencilla y lo puedes conseguir con los siguientes simples pasos:

  1. Accedes al Terminal de OS X, puedes hacerlo presionando la tecla CMD + ESPACIO con lo cual se abrirá el prompt de Spotligh y en el puedes escribir terminal y presionar enter.
  2. Una ves en la consola o como llaman en OS X Terminal ejecutas el comando sudo apachectl start y a partir de ese momento ya puedes acceder desde tu navegador colocando en la barra de direcciones http://localhost

El tema es que lo que te mostrara el navegador en ese momento se trata del directorio por defecto de Apache en OS X que se encuentra ubicado en /Library/WebServer/Documents/ y puede que tengas tus documentos o proyectos Web en otro lugar y que no te haga gracia moverlo todo al directorio por defecto, con lo cual tienes que configurar Apache para que vea tu directorio Web, yo en mi caso suelo usar el directorio Web de mi usuario, por ejemplo Usuarios/usuario/Sites, para ello tienes que crear un archivo llamado usuario.conf dentro del directorio /etc/apache2/users con el siguiente contenido:

<Directory "/Users/username/Sites/">
  AllowOverride All
  Options Indexes MultiViews FollowSymLinks
  Require all granted
</Directory>

En el directorio has de cambiar username por el nombre corto de tu usuario de OS X, y guardas el archivo y compruebas que los permisos sean 644, para comprobarlo has de ejecutar el siguiente comando:

ls -l /etc/apache2/users/

El resultado tendría que ser algo como esto:

-rw-r--r--   1 root  wheel  298 Jun 28 16:47 username.conf

De no ser así puedes aplicar los permisos con el siguiente comando:

sudo chmod 644 /etc/apache2/users/username.conf

Luego de esto debes percatarte de que los módulos de Apache están cargados, tienes que modificar el archivo /etc/apache2/httpd.conf y en caso de estar comentadas debes desconectar las siguientes lineas:

LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
LoadModule userdir_module libexec/apache2/mod_userdir.so
Include /private/etc/apache2/extra/httpd-userdir.conf

Luego debemos editar el archivo sudo nano /etc/apache2/extra/httpd-userdir.conf y descomentar la siguiente linea:

Include /private/etc/apache2/users/*.conf

Ahora solo reiniciamos el servicio de Apache con el siguiente comando:

sudo apachectl restart

Finalmente abrimos en nuestro navegador el directorio Web de nuestro usuario colocando la siguiente dirección en nuestro navegador favorito cambiando la palabra usuario por el nombre de nuestro usuario local:

http://localhost/~usuario

Y listo!, ya tenemos nuestro Apache configurado y apuntando a nuestro directorio Web en ves de al directorio Web por defecto, espero que os sirva!

Saber siempre tu IP/WAN

Aveces queremos acceder a nuestros ordenadores de casa desde el exterior bien sea porque tienes algún archivo en uno de tus discos duros locales, deseas conectar remotamente con uno de tus ordenadores o cualquier otra cosa similar, por ejemplo en este caso me he montado una Rapsberry Pi 2 en casa para montar en ella un Media Center y así dejar de compartir el contenido multimedia desde mi portátil principal hacia la consola, con lo cual necesitaba tener aparte de el portátil encendido y operativo y aparte encender la consola, esto aunque no parezca a diario puede tener un resultado no muy positivo a nivel de la factura de la luz sin hablar que es obviamente todo mucho mas tedioso.

Lo que he hecho ha sido montar una Rapsberry Pi 2 con RapsBMC al cual he conectado mis discos duros externos y me he instalado el Transmission-Daemon entre otras cosas, el tema es saber constantemente la IP WAN tomando en cuenta que tengo una IP dinámica con mi ISP.

20150213_204743.jpg 20150213_204818.jpg 20150213_205011.jpg 20150213_205139.jpg 20150213_205203.jpg 20150213_205333.jpg 20150213_212253_HDR.jpg 20150213_212254.jpg

Algunos servicios como NO-IP.COM, DynDNS entre otros suelen ofrecer gratuitamente por un determinado tiempo la instalación de una App en el ordenador/servidor para que constantemente se sincronice con el servicio y de esa forma puedas traducir tu IP mediante una DNS que ellos te ofrecen al puro estilo de un sub-dominio como por ejemplo test.no-ip.org o cualquier otro, el problema con estos servicios es que hoy en día luego de unos 15 días al vencer te solicitan que pagues el servicio o en todo caso notificaciones para que renueves constantemente el servicio lo cual se hace tedioso.

Yo como no me quiero complicar demasiado la vida lo que he pensado hacer es un crond que se ejecute a diario y me envié un archivo de texto a una carpeta FTP de mi servidor dedicado con el numero IP de mi servicio de Internet de casa, de esta forma el dia que note que no puedo acceder a mis recursos en casa sera tanto como entrar a mi directorio FTP y comprobar el ultimo archivo cargado y conocer la IP actual.

Ahora ¿como lo he hecho?
Fácil!, teniendo en marcha el Rapsberry y tomando en cuenta que la distro instalada esta basada en Debian simplemente nos instalamos curl con el siguiente comando:

apt-gt install curl

Teniendo curl instalado desde la consola podemos ejecutar el siguiente comando:

curl ifconfig.me

Esto nos devolverá la IP publica, el problema es que la unica forma de saberla de esta forma es conectandome via SSH al Rapsberry y si no conozco la IP publica sera obviamente complicado, con lo cual instalamos expect con el siguiente comando:

apt-get install expect

Ahora creamos un pequeño script en bash con el siguiente contenido:

#!/bin/bash/expect -f 
ip=$(curl ifconfig.me) #Variable de extracción de la IP WAN 
fecha=$(date +”%m_%d_%Y”) #Variable de fecha 
archivo=”/root/$ip._$fecha.txt” #Directorio y nombre del archivo 
echo $ip > “$archivo” #Imprimimos el archivo 
lftp -u [user],[password] ip « EOF #Abrimos conexión FTP 
set ssl:verify-certificate no #Para evitar validación de SSL en caso de tenerla 
set ftp:ssl-force true #Forzar el SSL 
set ftp:ssl-protect-data true #Habilitar la protección de datos 
put $archivo #Subimos el archivo 
bye #Finalizamos 
EOF #Cerramos la conexión   
rm -rf $archivo #Para no dejar archivos en local lo eliminamos.

Ya lo tenemos! lo guardamos como archivo con extensión .sh y lo ejecutamos, yo por ejemplo lo he llamado getip.sh, lo ejecuto con el siguiente comando:

sh getip.sh

Durante el progreso puedes ver lo que va haciendo, una ves terminado y para comprobar si ha funcionado sera solo mirar nuestro directorio FTP y comprobar que el archivo esta cargado allí.

Ahora simplemente editamos el crontab para que se ejecute de forma automática, yo por ejemplo lo he configurado para que lo ejecute cada dia a las 10:00 horas. Editamos el arachivo /etc/crontab y al final del archivo añadimos la siguiente linea: 

00 10 * * * sh /root/getip.sh

Y woala!, ya lo tenemos, todos los días a las 10 de la mañana el archivo .sh se ejecutara enviando a nuestro FTP un archivo de texto con nuestra IP publica como nombre y con ella como contenido de texto, así que en el momento en que vea que la IP publica habitual deja de funcionar solo tendré que entrar al FTP y ver el ultimo archivo creado para conocerla.

Espero que a quien me lea le sea de provecho!

Sysadmin Day (Ultimo viernes de Julio)

Sysadmin Day
Sysadmin Day

El pasado viernes 25/07 se celebro el día de los Administradores de Sistema, a todas aquellas personas que se dedican a esta actividad como su servidor, felicidades!

Parece mentira que aun existen personas que piensan que los Administradores de Sistema somos personas que perdemos nuestro tiempo frente a los ordenadores, otras piensan que somos locos, muchísimas veces me he topado con personas que me dicen cosas como: es que los informáticos son personas especiales, es decir son medio locos tu sabes no?, bueno como dice el dicho cada cabeza es un mundo, lo cierto es que los Administradores de Sistemas o Informáticos en general somos personas más que nada tercas, empecinadas en lograr cosas que parecen difíciles pero que muchas veces solo requieren un poco de tiempo o paciencia, yo en particular suelo ser así, en el momento en que estoy intentando instalar algo y no lo logro, o que estoy programando alguna función, o simplemente intentando automatizar algún flujo de trabajo en una red o algún ordenador y veo que no lo logro, es cuando me armo de paciencia y hasta que no lo consigo no me levanto del asiento, simplemente un poco de paciencia, lógica y muchas ganas de leer son pienso yo las herramientas más importantes para lograr nuestros cometidos!
A quien lo sea: Feliz día del Administrador de Sistemas!