Compartir a través de


Amazon EC2: imágenes de la Plataforma web de Microsoft - Pila completa de desarrollo de servidores web

por Thomas Deml

Introducción

Visual Studio 2010 permite a los desarrolladores web usar su conjunto de aptitudes existente para escribir aplicaciones excelentes para la Plataforma web de Microsoft. Pero una cosa que oímos a menudo por parte de los desarrolladores y administradores de sitios web, especialmente de los que ofrecen servicios de diseño y consultoría de sitios web, es la necesidad de conseguir un sitio web activo rápidamente, que funcione rápido y que les dé un control total del servidor para obtener la máxima flexibilidad y escalabilidad. La publicación de hoy ofrece un tutorial rápido sobre cómo ejecutar la pila de desarrollo más reciente de Microsoft Web Server en Amazon EC2. La imagen de Pila completa de desarrollo de servidores web es un servidor web IIS 7.0 o de una versión superior totalmente configurado que permite implementar la aplicación web directamente desde Visual Studio 2010 a esta instancia de EC2.

Este es un resumen rápido de los pasos que debe seguir:

  1. Regístrese en Amazon EC2
  2. Inicie una instancia de "Plataforma web de Microsoft - Pila completa de desarrollo de servidores web" a través de la Consola de administración de Amazon Web Services.
  3. Recuperación de la contraseña del administrador
  4. Cree e implemente una aplicación de ASP.NET 4.0 desde Visual Studio 2010 a la instancia de EC2.
  5. Ir a la aplicación web activa

1. Registro de Amazon EC2

El registro en Amazon EC2 es un proceso sencillo. Todo lo que necesita es

  • una dirección de correo electrónico válida,
  • un número de teléfono válido en el que se le pueda localizar (asegúrese de que el teléfono esté cerca, le llamarán durante el registro)
  • y un número de tarjeta de crédito válido

La dirección URL de registro es http://aws.amazon.com/ec2. Es aún más fácil si ya es cliente de Amazon porque puede usar los datos de su tarjeta de crédito y su dirección de correo existentes.

Nota: La comprobación de datos de facturación suele producirse en cuestión de minutos. Sin embargo, puede tardar un par de horas. Actualmente (abril de 2010) el mensaje de error que recibe no es muy significativo:
"Parece que no tiene una cuenta de EC2*. Para usar la Consola de Amazon EC2 primero debe registrarse en Amazon EC2. El registro es rápido y gratuito".
Tenga paciencia y espere un poco más.

2. Inicio de una instancia de la "Plataforma web de Microsoft - Pila completa de desarrollo de servidores web"

Una vez que se haya registrado correctamente, tendrá acceso a la Consola de administración de Amazon EC2. La dirección URL es https://console.aws.amazon.com/ec2/home.

Screenshot that shows the Amazon E C 2 Management Console. US West is highlighted in the Region field.

Una vez que haya iniciado sesión, asegúrese de cambiar su región a "Oeste de EE. UU.". Actualmente, las imágenes de la Plataforma Web de Microsoft solo están disponibles en la región Oeste de EE. UU. Antes de nada, vamos a establecer las reglas de firewall (denominadas Grupos de seguridad en la jerga de Amazon) para su instancia de pila de desarrollo web.

Reglas de firewall

Seleccione el elemento "Grupos de seguridad" en la parte izquierda. Sus Grupos de seguridad existentes se mostrarán en el panel central. Haga clic en el botón "Crear grupo de seguridad" en la parte superior.

Screenshot that shows the Create Security Group button.

Asigne un nombre al nuevo grupo que va a crear, por ejemplo "Reglas de firewall de la Plataforma web de Microsoft".

Screenshot that shows the Create Security Group dialog box.

Quiere configurar las reglas siguientes:

Screenshot that shows a list of Allowed Connections under the Security Group selected.

  • RDP es necesario para poder conectarse a través de Escritorio remoto a la instancia de Amazon EC2. La configuración actual de "Origen (IP o grupo)" permite estas conexiones desde cualquier dirección IP. Bloquee esta configuración si tiene requisitos de seguridad más estrictos.
  • HTTP es necesario para que sus clientes puedan conectarse a través de HTTP a su instancia de Amazon EC2.
  • HTTPS es necesario si tiene previsto usar SSL. No necesita esta configuración si no tiene previsto usar SSL.
  • El puerto 8172 se abre para permitir la administración remota de IIS y la publicación de contenidos a través de Visual Studio 2010. Debe abrir este puerto si planea usar la nueva característica Publicación web en Visual Studio 2010.

Ahora estamos listos para iniciar una instancia de Pila de desarrollo de servidores web de EC2.

Inicio de la imagen de Pila de desarrollo de servidores web

Haga clic en el elemento de menú "Instancias" de la parte izquierda y pulse el botón "Iniciar instancia".
Screenshot that shows the Launch Instance button.

Ahora seleccione "Imágenes de la comunidad" en el cuadro de diálogo resultante.

Screenshot that shows the tabs for Quick Start, My A M I, and Community A M I.

Si escribe "microsoft/" en el cuadro de diálogo "AMI de la comunidad", reducirá la selección a las cuatro imágenes de Microsoft:
Screenshot that shows 4 images under the Community A M I tab.

Haga clic en "Seleccionar" en la fila "Plataforma web de Microsoft - Pila completa de desarrollo de servidores web".

En la siguiente página de diálogo (Detalles de la instancia) puede seleccionar cuánta potencia de proceso quiere para su instancia de pila de desarrollo de servidor web. Probablemente sea prudente empezar por la opción preseleccionada, que es la más pequeña. Haga clic en el botón "Continuar". Tampoco hay de qué preocuparse en la página siguiente. Solo tiene que hacer clic en "Continuar" en la parte inferior del cuadro de diálogo "Opciones avanzadas de instancia". Ahora vamos a ir al cuadro de diálogo "Crear par de claves".
Screenshot that shows a selected radio button for Create a new Key Pair. In the Enter a name for your key pair field, my E C 2 Keys is entered.

Si ya tiene una clave, simplemente úsela. Si no es así, tendrá que crear una, escribiendo un nombre para su par de claves y haciendo clic en el botón "Crear y descargar par de claves". En cuanto pulse el botón, Amazon creará un par de claves y su navegador le pedirá que las descargue. Guarde el archivo en una ubicación donde pueda encontrarlo más tarde. El par de claves que ha creado le permitirá descifrar la contraseña de administrador que Amazon crea para su instancia de Servidor multimedia. Haga clic en el botón "Continuar".

Nota: Es posible que Internet Explorer no muestre el cuadro de diálogo de descarga que le pregunta dónde guardar el archivo del par de claves. Si le ocurre eso, busque el archivo (<nombre del par de claves>.pem) en la carpeta Archivos temporales de Internet Explorer. En Windows 7, busque *.pem en %userprofile%\ AppData\Local\Microsoft\Windows\Temporary Internet Files. Asegúrese de copiar el archivo .pem en un directorio más permanente.

Una vez creado el par de claves, puede configurar reglas de firewall. Podría, por ejemplo, solo permitir solicitudes HTTP a la máquina. Amazon llama a las reglas de firewall "Grupos de seguridad", lo que resulta un poco confuso en mi opinión. Para esta demostración estamos eligiendo el Grupo de seguridad "predeterminado", que no pone ninguna restricción de firewall en la instancia. Es posible que más adelante quiera establecer una configuración un poco más restrictiva.
Haga clic en "Continuar" para pasar a la página "Iniciar". Solo queda pulsar el gran botón "Iniciar" en la página de resumen. Una vez hecho esto, Amazon EC2 pondrá en marcha su instancia virtual personal de nuestra imagen de Pila completa de desarrollo de servidores web. Así es. Es hora de ir a por café. La puesta en marcha de la instancia tardará algún tiempo, normalmente entre 3 y 5 minutos.

3. Recuperación de la contraseña de administrador

Tras finalizar el asistente para "Iniciar instancia", debería estar de vuelta en la página principal de la Consola de administración de AWS. Haga clic en el vínculo "Instancias" para saber cómo va su instancia del Servidor multimedia.

Screenshot that shows the A W S Management Console. Instances is highlighted in the Navigation pane.

Deberíamos ver algo parecido a lo siguiente:

Screenshot that shows My Instances pane.

Haga clic con el botón derecho en la fila y seleccione el elemento de menú "Obtener contraseña de Windows".

Screenshot that shows the context menu for the first row.

Ahora es el momento de usar el archivo de par de claves (<nombre de su par de claves>.PEM) que creó antes. Si la contraseña ya está disponible (puede que tenga que esperar un par de minutos como se ha dicho antes), verá el siguiente cuadro de diálogo:

Screenshot that shows the Retrieve Default Windows Administrator Password window.

Abra el archivo .PEM en el bloc de notas y cópielo en el portapapeles (Ctrl+A selecciona todo, Ctrl+C lo copia en el portapapeles). Ahora pegue el contenido en el cuadro de texto del diálogo (Ctrl+V). Haga clic en el botón "Descifrar".

Nota: Dado que el descifrado es una operación que consume mucha CPU, es posible que se encuentre con el siguiente cuadro de diálogo de seguridad si usa Internet Explorer: Screenshot that shows a security dialog box, asking Stop running this script. Al contrario de lo que podría intuirse, deberá pulsar "No" para continuar. Probablemente tenga que pulsar "No" un par de veces para conseguir descifrar su contraseña. Encontrará más detalles sobre esta característica de seguridad aquí: https://support.microsoft.com/kb/175500
Si está interesado en una solución más permanente puede ejecutar el siguiente comando en la línea de comandos:

reg add "HKCU\Software\Microsoft\Internet Explorer\Styles" /v MaxScriptStatements /t REG_DWORD /d 0x5F5E100

Al establecer el valor de MaxScriptStatements en 100 000 000 (0x5F5E100) ya no veo ninguna ventana emergente de seguridad.

Una vez descifrada la contraseña, escríbala o cópiela en el portapapeles y cierre el diálogo. Finalmente, nuestra instancia de Pila de desarrollo de servidores web está lista para su uso.

4. Creación e implementación de una aplicación de ASP.NET 4.0

Ahora vamos a cambiar a Visual Studio 2010. Si aún no tiene la copia, puede descargar Express Edition desde https://www.microsoft.com/visualstudio.

Visual Studio 2010 ofrece un modelo de implementación completamente nuevo con un solo clic para aplicaciones web basadas en la Herramienta de implementación web de Microsoft. Aprovecharemos la Herramienta de implementación web para implementar la aplicación web que estamos a punto de crear en nuestro servidor EC2 activo. ¡Adelante!

Creación de un proyecto de aplicación web en Visual Studio 2010

Una vez que haya iniciado Visual Studio 2010, seleccione "Archivo" - "Nuevo" - "Proyecto" y seleccione "Aplicación ASP.NET" (asegúrese de seleccionar la plantilla de proyecto "Web"). Use el nombre de proyecto "HelloEC2".

Screenshot that shows A S P dot NET Web application highlighted in the Templates list. Hello E C 2 is in the Name field.

Abra el archivo site.master una vez que haya creado el proyecto y cambie el texto de la etiqueta <h1> a "My ASP.NET on EC2 Application" (Mi ASP.NET en la aplicación EC2)

Screenshot that shows the code editor, with My A S P dot NET on E C 2 Application highlighted.

Configuración de la publicación

Lo único que debemos hacer es configurar la publicación. Para ello, necesitamos:

  • La contraseña de administrador de la instancia de EC2 que ya hemos recuperado en uno de los pasos anteriores.
  • El nombre DNS o la dirección IP de la instancia de EC2.

Para obtener estos dos datos, debe volver a la consola de administración de AWS. La consola de AWS muestra el nombre DNS público o la dirección IP como una de las propiedades de la instancia. Puede copiar la dirección en el Portapapeles o escribirla. Si necesita una dirección DNS más permanente, tiene que registrar un nombre DNS y obtener también una dirección IP elástica de Amazon. Pero esta es una historia para otro día.

Screenshot that shows the A W S Management Console. Publish D N S and its address is highlighted.

Con estos dos fragmentos de información, ya estamos preparados para publicar el proyecto de aplicación web ASP.NET que acabamos de crear. Para publicar, tiene que volver a Visual Studio, hacer clic con el botón derecho en el proyecto y seleccionar el elemento de menú "Publicar".

Screenshot that shows the context menu for the project. The list shows Publish and it is highlighted.

En el cuadro de diálogo siguiente, tiene que escribir varios fragmentos de los datos. Vamos a hacerlo paso a paso:

  1. Haga clic en el botón "Cambiar nombre" y cambie el nombre de "Profile1" a "My EC2 Publishing Profile" (Mi perfil de publicación de EC2)
  2. Copie el nombre DNS de la instancia de EC2 en el cuadro de texto "Dirección URL del servicio:". Funciona sin especificar explícitamente "https://", como se muestra a continuación.
  3. Especifique "Sitio web predeterminado" (sin comillas) en el cuadro de texto "Sitio/aplicación". Si quiere publicar la aplicación web "Hello EC2" fuera de la raíz del "Sitio web predeterminado", puede especificar un nombre de aplicación adicional, por ejemplo "Sitio web predeterminado/helloEC2".
  4. La instancia de EC2 funciona con un certificado SSL autofirmado para garantizar que el tráfico entre el cliente y la instancia de EC2 está cifrado. El certificado autofirmado aún no es de confianza y tiene que activar la casilla "Permitir certificado que no es de confianza".
  5. Especifique las credenciales administrativas para la instancia de EC2. El nombre de usuario es "Administrador" y recuperó la contraseña de la instancia de EC2 en un paso anterior.

Screenshot that shows the Publish Web dialog box with multiple fields highlighted.

Solo falta presionar el botón "Publicar" y la barra de estado indicará que el proceso de publicación se realizó correctamente. La aplicación se publicó correctamente en la instancia de EC2.
Screenshot of the Status bar saying Publish succeeded.

Exploración de la aplicación web

¡Vamos a echarle un vistazo! Si todavía tiene el nombre DNS en el Portapapeles, basta con pegarlo en la barra de direcciones de Internet Explorer.
¡Voila!

Screenshot of your web application on Internet Explorer.

Conexión a la instancia de EC2 a través de Escritorio remoto

En caso de que necesite configurar algo en el propio servidor, puede usar fácilmente el Escritorio remoto para conectarse a él. Incluso Visual Web Developer 2010 está instalado para que pueda depurar en la máquina remota si tiene problemas que no se pueden reproducir localmente.

Aquí se muestra cómo se conecta a través de RDP a la instancia de EC2:
Haga clic con el botón derecho en la instancia y seleccione "Conectar".

Screenshot of the context menu of your E C 2 instance.

Haga clic en "Descargar archivo de acceso directo" en el cuadro de diálogo que aparece a continuación:

Screenshot that shows the Console Connect Remote Desktop Connection window. Download shortcut file is listed under Option 1.

El archivo a descargar es un archivo .RDP que tiene toda la configuración adecuada para conectarle a la instancia de EC2 en la nube. Haga clic en "Abrir" si utiliza IE o haga doble clic en el archivo en la ventana de descargas de Firefox y se establecerá una sesión de Escritorio remoto. Cuando Escritorio remoto le pida sus credenciales, basta con que escriba el nombre de usuario "Administrador" y la contraseña que recuperamos anteriormente.
Una vez conectado, iniciará sesión en la máquina remota.

Resumen

Es asombroso lo fácil que resulta ahora conseguir un servidor web dedicado en Internet y ponerse manos a la obra. Acabamos de implementar una aplicación de ASP.Net 4.0 en funcionamiento y totalmente configurada en la nube. Increíble, ¿verdad?

Díganos lo que piensa al respecto: ¿Tiene alguna pregunta o comentario? Envíelo a ec2@microsoft.com.