Compartir a través de


Publicación de un servicio en la nube mediante Visual Studio

Nota

Este artículo se aplica a Azure Azure Cloud Services (soporte extendido). Cloud Services (clásico) se retira a partir del 31 de agosto de 2024. Para obtener más información, consulte el modelo de implementación de Cloud Services (clásico) se va a retirar el 31 de agosto de 2024. Para el nuevo desarrollo, se recomienda usar un tipo de servicio más reciente diseñado para su propósito específico, como Azure App Service, Azure Functionso Azure Container Apps. Para obtener la lista más reciente de los servicios disponibles, consulte Directorio de productos de Azure.

Visual Studio puede publicar una aplicación directamente en Azure, con compatibilidad con entornos de ensayo y producción de un servicio en la nube. Al publicar, seleccione el entorno de implementación y una cuenta de almacenamiento que se use temporalmente para el paquete de implementación.

Al desarrollar y probar una aplicación de Azure, puede usar Web Deploy para publicar cambios incrementalmente para los roles web. Después de publicar la aplicación en un entorno de implementación, Web Deploy le permite implementar los cambios directamente en la máquina virtual que ejecuta el rol web. No tiene que empaquetar y publicar toda la aplicación de Azure cada vez que quiera actualizar el rol web para probar los cambios. Con este enfoque, puede tener los cambios de rol web disponibles en la nube para realizar pruebas sin esperar a que la aplicación se publique en un entorno de implementación.

Use los procedimientos siguientes para publicar la aplicación de Azure y actualizar un rol web mediante Web Deploy:

  • Publicación o empaquetado de una aplicación de Azure desde Visual Studio
  • Actualización de un rol web como parte del ciclo de desarrollo y pruebas

Prerrequisitos

Publicación o empaquetado de una aplicación de Azure desde Visual Studio

Al publicar la aplicación de Azure, puede realizar una de las siguientes tareas:

  • Creación de un paquete de servicio: puede usar este paquete y el archivo de configuración del servicio para publicar la aplicación en un entorno de implementación desde Azure Portal.

  • Publicar el proyecto de Azure desde Visual Studio: para publicar la aplicación directamente en Azure, use el Asistente para publicación. Para obtener información, consulte Asistente para publicación de aplicaciones de Azure.

Para crear un paquete de servicio desde Visual Studio

  1. Cuando esté listo para publicar la aplicación, abra el Explorador de soluciones, abra el menú contextual del proyecto de Azure que contiene los roles y elija Publicar.

  2. Para crear un paquete de servicio solo, siga estos pasos:

    1. En el menú contextual del proyecto de Azure, elija Empaquetar.

    2. En el cuadro de diálogo Paquete de aplicaciones de Azure, elija la configuración del servicio para la que desea crear un paquete y, a continuación, elija la configuración de compilación.

    3. (Opcional) Para activar Escritorio remoto para el servicio en la nube después de publicarlo, seleccione Habilitar escritorio remoto para todos los rolesy, a continuación, seleccione Configuración para configurar las credenciales de Escritorio remoto. Para más información, consulte Habilitar la conexión a escritorio remoto para un rol en Azure Cloud Services mediante Visual Studio.

    4. Para crear el paquete, elija el vínculo Paquete.

      El Explorador de archivos muestra la ubicación del archivo del paquete recién creado. Puede copiar esta ubicación para que pueda usarla desde Azure Portal.

    5. Para publicar este paquete en un entorno de implementación, debe usar esta ubicación como ubicación del paquete al crear un servicio en la nube e implementar este paquete en un entorno con Azure Portal.

  3. (Opcional) Para cancelar el proceso de implementación, en el menú contextual del elemento de línea del registro de actividad seleccione Cancelar y quitar. Este comando detiene el proceso de implementación y elimina el entorno de implementación de Azure. Para quitar el entorno después de la implementación, use Azure Portal.

Actualización de un rol web como parte del ciclo de desarrollo y pruebas

Si la infraestructura de back-end de la aplicación es estable, pero los roles web necesitan una actualización más frecuente, puede usar Web Deploy para actualizar solo un rol web en el proyecto. Web Deploy es útil cuando no desea volver a generar y volver a implementar los roles de trabajo back-end, o si tiene varios roles web y desea actualizar solo uno de los roles web.

Requisitos para usar Web Deploy

  • Solo para fines de desarrollo y pruebas: Los cambios se realizan directamente en la máquina virtual donde se ejecuta el rol web. Si esta máquina virtual tiene que reciclarse, los cambios se pierden porque se usa el paquete original que usted publicó para recrear la máquina virtual correspondiente al rol. Vuelva a publicar la aplicación para obtener los últimos cambios del rol web.

  • Solo se pueden actualizar los roles web: los roles de trabajo no se pueden actualizar. Además, no puede actualizar RoleEntryPoint en web role.cs.

  • Solo puede admitir una sola instancia de un rol web: No puede tener varias instancias de ningún rol web en el entorno de implementación. Sin embargo, se admiten varios roles web cada uno con solo una instancia.

  • Habilitar conexiones de Escritorio remoto: Este requisito permite que Web Deploy use el usuario y la contraseña para conectarse a la máquina virtual para implementar los cambios en el servidor que ejecuta Internet Information Services (IIS). Además, es posible que tenga que conectarse a la máquina virtual para agregar un certificado de confianza a IIS en esta máquina virtual. (Este certificado garantiza que la conexión remota para IIS que usa Web Deploy sea segura).

En el siguiente procedimiento se asume que está utilizando el asistente para publicar aplicaciones de Azure .

Habilitación de Web Deploy al publicar la aplicación

Nota

Web Deploy no se admite para Azure Cloud Services (soporte extendido).

  1. Para habilitar la opción Enable Web Deploy para todos los roles web, primero debe configurar conexiones de escritorio remoto. Seleccione Habilitar Escritorio remoto para todos los roles y proporcione las credenciales que se usan para conectarse de forma remota en el cuadro de diálogo Configuración de Escritorio remoto que aparece. Vea Habilitación de la conexión a Escritorio remoto para un rol de Azure Cloud Services (soporte extendido) mediante Visual Studio.

  2. Para habilitar Web Deploy para todos los roles web de la aplicación, seleccione Habilitar web Deploy para todos los roles web.

    Aparece un triángulo de advertencia amarillo. Web Deploy usa un certificado autofirmado que no es de confianza de forma predeterminada, que no se recomienda para cargar datos confidenciales. Si necesita proteger este proceso para datos confidenciales, puede agregar un certificado SSL que se usará para las conexiones de Web Deploy. Este certificado debe ser un certificado de confianza. Para más información, consulte Protección de Web Deploy.

  3. Elija Siguiente para mostrar la pantalla Resumen y, a continuación, elija Publicar para implementar el servicio en la nube.

    El servicio en la nube se publicará. La máquina virtual que se crea tiene conexiones remotas habilitadas para IIS para que Web Deploy se pueda usar para actualizar los roles web sin volver a publicarlos.

    Nota

    Si tiene más de una instancia configurada para un rol web, aparece un mensaje de advertencia que indica que cada rol web está limitado a una sola instancia del paquete que se crea para publicar la aplicación. Seleccione Aceptar para continuar. Como se indica en la sección Requisitos, puede tener más de un rol web, pero solo una instancia de cada rol.

Actualiza tu rol web usando Web Deploy

  1. Para usar Web Deploy, realice cambios de código en el proyecto para cualquiera de los roles web de Visual Studio que quiera publicar y, a continuación, haga clic con el botón derecho en este nodo de proyecto en la solución y apunte a Publicar. Aparece el cuadro de diálogo Publicación web.

  2. (Opcional) Si ha agregado un certificado SSL de confianza que se va a usar para las conexiones remotas para IIS, puede desactivar la casilla Permitir certificados que no son de confianza. Para obtener información sobre cómo agregar un certificado para que Web Deploy sea seguro, consulte la sección Hacer que Web Deploy Secure más adelante en este artículo.

  3. Para usar Web Deploy, el mecanismo de publicación necesita el nombre de usuario y la contraseña que configuró para la conexión a Escritorio remoto cuando publicó el paquete por primera vez.

    1. En nombre de usuario, escriba el nombre de usuario.

    2. En Contraseñaescriba la contraseña.

    3. (Opcional) Si desea guardar esta contraseña en este perfil, elija Guardar contraseña.

  4. Para publicar los cambios de su rol web, elija Publicar.

    La línea de estado muestra Publicación iniciada. Cuando la publicación finaliza, se muestra Publicación correcta . Ahora los cambios se implementaron en el rol web en su máquina virtual. Ahora puede iniciar la aplicación de Azure en el entorno de Azure para probar los cambios.

Hacer que la implementación web sea segura

  1. Web Deploy usa un certificado autofirmado que no es de confianza de forma predeterminada, que no se recomienda para cargar datos confidenciales. Si necesita proteger este proceso para datos confidenciales, puede agregar un certificado SSL que se usará para las conexiones de Web Deploy. Este certificado debe ser un certificado de confianza, que se obtiene de una entidad de certificación (CA).

    Para que Web Deploy sea seguro para cada máquina virtual para cada uno de los roles web, debe cargar el certificado de confianza que desea usar para la implementación web en Azure Portal. Este certificado asegura que el certificado se añada a la máquina virtual que se crea para el rol web cuando publicas tu aplicación.

  2. Para agregar un certificado SSL de confianza a IIS para usarlo para conexiones remotas, siga estos pasos:

    1. Para conectarse a la máquina virtual que ejecuta el rol web, seleccione la instancia del rol web en cloud Explorer o Server Explorery elija el comando Connect using Remote Desktop. Para obtener pasos detallados sobre cómo conectarse a la máquina virtual, consulte Habilitar la conexión a Escritorio remoto para un rol en Azure Cloud Services con soporte extendido mediante Visual Studio. El explorador le pide que descargue un archivo .rdp.

    2. Para agregar un certificado SSL, abra el servicio de administración en el Administrador de IIS. En el Administrador de IIS, habilite SSL abriendo el vínculo Enlaces en el panel Acción. Aparecerá el cuadro de diálogo Agregar enlace de sitio. Elija Agregar y, después, seleccione HTTPS en la lista desplegable Tipo. En la lista de certificados SSL, elija el certificado SSL que obtuvo, firmado por una entidad de certificación y que cargó en Azure Portal. Para obtener más información, consulte Configurar los ajustes de conexión para el Servicio de Administración.

      Nota

      Si agrega un certificado SSL de confianza, el triángulo de advertencia amarillo ya no aparece en el Asistente para publicar.

Incluir archivos en el paquete de servicio

Es posible que tenga que incluir archivos específicos en el paquete de servicio para que estén disponibles en la máquina virtual que se crea para un rol. Por ejemplo, puede que desee agregar un archivo .exe o .msi, que es utilizado por un script de inicio, a su paquete de servicio. O es posible que quiera agregar un ensamblado que requiera un proyecto de rol web o de rol de trabajo. Para incluir archivos, deben agregarse a la solución para la aplicación de Azure.

  1. Para agregar un ensamblado a un paquete de servicio, siga estos pasos:

    1. En el Explorador de soluciones abra el nodo del proyecto al que le falta el ensamblado de referencia.

    2. Para agregar el ensamblado al proyecto, abra el menú contextual de la carpeta Referencias y elija Agregar referencia. Aparece el cuadro de diálogo Agregar referencia.

    3. Elija la referencia que desea agregar y, a continuación, elija Aceptar. La referencia se agrega a la lista en la carpeta Referencias.

    4. Abra el menú contextual del ensamblado que agregó y elija Propiedades. Aparece la ventana de Propiedades .

      Para incluir este ensamblado en el Service Pack en la lista Copia local, seleccione True.

  2. En el Explorador de soluciones abra el nodo del proyecto al que le falta el ensamblado de referencia.

  3. Para agregar el ensamblado al proyecto, abra el menú contextual de la carpeta Referencias y elija Agregar referencia. Aparece el cuadro de diálogo Agregar referencia.

  4. Elija la referencia que desea agregar y, a continuación, haga clic en el botón OK.

    La referencia se agrega a la lista en la carpeta Referencias.

  5. Abra el menú contextual del ensamblado que agregó y elija Propiedades. Aparece la ventana Propiedades.

  6. Para incluir este ensamblado en el paquete del servicio en la lista Copia local, elija True.

  7. Para incluir archivos en el paquete del servicio que se agregaron al proyecto de rol web, abra el menú contextual del archivo y elija Propiedades. En la ventana Propiedades, elija Contenido de la lista Acción de generación.

  8. Para incluir archivos en el paquete del servicio que se agregaron al proyecto de rol de trabajo, abra el menú contextual del archivo y elija Propiedades. En la ventana Propiedades, elija Copiar si es posterior en la lista Copiar en el directorio de resultados.

Para más información sobre cómo publicar en Azure desde Visual Studio, consulte Asistente para publicación de aplicaciones de Azure.