TooManySecrets HeadQuarters

All about BSD, OpenSolaris, Linux, BD, programming... 
« Back to blog

Novedades en las Ășltimas versiones de OpenSolaris.

ZFS:

1º. Deduplicación (aka dedup). Se trata de que si hay 2 bloques iguales (osea, que tengan identico hash) cambia el puntero de uno hacia los datos del otro, dejando el espacio disponible. En zfs la deduplicación es síncrona (se realiza durante el proceso de escritura en el disco). Imaginemos en entornos de virtualización (cada vez con más presencia) donde se instalan un número elevado de máquinas virtuales que comparten el 70% del sistema operativo...el ahorro en espacio es considerable, pero ¿y el rendimiento?... tambien, en tanto los datos que pasan a la memoria cache (ya sea en ARC o ARC2) va a ser utilizada por todas las maquinas virtuales (no es necesario escribir varias copias del mismo bloque en la caché, con lo que disponemos de mayor cantidad de caché para otros bloques).

2º. zpool recovery support: Esto es algo realmente muy importante y práctico en sistemas en los que los discos no hacen lo que dicen haber hecho, ya que puede ocurrir lo teoricamente imposible; una corrupción del pool a nivel de uberblock (único nivel que no son corregibles los errores, pues al resto de niveles la corrección se realiza de forma casi automática a través del self healing). Basicamente lo que hace es eliminar la última entrada del uberblock de tal modo que recupera la entrada inmediatamente anterior, la corrección se realiza con el siguiente comando (como de costumbre y podeis apreciar, en zfs los comandos siempre son complejos y dificiles de recordar... ;-) ).

zpool clear -F


Por cierto... Para quien tenga este problema (con versiones anteriores de opensolaris), la solución: arranca opensolaris con un live-cd
(128 o superior)  ejecuta  zpool clear -F ... y a funcionar.

Otra cuestion respecto a ZFS: la no inclusion de ZFS en OSX snow leopard: Mucho se ha hablado de este tema, que si no estaban
convencidos de la fiabilidad, que si habría que realizar muchos cambios internos en OSX, etc, etc... La respuesta es más simple que esa... y la tenemos en un mensaje de un foro en el que Jeff Bonwick (creador de ZFS) indica  lo siguiente:

> Apple can currently just take the ZFS CDDL code and incorporate it
> (like they did with DTrace), but it may be that they wanted a "private
> license" from Sun (with appropriate technical support and
> indemnification), and the two entities couldn't come to mutually
> agreeable terms.

I cannot disclose details, but that is the essence of it.

Jeff

 

Continuando con el tema de las novedades, lo que viene a continuación, personalmente, creo que es una auténtica maravilla donde las haya:

Imaginemos la situación:

Tenemos 3 equipos que actuan como servidores de aplicaciones web y queremos un balanceador de carga entre los diferentes equipos (así como un reverse-proxy para que se pueda acceder a los mismos desde fuera de nuestra red). Para esto tenemos varias opciones; apache (tienen un módulo de reverse proxy y balanceo de carga), instalar un programa de balanceo de carga y reverse proxy ad-hoc o... podemos usar ILB (Integrated L3/L4 Load Balancer) en opensolaris.

¿Cómo funciona? Basicamente creamos un grupo:

ilbadm create-servergroup -s servers=webserv1,webserv2,

webserv3 webgroup

Al que podemos añadir nuevos elementos:

ilbadm add-server -s servers=webserv4 webgroup

Finalmente creamos una regla que especifique qué puerto debemos balancear, qué rango de ips están involucradas, el algoritmo de balanceo usado, el tipo de chequeo para comprobar que el servidor está "vivo" así como otras opciones adicionales (filtrado de paquetes, etc).

ilbadm create-rule -i port=80,vip=15.192.0.0,ipversion=IPv4 \
       -m lbalg=hash-IP-port,type=NAT \
       -o servergroup=webgroup webrule


Inconvenientes: Tiene una cantidad menor de featurares que los programas ad-hoc (de pago).

Ventajas: Rendimiento (al estar insertado en la propia pila ip del kenel (como módulo eso si).
              Sencillez de concepto y manejo.
              Podemos configurar qué puertos deseamos balancear (y no solamente los habituales como http, o https).
              Podemos balancear rangos completos de puertos (o la totalidad de las conexiones).
              Integracion con kstat.
              Integracion con crossbow.

En estos momentos disponemos de una herramienta que, en conjuncion con crossbow, nos permite personalizar hasta limites insospechados la
creacion de redes virtuales (muy utiles en sistemas de virtualizacion), así como facilitar enormemente la adopción de ciertas tecnologías que cualquier Pyme muchas veces implementa, bien gastándose un pastón indecente, o bien (en algunas ocasiones) muy cutremente.

Estas notas han sido extraidas/traducidas/copiadas/ortográficamente-adaptadas, de la información proporcionada por Francisco Javier García en la lista ug-sposug (gracias mil Francisco Javier).

Have a nice day ;-)
TooManySecrets

Loading mentions Retweet

Comments (0)

Leave a comment...

 
To leave a comment on this posterous, please login by clicking one of the following.
Posterous-login     twitter