Examen del intercambio de ranuras
Al cambiar entre dos ranuras (por ejemplo, de un espacio de ensayo al espacio de producción), App Service completa el proceso siguiente para garantizar que la ranura de destino no experimente tiempo de inactividad:
Aplique las siguientes opciones de configuración de la ranura de destino (por ejemplo, la de producción) a todas las instancias de la ranura de origen:
- Configuración de aplicación y cadenas de conexión específicas de la ranura, si procede.
- Configuración de implementación continua, si está habilitada.
- Configuración de autenticación de App Service, si está habilitada.
Cualquiera de estos casos desencadena el reinicio de todas las instancias de la ranura de origen. Durante el intercambio con vista previa, esta marca el final de la primera fase. La operación de intercambio se pausará y podrá validar que la ranura de origen funciona correctamente con la configuración de la ranura de destino.
Espere a que todas las instancias de la ranura de origen se hayan reiniciado. Si el reinicio no se puede realizar en alguna instancia, el intercambio revierte todos los cambios en la ranura de origen y detiene la operación.
Si la caché local está habilitada, desencadene la inicialización de la caché local mediante una solicitud HTTP a la raíz de la aplicación ("/") en cada instancia de la ranura de origen. Espere a que todas las instancias devuelvan cualquier respuesta HTTP. La inicialización de la caché local produce otro reinicio en cada instancia.
Si el intercambio automático está habilitado con preparación personalizada, desencadene la inicialización de la aplicación mediante una solicitud HTTP a la raíz de la aplicación ("/") en cada instancia de la ranura de origen.
Si
applicationInitialization
no se especifica, desencadene una solicitud HTTP a la raíz de la aplicación de la ranura de origen en cada instancia.Si una instancia devuelve cualquier respuesta HTTP, se considera que se ha preparado.
Si todas las instancias de la ranura de origen se han preparado correctamente, intercambie las dos ranuras; para ello, cambie las reglas de enrutamiento de las dos ranuras. Después de este paso, la ranura de destino (por ejemplo, la de producción) tendrá la aplicación que se preparó previamente en la ranura de origen.
Ahora que la ranura de origen tiene la aplicación que se preparó previamente antes del intercambio, realice la misma operación; aplique la configuración y reinicie las instancias.
Durante intercambio, todo el trabajo de inicialización de las aplicaciones intercambiadas se realiza en la ranura de origen. La ranura de destino permanece en línea mientras la de origen se está preparando, independientemente de en qué punto el intercambio se realice o no correctamente. Para intercambiar una ranura de ensayo con la de producción, asegúrese de que esta última es siempre la de destino. De este modo, el intercambio no afecta a la aplicación de producción.
Cuando crea un clon de la configuración de otro espacio de implementación, la configuración clonada se puede editar. Algunos elementos de configuración siguen al contenido en los intercambios (no son específicos de la ranura), mientras que otros permanecen en la misma ranura después de este (específicos). En la tabla siguiente se muestra la configuración que cambia al intercambiar ranuras.
Configuraciones que se intercambian | Configuraciones que no se intercambian |
---|---|
Configuración general: por ejemplo, versión de Framework, 32 o 64 bits, Web Sockets | Extremos de publicación |
Configuración de la aplicación (puede configurarse para ajustarse a un espacio) | Nombres de dominio personalizados |
Cadenas de conexión (puede configurarse para ajustarse a un espacio) | Certificados no públicos y configuración de TLS/SSL |
Asignaciones de controlador | Configuración de escala |
Certificados públicos | Programadores de WebJobs |
Contenido de WebJobs | Restricciones de IP |
Conexiones híbridas * | Always On |
Azure Content Delivery Network * | Configuración del registro de diagnóstico |
Puntos de conexión de servicio * | Uso compartido de recursos entre orígenes (CORS) |
Asignaciones de ruta de acceso | Integración de la red virtual |
Identidades administradas | |
Configuración que termina con el sufijo _EXTENSION_VERSION |
Se prevé que las características marcadas con un asterisco (*) no se intercambien.
Nota
Para que la configuración se pueda intercambiar, agregue la configuración WEBSITE_OVERRIDE_PRESERVE_DEFAULT_STICKY_SLOT_SETTINGS
de la aplicación de cada ranura de la misma y establezca su valor en 0
o false
. Esta configuración se puede intercambiar o no. Recuerde que no puede hacer que solo algunos valores de configuración sean intercambiables y que los demás no lo sean. Las identidades administradas nunca se intercambian y no se ven afectadas por esta invalidación de la configuración de la aplicación
Para configurar la aplicación o una cadena de conexión de esta para que se ajuste a una ranura específica (sin intercambio), vaya a la página Configuración de esa ranura. Agregue configuración o modifíquela y seleccione Configuración de ranura de implementación. Al seleccionar esta casilla se indica a App Service que la configuración no se puede intercambiar.