Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
de Bilal Aslam
Información general
Web Deploy es una herramienta para simplificar la migración, la administración y la implementación de aplicaciones web, sitios y servidores. Se puede usar para empaquetar un sitio web, incluyendo automáticamente el contenido, la configuración, los certificados y las bases de datos. Se puede usar para sincronizar entre IIS 6.0 o IIS 7.0, o para migrar de IIS 6.0 a IIS 7.0. Los paquetes creados se pueden usar para el control de versiones, la copia de seguridad o la implementación.
Tenga en cuenta que IIS 8.0 solo se admite con Web Deploy V3.
Características
Web Deploy incluye estas características clave:
Empaquetar sitios web y aplicaciones. Los desarrolladores y administradores pueden empaquetar la configuración y el contenido de las aplicaciones web instaladas, incluidas las bases de datos SQL, y usar los paquetes para el almacenamiento o volver a implementarlos. Estos paquetes se pueden implementar después mediante la interfaz del Administrador de IIS sin necesidad de privilegios administrativos en un servidor remoto.
Delegación de las tareas de implementación en usuarios que no son administradores. Los administradores del servidor ahora pueden elegir delegar tareas de implementación en los usuarios que no son administradores. Por ejemplo, en entornos de hospedaje compartidos y empresariales, se puede delegar la implementación de contenido y la marcación de una carpeta como una aplicación. También se pueden habilitar tareas más avanzadas adecuadas en un entorno dedicado, como permitir la implementación de un certificado, un sitio web o un ensamblado de GAC.
Simplificación de la implementación para los administradores. Los administradores del servidor encontrarán la delegación útil, ya que la implementación de una aplicación web, incluido un ensamblado de GAC, un certificado y un grupo de aplicaciones, puede llevar mucho tiempo incluso con todos los permisos necesarios.
Migración desde IIS 6.0. La operación de migración proporciona a los administradores una manera de migrar sitios o servidores completos de IIS 6.0 a IIS 7.0, incluida su configuración y contenido. Una migración es básicamente una manera de sincronizar, filtrada por reglas de migración.
Sincronización de IIS 6.0/IIS 7.0. La operación de sincronización proporciona a los administradores una manera rápida de sincronizar un sitio o servidor e implementar cambios en los sitios y servidores existentes. Una sincronización permite sincronizar un origen con un destino. Por ejemplo, puede sincronizar dos rutas de acceso de directorio o dos servidores web. La sincronización se puede hacer con objetos locales o remotos.
Instantánea de IIS 6.0/IIS 7.0. La funcionalidad de instantánea, o archivo, permite a los administradores y desarrolladores tomar rápidamente un archivo de su sitio web o servidor para revisar, restaurar o hacer copias de seguridad.
Análisis de dependencias en IIS 6.0/IIS 7.0. La operación de análisis permite a los administradores comprobar qué componentes están instalados en el servidor de origen. De este modo, pueden determinar si están presentes las características que necesitarán en IIS 7.0 o que requieren una configuración más avanzada que simplemente copiar archivos.
Solución de problemas y validación. Para validar una operación, el parámetro -whatif permite a los administradores ver qué acciones ocurrirían al hacer una operación. Esto es especialmente útil para realizar sincronizaciones o migraciones, cuando quieren validar qué cambios se materializarán antes de realizarlos. Para solucionar problemas, el parámetro -verbose permite a los administradores obtener detalles completos sobre qué operaciones se están ejecutando y, tras un error, la capacidad de diagnosticar el problema.
Sincronización diferencial. La herramienta solo sincroniza lo que ha cambiado entre el origen y el destino.
installation notes (Nota de compatibilidad de SAP n.º 1984787: Notas de instalación de SUSE Linux Enterprise Server 12)
Requisitos
Se deben cumplir los siguientes requisitos previos para instalar la herramienta:
- Debe tener instalado .NET 2.0 SP1 o una versión superior.
Descarga e instalación
Hay dos paquetes descargables independientes para la herramienta; deberá descargar el paquete adecuado:
https://www.iis.net/download/WebDeploy
Tendrá que ejecutar el paquete de instalación como administrador. Esto se puede lograr mediante uno de los métodos siguientes:
- Inicie sesión en el servidor con la cuenta real denominada "Administrador".
- Inicie sesión con una cuenta con privilegios de administrador y abra un símbolo del sistema haciendo clic con el botón derecho en el elemento de menú Símbolo del sistema que se encuentra en el menú Accesorios de los programas de Windows. Seleccione "Ejecutar como administrador" y, luego, para ejecutar la instalación, escriba el comando adecuado que se muestra a continuación para la versión de Windows:
msiexec /I <path_to_msi>
msiexec /I <path_to_msi>
¡NOTA IMPORTANTE! De forma predeterminada, el programa de instalación le ofrecerá la opción de instalar el servicio remoto y usará una dirección URL de servicio remoto predeterminada, http://+:80/MSDEPLOY.
Puede establecer la dirección URL del servicio remoto en una dirección URL personalizada ejecutando el programa de instalación desde la línea de comandos: (donde se especifican el puerto y la dirección URL. Personalícelo):
msiexec /i <path_to_msi> /passive ADDLOCAL=ALL LISTENURL=http://+:8080/MSDEPLOY2/
Problemas conocidos
Problema: Algunas reglas de delegación del servicio de administración no funcionan después de actualizar Web Deploy a Web Deploy 2.0
Si un servidor IIS 7+ usa la configuración compartida, determinadas reglas de delegación con la identidad runAs establecida en SpecificUser dejarán de funcionar. Esto se debe a que el instalador de Web Deploy y el script .\AddDelegationRules.ps1 crean cuentas de usuario de la máquina local y las establece como identidad runAs en determinadas reglas de delegación. Estas cuentas de usuario no se reconocerán en otras máquinas y, por tanto, las reglas no funcionarán en la configuración compartida.
Soluciones alternativas:
- No instale Web Deploy 2.0 mediante el Instalador de plataforma web. En su lugar, instálelo directamente desde MSI y quite la selección del componente Configurar para implementaciones que no son de administrador
- Si las reglas de delegación ya se han sobrescrito, vuelva a crearlas manualmente.
Problema: El sitio creado con el script de PowerShell .\SetupSite.ps1 no se puede examinar
Cuando este script crea un sitio, intenta asignarle un número de puerto entre 8000 y 8200, que aún no se ha usado. Puede ocurrir que no haya ningún puerto libre disponible, en cuyo caso el puerto asignado a este sitio no funcionará. Además, posiblemente, un firewall puede bloquear el puerto asignado al sitio.
Soluciones alternativas: Asigne manualmente el sitio a un puerto diferente de la interfaz de usuario del Administrador de IIS. Además, asegúrese de que el firewall no bloquee el puerto, por ejemplo, en Windows Server 2008 R2, ejecute este comando: "netsh advfirewall firewall add rule name="MySite" dir=in action=allow protocol=TCP localport=8080", donde MySite se reemplaza por el nombre del sitio.
Problema: No se puede publicar en el sitio creado con el script de PowerShell SetupSiteForPublish.ps1 o configurado para publicar Web Deploy a través de "Configurar para la publicación de Web Deploy..." IU
El script de creación del sitio, así como la interfaz de usuario que configura Web Deploy para un sitio existente establece la dirección URL de publicación como https://myserver:8172/msdeploy.axd
. Este nombre de equipo generalmente es accesible en una red. Sin embargo, a menudo no es accesible desde fuera de la red, por lo que debe reemplazarse por un nombre DNS público.
Soluciones alternativas:
- Desde el script: el script no advierte de este error. Reemplace la dirección URL por la correcta (como se indica a continuación) en el archivo de configuración generado.
- Desde la interfaz de usuario: escriba el nombre DNS público en el campo "Especifique la dirección URL para la conexión del servidor de publicación", por ejemplo, en lugar de
https://myserver:8172/msdeploy.axd
, escribahttps://some.publicDnsName.com:8172/msdeploy.axd
Problema: Web Deploy consume un 100 % de tiempo de CPU en pocos minutos
Si el nivel de registro se establece demasiado alto, Web Deploy consumirá un 100 % de CPU cuando haya una operación de sincronización en curso. Esto puede ocurrir si el nivel de registro está establecido en detallado (4) o información (3).
Soluciones alternativas: Establezca el nivel de registro inferior:
- Inicie el Editor del Registro
- Vaya a HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IIS Extensions\MSDeploy\2\WMSVCTracing y establézcalo en 1 o 2, según sea necesario.
- Reinicie el servicio de administración web abriendo un símbolo del sistema con privilegios elevados y escribiendo "net stop wmsvc" seguido de "net start wmsvc"
Problema: La interfaz de usuario de Web Deploy en el administrador de IIS devuelve el error "No se puede convertir el objeto de tipo"
Si el equipo de destino tiene instalado Web Deploy v1.1 y el equipo de origen, v2, es posible que vea este error. Se trata de una incompatibilidad entre versiones.
Soluciones alternativas:
- Actualice el equipo de origen a Web Deploy v2
- Desinstale todas las versiones de Web Deploy en el equipo de origen
Problema: Web Deploy no puede recuperar el número de USN del servidor remoto
El modificador "-incremental", cuando se usa con el proveedor dirPath, devuelve un número USN que se usará con futuras sincronizaciones para permitir la sincronización incremental.
Por ejemplo: msdeploy -verb:dump -source:dirpath=c:\Temp –incremental
Devoluciones: c:\Temp
Información: el número de USN para sincronizar la ruta de acceso de origen "c:\Temp" es "2140379512".
Sin embargo, si el origen es remoto, la operación no devuelve el número USN. Se trata de una limitación conocida dado que Web Deploy v2 no admite la recuperación de un número USN desde un servidor remoto.
Solución alternativa: Use otra herramienta para recuperar el número USN del servidor remoto.
Problema: Si está sincronizando una máquina IIS 6.0 con una gran cantidad de sitios (lo que provoca que la metabase supere los 500 MB), la herramienta puede bloquearse y dejar de responder.
Solución alternativa: Cree una lista de los sitios y sincronice cada uno individualmente.
Problema: Si está sincronizando desde una máquina a una máquina remota donde el contenido o la configuración compartida está en una tercera máquina independiente (es decir, UNC), el agente remoto no podrá autenticarse correctamente.
Solución alternativa: Sincronícela manualmente o use el controlador de implementación web en su lugar.
Problema: Si intenta empaquetar o archivar una carpeta que tiene un bucle de algún tipo (como si estuviera intentando crear el paquete dentro de una carpeta que está empaquetando), la herramienta podría fallar o bloquearse.
Solución alternativa: No sincronice carpetas en bucle.
Problema: Si está sincronizando un sitio web con más de 100 subdirectorios (1\2\3..\100\101), la herramienta puede bloquearse.
Solución alternativa: No sincronice las estructuras de carpetas con 120 subdirectorios.
Problema: Si cambia las opciones de configuración compartidas (por ejemplo, habilitar o deshabilitar la configuración compartida), deberá reiniciar el agente remoto después.
Solución alternativa: Reinicie el agente después de hacer un cambio en la configuración compartida.
Problema: Si está sincronizando un sitio web donde la ruta de acceso es %systemdrive%\wwwroot
a un sitio web de destino donde la unidad del sistema es diferente (C: en lugar de D:), la ruta de acceso del sitio web se expandirá en el destino. Esto implica que si tiene una configuración compartida con diferentes unidades del sistema y depende de %systemdrive%
para asegurarse de que el contenido funciona, puede interrumpir el sitio en una máquina.
Solución alternativa: Agregue una regla de reemplazo para cambiar la ruta de acceso durante la sincronización.
Problema: Si está sincronizando una máquina IIS 6.0 con una gran cantidad de sitios (lo que provoca que la metabase supere los 500 MB), la herramienta puede bloquearse y dejar de responder.
Solución alternativa: Cree una lista de los sitios y sincronice cada uno individualmente.
Problema: Si está sincronizando una carpeta marcada como una aplicación en IIS 6.0 en un archivo o paquete, a veces el contenido no se recopilará automáticamente.
Solución alternativa: Agregue manualmente las carpetas de contenido a un manifiesto personalizado y sincronice el manifiesto. Consulte la sección de Ayuda para obtener más información sobre cómo crear archivos de manifiesto.
Problema: Si intenta empaquetar en un archivo de paquete existente, es posible que no funcione correctamente.
Solución alternativa: Use otro nombre o elimine el archivo del paquete anterior antes de crear uno nuevo.
Problema: Microsoft Web Deploy no mueve los archivos físicos para las asignaciones de scripts y los elementos a los que se hace referencia en la lista de restricciones de extensión del servicio web, a menos que los archivos se encuentren en los directorios de contenido de un sitio web. Esto se debe a que es posible que muchas ISAPI no se migren correctamente, como:
- ASP.NET (requiere instalación).
- WebDAV (que no se incluye en Windows Server 2008 de forma predeterminada y requiere instalación adicional).
- Extensiones de servidor de FrontPage (que no se incluye en Windows Server 2008 de manera predeterminada y requiere instalación adicional).
Solución alternativa: Solución alternativa: Incluya manualmente los archivos o las asignaciones de scripts que no requieran la instalación en un archivo de manifiesto. Consulte la sección de Ayuda para obtener más información sobre cómo crear archivos de manifiesto.
Problema: No se moverán los archivos de confianza personalizados a los que se hace referencia en la configuración de directiva Web.config y Seguridad de acceso a código (CAS).
Solución alternativa: Especifique manualmente el archivo de confianza personalizado y el archivo de directiva CAS, security.config, en un archivo de manifiesto. Consulte el archivo de Ayuda para obtener más información sobre cómo crear archivos de manifiesto.
Problema: Si mueve un sitio a un servidor que tiene un nivel de confianza diferente, no recibirá una advertencia.
Solución alternativa: Asegúrese de que el nivel de confianza está establecido correctamente en la máquina de destino al hacer una sincronización o migración de nivel de sitio.
Problema: Si tiene un archivo de manifiesto personalizado que apunta a un origen no válido, es posible que no reciba un error.
Solución alternativa: Si no ve la salida esperada al usar un archivo de manifiesto, pruebe cada elemento individualmente para ver si están mal escritos o no son válidos.
Problema: FTP y SMTP no están incluidos en las definiciones predeterminadas de webserver60.
Solución alternativa: Si necesita sincronizar estas ubicaciones, hágalo manualmente mediante el proveedor de metaclave, es decir, metakey=lm/msftpsvc.
Problema: Las propiedades heredadas no se migran con una migración de sitio de IIS 6.0. Un ejemplo común es la autenticación establecida en el nivel de servidor con todos los sitios que heredan esta propiedad. Al migrar un único sitio, ahora heredará la configuración del nuevo servidor de destino. Si la configuración del servidor de destino no es la misma, el sitio podría interrumpirse. Esto se aplica a todas las propiedades heredadas, incluidas las asignaciones MIME y de script, etc.
Solución alternativa: Use la marca metadataGetInherited para copiar la configuración heredada en el nivel de sitio al sincronizar o migrar un sitio web en IIS 6.0. O asegúrese de que la configuración del servidor es la misma en los servidores de origen y destino o establezca manualmente el sitio para que use la configuración correcta.
Solución de problemas de instalación
Si tiene algún problema durante la instalación, puede ejecutar el comando adecuado de los que se muestran a continuación para que la versión de Windows cree un archivo de registro que contenga información sobre el proceso de instalación:
msiexec /L msdeployinstall.log /I <path_to_msi>
msiexec /L msdeployinstall.log /I <path_to_msi>
Puede analizar este archivo de registro después de una instalación errónea para ayudar a determinar la causa del error.
Para obtener más información
Los siguientes recursos adicionales para Web Deploy están disponibles en IIS.net:
- Tutoriales de Web Deploy. Se describe cómo descargar e instalar Web Deploy, cómo usarlo para las operaciones de sincronización o migración, etc.
- Asegúrese también de visitar Microsoft Web Deployment Team Blog para obtener sugerencias, trucos y la información más reciente sobre la herramienta.
© 2007 – 2011 Microsoft Corporation.