Artículo original publicado el lunes 18 de junio de 2012

El primer paso para crear una máquina virtual persistente en Azure es actualizar la cuenta para poder aprovechar esas características, todas ellas en vista previa.  Una vez que estén disponibles esas características, puede seguir este proceso para obtener los distintos componentes configurados para admitir la ejecución de una granja de SharePoint aislada. 

En este caso, por “granja aislada" me refiero a una granja donde hay dos imágenes virtuales.  En este escenario, una imagen ejecuta Active Directory, DNS y ADFS;  mientras que la otra ejecuta SharePoint 2010 y SQL 2012.  La segunda imagen se une al bosque ejecutándose desde la primera imagen.  La dirección IP usada por el controlador del dominio (SRDC) es 192.168.30.100; y la dirección para el servidor de SharePoint (SRSP) es 192.168.30.150 y 192.168.30.151.

IMPORTANTE:  Asegúrese de activar el Escritorio remoto en las imágenes antes de cargarlas a Azure (desactivado de forma predeterminada).  Si está desactivado, le será muy difícil administrar la granja, sobretodo elementos como Active Directory o ADFS.

  1. Creación de una red virtual.  Como se trata de una granja aislada, no queremos conectar ni integrarla a la identidad corporativa ni a los servicios de nombres (como AD y DNS);  sino que configuraremos una nueva red virtual para la granja pequeña.  Aquí tiene los pasos secundarios para crear una red virtual en este escenario:
    1. Haga clic en Nuevo…Red…Creación personalizada.
    2. Escriba un nombre para la red y, en la lista desplegable Grupo de afinidad, seleccione Crear un grupo de afinidad.  Elija EUA-oeste o EUA-este como región y escriba un nombre para el grupo de afinidad.  En este ejemplo se usa el nombre SamlAffinity para el grupo de afinidad y SamlNetwork para el nombre de la red.  Haga clic en el botón Siguiente.
    3. Escriba el espacio de direcciones en formato CIDR para la dirección IP que desee usar y luego haga clic en el botón Siguiente.  Quizá se pregunte qué es el formato CIDR.  Pues aunque esta cuestión se escapa del ámbito de este documento, basta con decir que puede hacerse una idea yendo a un sitio web que se lo calculará, como http://ip2cidr.com/.  En este caso, quise usar la subred completa 192.168.30.0, así que escribí 192.168.30.0/24.  Fíjese en que también puede crear distintas subredes de uso dentro de la red virtual, pero como no es necesario para este escenario, yo no lo hice.  Haga clic en el botón Siguiente.
    4. Para este escenario en particular, puede seguir seleccionando un servidor DNS porque lo configuraremos en los servidores mismos cuando ya estén en marcha.  Haga clic en el botón Finalizar para completar la tarea y crear así una red virtual.
  2. Cree una cuenta de almacenamiento para almacenar las máquinas virtuales.  Este paso es rápido: en el nuevo Portal de administración, haga clic en Nuevo... Almacenamiento... Creación rápida.  Póngale un nombre exclusivo y haga clic en la lista desplegable Grupo de Afinidad/Región.  Seleccione el grupo de afinidad que creó en el paso anterior y haga clic en el botón Crear cuenta de almacenamiento.  En este ejemplo, el nombre de la cuenta de almacenaje es samlvms.
  3. Cargue las imágenes que va a usar.  En este caso, hay dos imágenes (SRDC y SRSP) que hay que subir a la cuenta de almacenamiento que creé anteriormente (samlvms).   Puede cargar la imagen con la herramienta csupload, que forma parte de SDK 1.7 de Windows Azure y que puede descargarse en https://www.windowsazure.com/en-us/develop/other/.  La documentación para usar csupload puede encontrarla en http://msdn.microsoft.com/en-us/library/windowsazure/gg466228.aspx.  Para instrucciones detalladas sobre la creación y la actualización de imágenes VHD con este nuevo comando, también puede encontrarlas en http://www.windowsazure.com/en-us/manage/windows/common-tasks/upload-a-vhd/.  Estas son unas cuantas notas secundarias:
    1. En este caso yo uso imágenes que ya están listas; no se prepararon con Sysprep, sino que tienen un controlador de dominios o SharePoint y SQL instalados, y solo hace falta iniciarlas.  Puede usar esto como base de la nueva máquina virtual, pero es necesario usar el comando Add-Disk en lugar del comando Add-PersistedVMImage.  Use este último si dispone de una imagen preparada con Sysprep sobre la que quiera establecer la base de nuevas imágenes.
    2. Averiguar la huella digital del certificado de administración al crear la conexión puede resultar algo complicado.  Las instrucciones detalladas de más arriba le explican cómo conseguirla.  Además, si ya publicó aplicaciones con Visual Studio, puede usar su mismo certificado.  Inicie Visual Studio, seleccione Publicar y, en la lista desplegable Cuenta, haga clic en Administrar... Vínculo.  Desde aquí puede obtener el certificado usado.  Si trata de usar csupload en una máquina distinta, también necesitará copiarla (junto con la clave privada) y moverla a donde está usando csupload.  Cuando la haya copiado, agréguela al almacén de certificados personal. Si no, csupload dirá que no puede encontrar ningún certificado o huella digital coincidente.
    3. Aquí tiene un ejemplo de los comandos que usé:
      1. csupload Set-Connection "SubscriptionID=mySubscriptionID;CertificateThumbprint=myThumbprintDetails;ServiceManagementEndpoint=https://management.core.windows.net"
      2. csupload Add-Disk -Destination "http://samlvms.blob.core.windows.net/srsp.vhd" -Label "SAML SharePoint" -LiteralPath "C:\srsp.vhd" -OS Windows -Overwrite
      3. csupload Add-Disk -Destination "http://samlvms.blob.core.windows.net /srdc.vhd" -Label "SAML DC" -LiteralPath "C:\ srdc.vhd" -OS Windows -Overwrite
  4. Cuando haya cargado las imágenes, podrá usarlas como bases sobre las que crear máquinas virtuales.
  5. Haga clic en Nuevo... Máquina virtual... Desde galería.
  6. Haga clic en Mis discos en la parte derecha y, en la biblioteca de imágenes de la derecha, seleccione la imagen que desea crear; seguidamente, haga clic en el botón Siguiente.
  7. Escriba un nombre para la máquina, seleccione su tamaño y haga clic en botón Siguiente.
    1. Elija máquina virtual independiente (a menos que se vaya a conectar a una que ya exista) o escriba un nombre DNS disponible. A continuación, seleccione la región y la suscripción y haga clic en el botón Siguiente.
    2. Puede elegir un conjunto de disponibilidades existente, crear uno nuevo o decidir que no va a usar ninguno. Cuando haya acabado, haga clic en el botón Finalizar para completar el asistente.

Puede que las imágenes pasen por varios estados; desde "Parada" hasta el paso final de "Ejecutándose".  Una vez empiece a ejecutarse, dele un par de minutos para que arranque. Luego, selecciónela en el portal de Azure y haga clic en el botón Conectar en la parte inferior de la página.  Así se creará y descargará la conexión RDP que podrá usar para conectarse a la imagen y trabajar con ella.

Fíjese también en que no se mantuvo la configuración de red.  Es decir, que las imágenes usaban direcciones IP estáticas, pero después de reiniciarlas en Azure usan DHCP y obtienen direcciones locales, así que es necesario reconfigurarlas para que puedan funcionar.

Cambios en la red

La configuración de la red cambió por lo que respecta a las imágenes cuando estas se iniciaron en Azure.  Las máquinas virtuales persistentes de Azure usan DHCP, pero como las concesiones no caducan nunca, este actúa de manera muy parecida a las direcciones IP fijas.  Sin embargo, una de las principales limitaciones es que solo puede tener una dirección IP por máquina, por lo que no es factible un segundo laboratorio para SAML Ramp.

Para empezar, corrija el DNS y el controlador de dominio; conéctese con el RDP al controlador de dominio (SRDC en mi escenario).  Reinicie el servicio de Net Logon, o con un applet de los servicios o en una ventana del símbolo del sistema escribiendo "net stop netlogon" seguido de "net start netlogon".   Estos comandos reiniciarán la nueva dirección DHCP como una de las direcciones de host del dominio.  Seguidamente, elimine la dirección de host antigua del dominio, que, en mi caso, era 192.168.30.100.  Inicie el Administrador de DNS y haga doble clic en la zona de búsqueda directa del dominio.  Busque el registro (A) del host con la dirección antigua (192.168.30.100 en mi caso)  –verá que también dice “(la misma que la carpeta contenedora)”– en la columna Nombre y elimínelo. 

En primer lugar, cambie el servidor DNS del adaptador de red para que apunte a la dirección DHCP que asignó a la imagen.  Abra una ventana del símbolo del sistema, escriba "ipconfig" y presione ENTRAR.  La dirección IPv4 que aparece es lo que necesita usar como dirección del servidor DNS.  Para cambiarla, haga clic con el botón secundario en el icono de red de la barra de tareas y seleccione Inicio del Centro de redes y recursos compartidos.  Haga clic en el vínculo de la configuración del adaptador de cambios.  Haga clic con el botón secundario en el adaptador y luego en Propiedades.

Cuando se abra el diálogo Propiedades, desactive la casilla que está junto a Protocolo de Internet versión 6.  Haga clic en el Protocolo de Internet versión 4 pero NO desactive la casilla. A continuación, haga clic en el botón Propiedades.  En la sección DNS, haga clic en el botón de radio que dice "Usar las direcciones del servidor DNS siguientes" y, cuanto al Servidor DNS favorito, escriba la dirección DHCP del servidor SRDC que recuperó con "ipconfig".  Haga clic en el botón Aceptar para cerrar el diálogo Propiedades del Protocolo de Internet versión 4, luego vuelva a hacer clic en el botón Aceptar para cerrar el diálogo Propiedades del adaptador de red.  Ya puede cerrar la ventana Conexiones de red.

Ahora, si abre una ventana del símbolo del sistema y escribe "ping" seguido del nombre del bosque de Active Directory, debería devolverle el nombre y un ping. En mi imagen me devolvió la dirección 192.168.30.4.

En el servidor de SharePoint solo hay que cambiar la dirección IP del servidor DNS principal por la dirección IP del controlador de dominio, que en este ejemplo era 192.168.30.4.  Cuando la haya cambiado, compruebe con el ping el nombre del controlador de dominio y el nombre de bosque de Active Directory.  Una vez que esto funcione, hace falta obtener la nueva dirección IP que asignó al servidor SharePoint y actualizar el DNS en el controlador de dominio si usó algún nombre de host estático en sus sitios de SharePoint.  Un inconveniente que NO puede resolverse en este escenario es que mi servidor de SharePoint usaba múltiples direcciones IP, cuando actualmente las imágenes persistentes en Azure solo admiten una sola dirección IP.

Esta entrada de blog es una traducción. Puede consultar el artículo original en Creating an Azure Persistent VM for an Isolated SharePoint Farm