Está en: »

Artículos

Tolerancia a fallos y balanceo de cargas en red (bonding)

La técnica bonding consiste básicamente en hacer funcionar varias tarjetas de red con la misma dirección ip. Así podemos realizar que funcionen como una única tarjeta, obteniendo ventajas como la tolerancia a fallos y balanceo de cargas.

Actualmente hay 7 métodos de funcionamiento:

  • balance-rr (mode=balance-rr o mode=0): Configura una política de round-robin para la tolerancia de fallas y balanceo de cargas. Las transmisiones son recibidas y enviadas secuencialmente en cada interfaz esclava vinculada comenzando con la primera disponible.
  • active-backup (mode=active-backup o mode=1): Configura una política de respaldo activa para la tolerancia de fallas. Las transmisiones son recibidas y enviadas a través de la primera interfaz esclava vinculada disponible. Sólo se utiliza otra interfaz esclava vinculada si la interfaz esclava activa falla.
  • balance-xor (mode=balance-xor o mode=2): Configura una política XOR (o-exclusivo) para la tolerancia de fallas y el balanceo de cargas. Usando este método la interfaz coincide la dirección MAC de las peticiones entrantes con la dirección MAC de una de las NICs esclava. Una vez que se establece el enlace, las transmisiones son enviadas secuencialmente comenzando con la primera interfaz disponible.
  • broadcast (mode=broadcast o mode=3): Configura una política de difusión para la tolerancia de fallas. Las transmisiones son enviadas en todas las interfaces esclavas.
  • 802.3ad (mode=802.3ad o mode=4): Configura una política de agregación de enlace dinámico IEEE 802.3ad. Crea grupos de agregación que comparten las mismas especificaciones de velocidad y duplex. Transmite y recibe en todos los esclavos en el agregador activo. Requiere de un switch que sea conforme con 802.3ad.
  • balace-tbl (mode=balace o mode=5): Configura una política de balanceo de carga de transmisión (Transmit Load Balancing, TLB) para la tolerancia de fallas y el balanceo de cargas. El tráfico saliente es distribuido de acuerdo a la carga actual en cada interfaz esclava. El esclavo actual recibe el tráfico entrante. Si el eslavo receptor falla, otro esclavo toma la dirección MAC del esclavo fallido.
  • balance-alb (mode=balance o mode=6): Configura una política de balanceo de cargas activa (Active Load Balancing, ALB) para la tolerancia de fallas y el balanceo de cargas. Incluye el balanceo de cargas de transmisión y recepción para el tráfico IPV4. Se logra el balanceo de las cargas recibidas a través de la negociación ARP.


Es importante que el kernel soporte bonding. La mayoría de las distribuciones cotidianas actuales lo soportan, como es el caso de openSuse.

Continúe leyendo…

Despertar equipo por la red (wake on lan WOL)

Alguna que otra vez necesito acceder a alguna máquina de la red, y normalmente, está apagada. Como tengo un servidor 24 horas online (tengo un post pendiente sobre el mismo), pues he configurado los demás equipos de la red para que puedan despertar al mandarle un determinado paquete (magicpacket).

Para openSuse (creo que es el mismo método para fedora/Red Hat), simplemente hay que editar el archivo de configuración para la interface de red que queramos utilizar para despertar el equipo.
En mi caso , utilizo la interface eth0, por lo que edité el archivo /etc/sysconfig/network/ifcfg-eth0

Continúe leyendo…

Gimp – Guardar para Web (save for web)

gimp - guardar para web

gimp - guardar para web

Una de las cosas que más utilizaba en photoshop y echaba de menos en gimp es la opción de guardar para web, pero encontré un pluging para gimp que nos permite esta opción

http://registry.gimp.org/node/33

Continúe leyendo…

Configurar servidor y cliente NFS en openSuse o en cualquier GNU/linux

Configurar una red nfs en sistemas GNU/Linux es muy, pero que muy sencillo.

Continúe leyendo…

Compresor de código javascript


Últimamente he estado añadiendo algunas actualizaciones para las cuales he añadido varias librerías javascript. Ya que el tamaño de carga estaba aumentando considerablemente, decidí utilizar algún compresor de código.

Tras bastante rato probando algunos con resultados poco satisfactorio (no funcionaban los códigos resultantes), encontré el proyecto JSMin del señor Douglas Crockford el cual me llamó la atención. Al ver que el proyecto estaba hospedado en code.google.com, me pareció una muy buena opción, pero claro, daba el código del proyecto para varios lenguajes.

Como es normal, me decanté por php (aquí está la variante del proyecto para php).

La cuestión es que es algo engorroso tener que editar el php cada vez que querramos comprimir algún archivo, y para colmo, el ejemplo sólo muestra el código, de manera que hay que ver la fuente, copiar y pegar en un archivo para guardarlo.

Así que por estas razones, opté por crear un pequeño script php el cual permite un upload de archivo y muestra luego una ruta para su descarga.

Continúe leyendo…

Montar recursos samba en GNU/Linux

En sistemas GNU/Linux – UNIX, lo normal para acceder a un dispositivo es montarlo en alguna ruta del sistema de ficheros. Para acceder a servidores samba, la mayoría de usuarios que conozco, utilizan konqueror, el cual soporta samba a través del maravilloso kioslave de kde. El problema es que al no estar montado, si por ejemplo accedemos a un vídeo, este se copiará al temporal de nuestro sistema y posteriormente se visualizará. Aparte de que si necesitamos que algún software de consola o no kde/Gnome acceda al sistema, no podrá. Principalmente por estos motivos (y algunos más) es recomendable montar el recurso compartido en nuestro sistema de ficheros.

Podemos hacerlo en consola con el siguiente comando:

mount.cifs //ip_o_nombre_del_servidor/recurso_compartido /ruta/al/directorio/donde/montarlo -o user=usuario_de_acceso,pass=contraseña_usuario_de_acceso,iocharset=iso8859-15,codepage=cp850

Es fácil de entender, pero explicaré las opciones (lo posterior a -o):

  • user -> usuario con el que queremos acceder al servidor.
  • pass-> contraseña del usuario anterior.
  • iocharset -> especifica los caracteres a utilizar en la configuración del servidor samba (iso8859-15 es la codificación por defecto en equipos windows)
  • codepage -> establece la codificación en el servidor.

A pesar de decantarme normalmente por usar la consola, es cierto que suele ser algo incómodo ya que habría que buscar los equipos, explorar recursos compartidos y montarlos. Hay una aplicación que suelo utilizar por comodidad para esta acción la cual se llama smb4k. En openSuse bastaría con un

zypper install smb4k

Una vez abierta la aplicación, podemos ver los recursos compartidos para dicha red (si tiene openSuse y tiene el cortafuegos habilitado, es posible que no aparezca ningún equipo. En este post explico como dar solución al problema).

Continúe leyendo…

Exploración de recursos samba con el cortafuegos de openSuse activado

Si tenemos una openSuse con el cortafuegos activado, os habreis dado cuenta que al intentar explorar los recursos smb de una red no son detectados.

En openSuse 11, se incorporó una nueva utilidad en el cortafuegos la cual nos permite una exploración de equipos y recursos en la red que nos encontramos. Para activar dicha opción, nos dirigimos al panel de control yast, cortafuegos, difusión. Ahí, en la zona «Aceptando respuestas de difusion (broadcasts)» picamos en Añadir e introducimos la red y el servicio.

yast - Añadir red para exploración de recursos samba

yast - Añadir red para exploración de recursos samba

Con esta regla, permitimos la exploración para toda la red 192.168.1.x

El cortafuegos quedaría así:

yast - Configuración final del cortafuegos

yast - Configuración final del cortafuegos

De esta forma tenemos una exploración sin tener que renunciar a desactivar el cortafuegos de nuestro sistema. Claro está que esto habrá que hacerlo en cada uno de los equipos cliente que tengamos.

Windows como cliente NFS

Si por determinadas circunstancias necesitamos agregar equipos windows a una red NFS, este pequeño «HOWTO» puede sernos de gran utilidad.

Hay que tener en cuenta que tiene varios inconvenientes, y si queremos una red de equipos con distintos sistemas operativos, recomiendo encarecidamente utilizar el maravilloso samba. Al final del artículo explico algunos problemas con los que me topé y por lo que no lo recomiendo.

Descargamos el software Servicios de Windows para UNIX 3.5 desde http://www.microsoft.com/downloads/details.aspx?familyid=896C9688-601B-44F1-81A4-02878FF11778&displaylang=en

Si tenemos Windows Xp Home, el software no funcionará para esta versión. En esta dirección http://oreilly.com/pub/h/2883 explican como corregirlo.

Extraemos los archivos (en una ruta que recordemos, por ejemplo c:UNIX_services).

Lanzamos el asistente de instalación, aceptamos la licencia y elejimos «Custom Instalation»

Servicios de Windows para UNIX - inicio asistente instalación

Servicios de Windows para UNIX - inicio asistente instalación

Continúe leyendo…

Funciones para mssql (Microsft SQL Server)

Aquí os dejo una serie de funciones/sentencias para Microsoft SQL Server (mssql)
Continúe leyendo…

Configurar escáner en red – openSuse 11

Si tenemos un equipo en red con un escáner (como es mi caso) y quereis utilizarlo en otros equipos, con openSuse es bastante sencillo.

El demonio encargado de manejar el dispositivo se llama SANE (Scanner Access Now Easy). El mismo demonio permite el acceso mediante la redsin necesidad de otro software.

En el equipo que contiene el escáner:

  • Abrimos el panel de control YAST -> Hardware -> Escáner
  • Comprobamos que esté configurado (si no es el caso, seguramente lo haya detectado. Simplemente edite la detección y acepte tal cual está)
  • Picamos en el botón Otros y elejimos «Escanear en red»
  • Introducimos las ip de los equipos que se conectarán a este escaner separados por comas.

yast - configuración para compartir escáner

yast - configuración para compartir escáner

  • Siguiente y Terminar
  • Tenemos que abrir el puerto 6566 en tcp en el cortafuegos de esta máquina.

Ahora, en los equipos cliente:

Continúe leyendo…