Archive | mayo, 2010

VTL en Almacenamiento Abierto

Tags: , , , , , , ,

VTL en Almacenamiento Abierto

Posted on 30 mayo 2010 by Angel Ferrás Rodríguez

Incorporamos a nuestro laboratorio una VTL basada en el proyecto Linux Virtual Tape Library.  Desarrollaremos en diferentes artículos como se crea y configura cada elemento y escenario de nuestro entorno de pruebas. Para la sección VTL  hemos preparado los siguientes artículos :

- Virtualización de librerías de cintas. Breve introducción a las librerías de cintas virtuales.

- ¿Que es SCST? Introducción al proyecto SCST sobre el cual está basado el proyecto Linux Virtual Tape Library.

- VTL Open Source sobre iSCSI. Una guía para implementar paso a paso y de forma secilla una VTL iSCSI basada en el proyecto Linux Virtual Tape Library.

- Comprobación de VTL Open Source iSCSI operando con software de backup de Symantec. Un ejemplo que expone como un software típico de administración de backup opera con la VTL creada en el capítulo anterior.

- VTL Open Source en Ubuntu 10.04 descargable para VMWARE

- VTL Open Source sobre FC. Una guía para implementar paso a paso y de forma secilla una VTL FC basada en el proyecto Linux Virtual Tape Library.

 

 

 

About Angel Ferrás Rodríguez

Ingeniero Superior en Electrónica que trabaja en la actualidad como Analista de Sistemas. Se especializa en Sistemas SAN, Almacenamiento y Backup en base a su experiencia en los sistemas informáticos de grandes cuentas. Escribe en la actualidad en web especializada de almacenamiento sobre soluciones de código abierto.

Comments (2)

Comprobación de VTL Open Source operando con Symantec Backup Exec

Tags: , , , , ,

Comprobación de VTL Open Source operando con Symantec Backup Exec

Posted on 24 mayo 2010 by Angel Ferrás Rodríguez

A continuación se muestra como la VTL Open Source sobre iSCSI creada en el capítulo anterior se integra en un software típico de administración de copias de seguridad en cintas como Symantec Backup Exec 12.5 para servidores Windows.

El entorno elegido ha sido un Windows Server 2008 SP1 de 32 bits. Se ha hecho un escaneo de la IP del servidor que contiene el proyecto mhvtl desde su iSCSI initiator y ha reconocido todos sus dispositivos:

Listado de dispositivos iSCSI w2k8

Desde la consola de Symantec Backup Exec 12.5 se observan igualmente las librerías y lectores de cintas:

Se hace una prueba sencilla: copia de respaldo de una carpeta del servidor y su restauración. Como se puede observar concluyen con éxito:

About Angel Ferrás Rodríguez

Ingeniero Superior en Electrónica que trabaja en la actualidad como Analista de Sistemas. Se especializa en Sistemas SAN, Almacenamiento y Backup en base a su experiencia en los sistemas informáticos de grandes cuentas. Escribe en la actualidad en web especializada de almacenamiento sobre soluciones de código abierto.

Comments (2)

VTL Open Source sobre iSCSI

Tags: , , , , ,

VTL Open Source sobre iSCSI

Posted on 23 mayo 2010 by Angel Ferrás Rodríguez

La instalación se hará en cuatro fases:

 

1.- Obtener las fuentes del núcleo de Linux

2.- Compilar un núcleo con el proyecto SCST

3.- Compilar proyecto mhvtl

4.- Configurar dispositivos para mhvtl



El escenario:

Se ha elegido la instalación sobre un Sistema Operativo Centos versión 5.4 de 64 bits. En nuestro AA Labs hemos elegido una máquina virtual  hospedada en un VMWARE Server sobre OpenSuse 11.2.

1.- Obtener las fuentes del núcleo de Linux

Documentación:

Wiki CentOS: http://wiki.centos.org/HowTos/I_need_the_Kernel_Source

Foros de nimsa

Procedimiento:

Instalar entorno de compilación y todos los paquetes necesitados para las cuatro fases junto con todas sus dependencias:

# yum install make gcc hmaccalc openssl openssl-devel zlib-devel lsscsi mt-st mtx rpm-build redhat-rpm-config unifdef kernel-headers subversion

Crear usuario vtl y asignar contraseña:

# useradd vtl
# passwd vtl

 

Crear directorios /opt/mhvtl y /etc/mhvtl y se hace propietario a nuevo usuario:

# mkdir /opt/mhvtl
# chown -Rf vtl:vtl /opt/mhvtl

# mkdir /etc/mhvtl
# chown -Rf vtl:vtl /etc/mhvtl

Loguearse como usuario vtl:

#su – vtl

Conocer la versión del núcleo Linux que corre en tu sistema:

$ uname -a

Linux centos.ferras.local 2.6.18-194.3.1.el5 #1 SMP Thu May 13 13:08:30 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

Desempaquetar y preparar los archivos Fuentes:

[vtl@centos ~]$ cd

[vtl@centos ~]$ mkdir -p rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

[vtl@centos ~]$ echo '%_topdir %(echo $HOME)/rpmbuild' > .rpmmacros

Descargar el paquete de Fuentes que corresponde a la versión de Kernel de tu CentOS/RHEL desde aquí e instalarlo:

$ rpm -i http://mirror.centos.org/centos/5/updates/SRPMS/kernel-2.6.18-194.3.1.el5.src.rpm

$ cd ~/rpmbuild/SPECS

$ rpmbuild -bp --target=`uname -m` kernel-2.6.spec

 

Comprobar que el árbol de fuentes del kernel esté en /home/vtl/rpmbuild/BUILD/:

 

$ ls ~/rpmbuild/BUILD/

kernel-2.6.18[vtl@centos SPECS]$ cp -Rf /home/vtl/rpmbuild/BUILD/kernel-2.6.18/linux-2.6.18.x86_64 /usr/src/kernels/

Copiarlos como root a /usr/src/kernels:

 

#cp -Rf /home/vtl/rpmbuild/BUILD/kernel-2.6.18/linux-2.6.18.x86_64 /usr/src/kernels/

2.- Compilar un núcleo con el proyecto SCST

Documentación:

Howto ISCSI-SCST: http://iscsi-scst.sourceforge.net/iscsi-scst-howto.txt

Foros de nimsa

Procedimiento:

Como usuario root descargar proyecto scst con subversion y añadir los parches indicados:

# cd /root

# svn co https://scst.svn.sourceforge.net/svnroot/scst/trunk scst

# cd /usr/src/kernels/linux-2.6.18.x86_64

# patch -p1 < /root/scst/iscsi-scst/kernel/patches/put_page_callback-2.6.18.1.patch

# patch -p1 < /root/scst/scst/kernel/scst_exec_req_fifo-2.6.18.patch

Compilar la imagen del kernel:

# make clean
# make && make modules
# make modules_install && make install

Comprobar que ha creado entrada el el grub de nuevo kernel vmlinuz-2.6.18-prep:

# cat /boot/grub/menu.lst

(…)

title CentOS (2.6.18-prep)

root (hd0,0)

kernel /vmlinuz-2.6.18-prep ro root=/dev/VolGroup00/LogVol00

initrd /initrd-2.6.18-prep.img

Reiniciar sistema con nuevo kernel y comprobarlo:

# uname -a

Linux centos.ferras.local 2.6.18-prep #1 SMP Thu May 20 21:13:48 CEST 2010 x86_64 x86_64 x86_64 GNU/Linux

Crear e instalar módulo scst:

#cd /root/scst
#make scst scst_install iscsi iscsi_install scstadm scstadm_install

3.- Compilar proyecto mhvtl

Documentación:

Proyecto Linux Virtual Tape Library

Foros de nimsa

Procedimiento:

Descargar proyecto mhvl en formato tgz desde aquí, se ha elegido la versión de desarrollo mhvtl-2010-05-08 (0.18-7):

# wget http://sites.google.com/site/linuxvtl2/mhvtl-2010-05-08.tgz?attredirects=0

Descomprimir y compilar:

# tar xzvf mhvtl-2010-05-08.tgz

# cd mhvtl-0.18/

# make distclean

# cd kernel

# make

# make install

# cd ..

#make

# make install

4.- Configurar dispositivos para mhvtl

 

Documentación:

Foros de nimsa

Procedimiento:

En el foro de nimsa se ha publicado un script para la creación automática de los ficheros de configuración iscsi-scstd.conf y scst.conf. De esta forma crea una configuración particular de librerías y drives emulados por iSCSI:

[root@centos ~]# cat make_scst_config.sh

#!/bin/ksh

# Customize your own

IQN=iqn.2010-05.es.ferras

# Build /etc/iscsi-scstd.conf

lsscsi -g | grep -e tape -e mediumx| awk '{print $1}'| cut -d "[" -f2| cut -d "]" -f1| while read each; do

echo "Target $IQN:$each" >>/tmp/iscsi-scstd.tmp

done

if [ -f /etc/iscsi-scstd.conf ]; then

cp -f /etc/iscsi-scstd.conf /etc/iscsi-scstd.conf_`date +%m%d%y%H%M%S`

echo Created backup of existing /etc/iscsi-scstd.conf as /etc/iscsi-scstd.conf_`date +%m%d%y%H%M%S`

fi

cat /tmp/iscsi-scstd.tmp >/etc/iscsi-scstd.conf

echo Created new /etc/iscsi-scstd.conf

rm -f /tmp/iscsi-scstd.tmp

echo ——-

# Build /etc/scst.conf

echo "[HANDLER changer]" >/tmp/scst.tmp

lsscsi -g| grep mediumx | awk '{print $1}'| cut -d "[" -f2| cut -d "]" -f1| while read each1; do

echo DEVICE $each1 >>/tmp/scst.tmp

done

echo "[HANDLER tape]" >>/tmp/scst.tmp

lsscsi -g| grep tape | awk '{print $1}'| cut -d "[" -f2| cut -d "]" -f1 | while read each2; do

echo DEVICE $each2 >>/tmp/scst.tmp

done

lsscsi -g | grep -e tape -e mediumx|awk '{print $1}'| cut -d "[" -f2| cut -d "]" -f1| while read each3; do

echo "[GROUP Default_$IQN:$each3]" >>/tmp/scst.tmp

done

lsscsi -g | grep -e tape -e mediumx| awk '{print $1}'| cut -d "[" -f2| cut -d "]" -f1| while read each4; do

echo "[ASSIGNMENT Default_$IQN:$each4]" >>/tmp/scst.tmp

echo "DEVICE $each4,0" >>/tmp/scst.tmp

done

if [ -f /etc/scst.conf ]; then

cp -f /etc/scst.conf /etc/scst.conf_`date +%m%d%y%H%M%S`

echo Created backup of  existing /etc/scst.conf as /etc/scst.conf_`date +%m%d%y%H%M%S`

fi

cat /tmp/scst.tmp >/etc/scst.conf

echo Created new /etc/scst.conf

rm -f /tmp/scst.tmp

echo — Done —

Ejecutarlo:

# sh make_scst_config.sh

Arrancar mhvtl:

/etc/init.d/mhvtl start

Cargar los módulos scst:

modprobe scst
modprobe scst_tape
modprobe scst_changer

Si hemos llegado hasta aquí sin errores deberíamos ver los nuevos dispositivos SCSI del sistema:

# lsscsi

[0:0:0:0]    disk    VMware,  VMware Virtual S 1.0   /dev/sda

[1:0:0:0]    mediumx SPECTRA  PYTHON           550V  -

[1:0:1:0]    tape    IBM      ULT3580-TD4      550V  /dev/st0

[1:0:2:0]    tape    IBM      ULT3580-TD4      550V  /dev/st1

[1:0:3:0]    tape    IBM      ULT3580-TD4      550V  /dev/st2

[1:0:4:0]    tape    IBM      ULT3580-TD4      550V  /dev/st3

[1:1:0:0]    mediumx SPECTRA  PYTHON           550V  -

[1:1:1:0]    tape    IBM      ULT3580-TD4      550V  /dev/st4

[1:1:2:0]    tape    IBM      ULT3580-TD4      550V  /dev/st5

[1:1:3:0]    tape    IBM      ULT3580-TD4      550V  /dev/st6

[1:1:4:0]    tape    IBM      ULT3580-TD4      550V  /dev/st7

# cat /proc/scsi_tgt/scsi_tgt

Device (host:ch:id:lun or name)                             Device handler

0:0:0:0                                                     dev_disk

1:0:1:0                                                     dev_tape

1:0:2:0                                                     dev_tape

1:0:3:0                                                     dev_tape

1:0:4:0                                                     dev_tape

1:1:1:0                                                     dev_tape

1:1:2:0                                                     dev_tape

1:1:3:0                                                     dev_tape

1:1:4:0                                                     dev_tape

1:0:0:0                                                     dev_changer

1:1:0:0                                                     dev_changer

Una comprobación de que los targets iSCSI están correctamente levantados puede ser la siguiente: Desde un Windows XP con el initiator iSCSI instalado se hace un scan a la IP del servidor mhvtl. Se deberán detectar todos los dispositivos iSCSI:

initiator xp

Y desde el  Administrador de dispositivos:

El el siguiente capítulo vamos a poner a prueba la mhvtl creada desde un software de backup, Symantec Backup Exec.

About Angel Ferrás Rodríguez

Ingeniero Superior en Electrónica que trabaja en la actualidad como Analista de Sistemas. Se especializa en Sistemas SAN, Almacenamiento y Backup en base a su experiencia en los sistemas informáticos de grandes cuentas. Escribe en la actualidad en web especializada de almacenamiento sobre soluciones de código abierto.

Comments (4)

¿Qué es SCST?

¿Qué es SCST?

Posted on 23 mayo 2010 by Angel Ferrás Rodríguez

SCST (SCSI target subsystem for Linux) permite la creación de sofisticados dispositivos de almacenamiento con avanzada funcionalidad tales como replicación, thin provisioning, deduplicación, alta disponibilidad y copias de seguridad automáticas. Otra clase de dispositivos pueden ser librerías de cintas virtuales (VTL) y otras soluciones basadas en discos. SCST ya que no está limitado solamente a dispositivos basados en red IP, sino que también soporta cualquier tipo de intercambio de datos basados en SCSI, incluidos Fibra Óptica, iSCSI, SAS, InfiniBand y Wide SCSI.

SCST  provee de forma unificada y consistente una interfaz al sistema  entre los drivers de target SCSI y el kernel de Linux,  también entre los controladores de almacenamiento del backend o controladores de los targets conectados con el almacenamiento real o emulados.

¡ Posiblemente tu servidor o cabina de almacenamiento esté corriendo SCST en su firmware !

El proyecto SCST está compuesto en una serie de subproyectos: Target SCSI genérico de capa media (generic SCSI target mid-layer itself) con un conjunto de controladores de dispositivos y de targets, junto con utilidades en el espacio del usuario.

Página del proyecto : http://scst.sourceforge.net/

About Angel Ferrás Rodríguez

Ingeniero Superior en Electrónica que trabaja en la actualidad como Analista de Sistemas. Se especializa en Sistemas SAN, Almacenamiento y Backup en base a su experiencia en los sistemas informáticos de grandes cuentas. Escribe en la actualidad en web especializada de almacenamiento sobre soluciones de código abierto.

Comments (1)

Virtualización de Librerías de Cintas

Tags: , ,

Virtualización de Librerías de Cintas

Posted on 21 mayo 2010 by Angel Ferrás Rodríguez

Desde la bajada  del precio de los discos, las soluciones de copias de seguridad y recuperación de desastres en los Centros de Datos estan cambiado. La forma tradicional para mantener copias de los datos de nuestros Data Centers ha sido durante décadas sobre cintas magnéticas. Los discos, en la actualidad por precio,  mejoras en consumo eléctrico, rendimiento y aumento descomunal de su capacidad, auguran la muerte del soporte magnético que tantas décadas han puesto nuestros datos a buen recaudo. Paralelamente durante estos años se ha desarrollado  un software que garantiza la eficacia y el éxito de las copias, automatizando dichas tareas de forma desanvmwaretendida. La calidad del software de gestión automática de backup y recuperación de desastres se ha convertido en un amortiguador de migración de soportes. Con la reciente aparición de soluciones tipo VDR/SRM en los entornos virtualizados de VMWARE nos podemos hacer una idea del futuro próximo de las fórmulas de backup y contingencia que encontraremos. En la actualidad los grandes proveedores  de almacenamiento nos proponen un modelo híbrido que incluyen una de las soluciones software de administración automática de copias de seguridad tales como Netbackup, Legato o TSM pero sustituyendo las clásicas librería de cintas por homólogos virtulizados  llamados VTL (Virtual Tape Library), que a su vez pueden convivir con las clásicas proporcionando mejoras sustanciales en las ventanas de copias. Estas librerías de cintas virtuales son servidores que disponen de targets de fibra óptica, iscsi (o cualquier protocolo de almacenamiento ej. SAS) emulando a nivel software librerías y lectores de cintas estándares y dialogan como tales con los administradores software de copias de seguridad, con la diferencia que la información es guardada en discos. De esta forma se consigue desde la administración de los sistemas de copias de seguridad tradicional que la migración de soporte, magnético a disco, no cambie, disfrutando de las virtudes de este software clásico de administración junto con otras de las excelencias que tiene esta migración, el incremento de velocidafalconstored de la copia y restauración. Éste modelo híbrido en una solución ideal, implementándose desde hace tiempo con éxito en muchos centros de datos, ejemplo de ello son las VTLs de FalconStore . Desde Almacenamiento Abierto, vamos a dedicar una sección a estos entornos virtualizados, aprendiendo como implementar una solución Open Source e integración con un software clásico de backup.

About Angel Ferrás Rodríguez

Ingeniero Superior en Electrónica que trabaja en la actualidad como Analista de Sistemas. Se especializa en Sistemas SAN, Almacenamiento y Backup en base a su experiencia en los sistemas informáticos de grandes cuentas. Escribe en la actualidad en web especializada de almacenamiento sobre soluciones de código abierto.

Comments (2)