Hace tiempo me había planteado escribir acerca de este tema, pero debido a la longitud del artículo y al elevado número de conceptos tratados me ha costado un poco estructurarlo, finalmente he organizado todo el contenido basándome en la secuencia en la que se van introduciendo los conceptos y he terminado con la siguiente serie de títulos:
- Instalación de Windows Storage Server 2008 R2 y creación de unidades de disco de red (NAS).
- Creación de unidades de disco de red compartidas e instalación de Failover Cluster de Windows Server 2008 R2 sobre unidades de disco de red.
- Instalación de Failover cluster de SQL Denali y pruebas con grupos de disponibilidad en AlwayOn.
Para tratar de darle más legibilidad a este primer artículo he separado en distintas áreas cada parte del proceso, incluyendo una pequeña introducción a Windows Storage Server 2008 R2, unidades de disco de red y estándares, a grandes rasgos este es el índice de este artículo:
- Introducción a Windows Storage Server 2008 R2 (WSS2008R2)
- Instalación de Windows Storage Server 2008 R2
- Creación de reglas de entrada /Salida en el Firewall
- Configuración de conectividad entre Servers
- Creación de unidad de disco de red
- Creación de unidad de disco de red accesible por varios servidores
Introducción a Windows Storage Server 2008 R2 y otros conceptos fundamentales
Windows Storage Server 2008 (WSS2008) y Windows Storage Server 2008 R2 (WSS2008R2), están construidos sobre el sistema operativo Windows Server 2008 R2. Encima del sistema operativo se instala el paquete adicional de software Windows Storage Server 2008 R2, este paquete está compuesto por (ISCSI target 3.3 y varios parches y ejecutables).
Para obtener más detalles sobre el contenido del paquete, de cómo obtenerlo y su instalación recomiendo este blog de Jose Barreto.
Esta modificación del sistema operativo nos permite construir un servidor capaz de crear y exponer en red unidades de disco (NAS) usando el estándar (ISCSI), este estándar define como se proporcionan unidades de disco en redes TCP/IP.
La diferencia fundamental entre las unidades de disco NAS y las tradicionales (DAS) es que las primeras se pueden acceder mediante una interfaz de red y que pueden residir en un equipo remoto, mientras que las segundas (DAS) están físicamente ligadas a un equipo y gestionadas mediante un interfaz de acceso directo como SCSI, IDE, SATA o ESATA y siempre manejadas directamente por el sistema operativo.
Algunas de las ventajas ofrece una solución de este tipo son:
- Primero, personalmente me permite la instalación de laboratorios de alta disponibilidad en mi entorno virtual (Hyper-V) sin disponer de una costosa cabina de discos.
- El almacenamiento de tipo DAS permite muy poca longitud entre el equipo y el dispositivo, mientras que NAS permite acceso a datos remotos sin importar la distancia. Depende del ancho de banda del canal.
- Los dispositivos SATA, IDE son muy limitado en el número de unidades que soportan por bus, incluso los dispositivos SCSI que soportan hasta 16 dispositivos resultan insuficientes a veces, esta restricción tampoco afecta directamente a las unidades NAS, que podrían requerir más tarjetas de red para optimizar acceso.
Su desventaja principal es que inicialmente iscsi Target 3.3 se ha definido como una solución de bajo coste, adecuada para usarse en entornos de desarrollo, pruebas o departamentales de medio y pequeño tamaño.
Instalación de Windows Storage Server 2008 R2
En primer lugar debemos obtener el paquete para lo que deberemos acudir al blog de Barreto recomendado anteriormente para ver qué alternativas tenemos para obtenerlo, en segundo lugar descomprimimos el ejecutable que nos va a generar 2 imágenes iso separadas.
Sobre el servidor base con Windows Server 2008 R2 instalamos Microsoft Iscsi Target software, la instalación en si no tiene ninguna dificultad si hemos elegido bien la plataforma adecuada (x86 o x64), aceptación de términos de uso de licencia, ruta de instalación, confirmación de instalación y fin(algunos pasos se han omitido deliberadamente en las capturas).
..……
El siguiente paso consiste en instalar los parches y utilidades adicionales contenidos en la segunda ISO:
- Single Instance Storage (SIS) component. Utilidad que permite reducir el espacio usado por los datos en una unidad.
- Web-based management (WebRDP) component. Componentes de gestión remota por Web
- Out-Of-the-Box-Experience (OOBE) for Storage Server. Paquete OOBE para Windows Storage Server 2008 R2
- Branding for the Enterprise Edition of Storage Server
Una vez instalado los paquetes y los parches hay que reiniciar el servidor, en el siguiente arranque el sistema ya se inicia como Windows Storage Server 2008 R2, los detalles del orden de instalación y la estructura de archivos que contiene la imagen están en el documento Windows_Storage_Server_2008R2_OEM_Guide.doc bajo la carpeta Documentation en el raíz de la imagen ISO y en el blog de Jose Barreto mencionado anteriormente.
Una vez iniciado el sistema podemos ir a verificar si disponemos de la herramienta Microsoft Iscsi Software target que nos permite crear unidades de disco de red y Targets(equipos a los que vamos a presentar los discos).
En el snap-in del server manager, bajo Storage podemos encontrar un nuevo nodo de nombre Microsoft iscsi Software Target, bajo el que podemos localizar iscsi Targets y Devices, Devices nos va permitir definir las unidades de disco de red. Iscsi Target nos permite definir los equipos que van a poder acceder a los discos.
Creación de reglas de entrada /Salida en el Firewall
Antes de seguir con creación de unidades y configuración del iniciador iscsi para poder acceder a los discos es necesario realizar un par de modificaciones en la configuración por defecto del Firewall, esto se puede realizar de varias formas, yo para este caso particular he creado una regla que permite el tráfico de entrada para el puerto 3260 que es el que se usa por defecto y otra regla que permite el tráfico de salida para el mismo puerto.
Estas reglas las creo tanto en el servidor de almacenamiento como en los servidores a los que quiero presentar las unidades de disco.
Creación de unidad de disco de red
Esta parte es casi las más sencilla, solo tenemos que lanzar el server manager y bajo Storage en el nodo Devices ejecutar un clic con el botón derecho del ratón la herramienta descrita y elegir Create Virtual Disk en el menú emergente.
A continuación podemos especificar un nombre e incluso podemos configurar que Target tendrán acceso a nuestro disco. Debido al orden que estamos siguiendo no podemos especificar un target haciendo uso del botón browse, pero esto es algo que podremos hacer más tarde en el apartado de configuración de conectividad.
Mi disco de pruebas tiene un tamaño máximo de 2Gb y se almacenara en una carpeta que he creado con el nombre de iscsiLuns.
Configuración de conectividad entre Servers
Esta parte consiste en levantar el servicio iniciador iscsi de Windows en el servidor donde se van a presentar las unidades de disco y crear una entrada para ese servidor como Target en el Servidor de almacenamiento Windows Storage Server 2008 R2.
Para configurar el iniciador iscsi en el servidor al que le vamos a presentar las unidades de disco vamos al grupo de programas herramientas administrativas y arrancamos iscsi initiator, la primera vez nos aparecerá una advertencia indicándonos que se va a configurar en modo automático y a arrancar el servicio, para que confirme el cambio de configuración debemos hacer clic en Yes.
Una vez terminada la configuración revisamos la última pestaña de la propiedades del iniciador iscsi (configuración) y nos fijamos en el nombre de nuestro iniciador. Este estará formado por el prefijo iqn. y la cadena la cierra el nombre de la máquina, lo de revisarlo es simplemente para identificarlo más tarde al navegar los IQNs al crear el target.
A continuación nos conectamos al servidor de almacenamiento y desde el server manager hacemos clic derecho sobre crear nuevo target, si no hemos fallado al seguir los pasos, y si nuestros Firewalls tienen las reglas que permiten el tráfico por el puerto 3260 ya deberíamos poder iniciar la búsqueda del iqn del servidor en el que hemos configurado en iniciador en el paso anterior, por supuesto que para que esto ocurra ambos equipos deben estar comunicados en la misma Vlan, en mi caso suelo configurar adaptadores de red dedicados.
Una vez configurado el Target, le asignamos permisos ver la unidad creada en el apartado anterior, esto lo realizamos desde el mismo target, en la pestaña Virtual Disks, mediante el botón Add.
Ya estamos casi terminando 🙂 , ahora volvemos a servidor donde queremos presentar el disco y al iniciador iscsi y en la primera pestaña introducimos la ip del adaptador de red dedicado a NAS de nuestro servidor de almacenamiento Windows Storage Server 2008 R2 y escribimos en Target la dirección ip y pulsamos sobre el botón Quick connect. Si todo se ha configurado correctamente veréis en la ventana que se abre a continuación que hemos conectado de forma exitosa.
Si queremos ver si tenemos acceso a las unidades de disco expuestas nos tendremos que situar en la pestaña de Volumes and Devices y veremos un dispositivo con nombre en forma de cadena.
A partir de este momento si revisamos las unidades de disco disponibles en el gestor de discos nos encontraremos con la nueva unidad lista para inicializar, formatear y usar.
Estas unidades una vez presentadas se ven como unidades de disco scsi para el sistema operativo tal como se puede apreciar revisando las propiedades de la unidad una vez formateada.
Creación de unidad de disco de red accesible por varios servidores
Esta opción tambíen resulta bastante sencilla de configurar, de hecho es idéntica a la creación de una unidad no compartida, salvo que después de haber permitido el acceso al primer target deberemos añadir tantos targets como nodos del cluster queramos configurar. Al configurar las unidades de este modo se nos advertirá que si no usamos un servicio de cluster para controlar el acceso las unidades de disco podrían sufrir corrupción de datos por acceso concurrente.
Conclusión
Storage Server 2008 R2 nos permite configurar unidades de disco en red de forma individual o compartidas con vistas a implementar soluciones de alta disponibilidad, otros posibles usos pasan por presentar unidades de disco a sistemas tipo terminal tonta sin disco físico que proporcionan un conjunto de software mínimo y que se suelen emplear para despliegues de call centers por ejemplo. Para la configuración tenemos que realizar bastantes pasos, pero son sencillos y una vez configurado el entorno comenzar a crear las unidades y los targets es muy fácil, hasta hace un año y medio he estado usando un software de terceros para crear discos y exponerlos, pero ahora todo mi entorno virtual de alta disponibilidad está basado en Windows Storage Server 2008 R2.
Podéis encontrar muchos más detalles sobre como operar y configurar en el enlace a msdn para Windows Storage Server 2008 R2
Espero que lo encontréis de utilidad, ¡hasta pronto!.