Partimos de un entorno formado por dos máquinas Windows Server 2008 R2 Datacenter (VSQL11 y VSQL12), miembros del mismo Dominio de Directorio Activo (guillesql.local). Sobre estas máquinas ya se ha configurado el Failover Cluster de Windows Server 2008 R2 utilizando un disco de Quorum para formar mayoría. También se ha configurado MSDTC como una Aplicación del Failover Cluster, una tarea opcional previa a la instalación de SQL Server en Cluster. Adicionalmente, se han añadido varios discos al Cluster, para de este modo poder montar varias instancias de SQL Server. Todos los discos compartidos de este Cluster se han creado utilizando Microsoft iSCSI Software Target 3.3 corriendo sobre Windows Server 2008 R2.
Para ejecutar los diferentes servicios de Windows (SQL Server, SQL Server Agent, y Analysis Services) vamos a utilizar la misma cuenta de dominio (GUILLESQL\SERVICE_SQL). Esto no es una buena práctica, ya que lo recomendable sería utilizar una cuenta dedicada para cada servicio, sin embargo para el entorno de prueba que estamos montando es más que suficiente.
La cuenta de servicio que vamos a utilizar (GUILLESQL\SERVICE_SQL) es una simple cuenta de dominio, es decir, sin privilegios especiales ni permisos elevados.
En lo relacionado con Reporting Services, la idea es instalar Reporting Services 2008 R2 en NLB, utilizando para ello el Network Load Balancing (NLB) de Windows Server 2008 R2. Lo habitual, es montar Reporting Services en una Granja Web independiente del Cluster de SQL Server, o en su defecto, en una instalación de MOSS 2010 o de MOSS 2007, si lo que deseamos es tener Reporting Services integrado en SharePoint (MOSS).
Instalar SQL Server 2008 R2 en el primer Nodo del Cluster
En un Nodo (al que nos conectamos por RDP), por ejemplo en nuestro caso en el VSQL11, realizamos la instalación de SQL Server 2008 R2 y Analysis Services en Cluster, como se muestra a continuación. La realización de estos pasos, creará un Cluster de SQL Server y Analysis Services formado por un único Nodo. Posteriormente, desde el otro Nodo del Cluster, realizaremos otra instalación de SQL Server (como veremos después en detalle) para incluir a dicho Nodo en el Cluster de SQL Server y Analysis Services que estamos montando. Téngase en cuenta que montar un Cluster de un único Nodo es una opción muy interesante para montarse un sencillo entorno de pruebas.
Un detalle interesante, es recordar que en versiones anteriores de SQL Server, al realizar la instalación en Cluster de SQL Server desde un Nodo, el programa de instalación realizaba la instalación en todos los Nodos del Cluster. Este comportamiento se producía al instalar un Cluster de SQL Server 2005 o de SQL Server 2000. Es decir, no era necesario ejecutar la instalación de SQL Server una vez por cada Nodo del Cluster como se hace en las versiones más recientes (SQL Server 2008 y SQL Server 2008 R2).
Llegados a este punto, empezamos.
En la pantalla de Splash de SQL Server, seleccionaremos la página Installation, y después click en New SQL Server failover cluster installation.
En la pantalla Setup Support Rules, click OK para continuar.
En la pantalla Product Key, click Next para continuar.
En la pantalla License Terms, aceptamos los términos de licencia. Click Next para continuar.
En la pantalla Setup Support Files click Install.
En la pantalla Setup Support Rules revisamos los eventos que puedan aparecer y si todo está OK, click Next.
Un evento típico que nos podemos encontrar es el de Microsoft .Net Application Security, que suele ocurrir cuando no tenemos acceso a Internet desde la máquina en la que estamos ejecutando SQL Server.
En la pantalla Feature Selection, especificaremos las características de SQL Server que deseamos instalar. Click Next para continuar.
En la pantalla Instance Configuration seleccionaremos el nombre virtual que deseamos (SQL Server Network Name) sobre el que montaremos SQL Server. También especificaremos si deseamos montar una Instancia por Defecto o una Instancia con Nombre (en este segundo caso, deberemos especificar el nombre deseado para la instancia). Click Next para continuar.
En la pantalla Disk Space Requirements, comprobamos que disponemos de espacio suficiente para instalar SQL Server. Click Next para continuar.
En la pantalla Cluster Resource Group, deberemos especificar sobre qué Grupo de Recursos deseamos realizar nuestra instalación de SQL Server y Analysis Services. Téngase en cuenta, que podemos seleccionar un Grupo de Recursos existente (que no esté siendo utilizado) o bien especificar el nombre de un nuevo Grupo de Recursos que será creado durante la propia instalación. Click Next para continuar.
En la pantalla Cluster Disk Selection seleccionaremos los discos compartidos del Cluster que deseamos incluir en nuestro Grupo de Recursos, para ser utilizados por SQL Server y Analysis Services. Click Next para continuar.
En la pantalla Cluster Network Configuration especificaremos la dirección IP que deseamos utilizar. Click Next para continuar.
En la pantalla Cluster Security Policy seleccionaremos la opción Use service SIDs. Click Next para continuar.
En la pantalla Server Configuration, en la pestaña Service Accounts seleccionaremos las cuentas de servicio que deseamos utilizar para cada uno de los servicios que van a ser instalados.
En la pantalla Server Configuration, en la pestaña Collation podemos especificar la intercalación (collation) que deseamos utilizar para la instalación de SQL Server y de Analysis Services. En el caso de SQL Server, esto establecerá la intercalación de las Bases de Datos del Sistema (master, model, msdb), debiendo tener en cuenta, que si fuese necesario, sería posible Reconstruir las Bases de Datos del Sistema para posteriormente cambiar la intercalación de las misma. Sin embargo, esta operación es algo delicada, por lo que es importante que nos cercioremos ahora y seleccionemos la intercalación deseada. Si lo deseamos, podemos hacer click en el botón Customize para cambiar la configuración de la intercalación (collation).
Como era de esperar, podemos elegir entre intercalación de SQL Server y de Windows.
Continuando con la instalación, en la pantalla Database Engine Configuration, en la pestaña Account Provisioning especificaremos el tipo de Autenticación que deseamos utilizar en nuestra instancia de SQL Server (Windows o Mixta) así como a qué usuarios deseamos conceder privilegios elevados sobre dicha instancia.
En la pantalla Database Engine Configuration, en la pestaña Data Directories podemos especificar las diferentes rutas que deseamos utilizar para nuestra Instancia de SQL Server. Click Next para continuar.
En la pantalla Database Engine Configuration, en la pestaña FILESTREAM podemos habilitar la configuración de FileStream en nuestra instancia de SQL Server, si fuera necesario. Click Next para continuar.
En la pantalla Analysis Services Configuration, en la pestaña Account Provisioning especificaremos a qué usuarios deseamos conceder privilegios elevados sobre dicha instancia.
En la pantalla Analysis Services Configuration, en la pestaña Data Directories podemos especificar las diferentes rutas que deseamos utilizar para nuestra Instancia de Analysis Services. Click Next para continuar.
En la pantalla Error Reporting click Next para continuar.
En la pantalla Cluster Installation Rules revisamos los diferentes mensajes y si está todo OK click Next.
En la pantalla Ready to Install revisamos la información resumida de la instalación que vamos a realizar, y si está todo OK, click Install.
Barrita de progreso. Tardará un rato considerable, tras el cual, la instalación habrá finalizado.
Añadir el segundo Nodo al Cluster de SQL Server 2008 R2
En estos momentos, aunque a nivel de Sistema Operativo tenemos un Cluster formado por dos Nodos, a nivel de SQL Server tenemos un Cluster de un único Nodo. Por ello, a continuación nos tenemos que conectar al segundo Nodo (por ejemplo a través de RDP), y ejecutar de nuevo la instalación de SQL Server en dicho Nodo, de tal modo, que consigamos tener un Cluster de SQL Server formado por dos Nodos (objetivo del presente artículo, aunque podría tratarse de un Cluster de SQL Server formado por muchos más Nodos).
En la pantalla de Splash de SQL Server, seleccionaremos la página Installation, y después click en Add node to a SQL Server failover.
En la pantalla Setup Support Rules revisamos que todo está correcto y click OK.
En la pantalla Product Key, click Next para continuar.
En la pantalla License Terms aceptamos los términos de licencia y click Next.
En la pantalla Setup Support Files click Install.
En la pantalla Setup Support Rules revisamos que no hay ningún error y click Next.
En la pantalla Cluster Node Configuration seleccionaremos la Instancia de SQL Server a la cual queremos agregar el Nodo en el cual estamos haciendo la instalación. Click Next para continuar.
En la pantalla Service Accounts introducimos los datos de las cuentas de usuario que deseamos que inicien los servicios de SQL Server. Click Next para continuar.
En la pantalla Error Reporting click Next para continuar.
En la pantalla Add Node Rules revisamos que está todo OK y click Next para continuar.
En la pantalla Ready to Add Node revisamos que está todo OK y click Install.
Barrita de progreso al canto, y en unos minutos la instalación habrá finalizado.
Llegados a este punto, la instalación de nuestro Cluster de SQL Server 2008 R2 y Analysis Services habrá finalizado. Por lo tanto, a partir de este momento empezaremos a realizar las primeras tareas de configuración de nuestro entorno (ej: creación de usuarios, configuración del Backup, configuración de la monitorización, configurar Database Mail para el envío de correo electrónico desde SQL Server, parametrización de la base de datos MODEL, configuración del Instant Initialization File si fuera necesaria, configuración de un Puerto TCP fijo para la instancia de SQL Server, configurar la Autenticación de Kerberos para SQL Server y Analysis Services, etc.).
Poco más por hoy. Como siempre, confío que la lectura resulte de interés.