Administración escalable de parches para máquinas virtuales Windows

En este artículo se describe el enfoque recomendado para operacionalizar las actualizaciones del sistema operativo en Windows máquinas virtuales (VM) de la carga de trabajo. El proceso recomendado proporciona una solución de administración de revisiones coherente, escalable y controlada para las máquinas virtuales de Windows de la carga de trabajo. Permite validar las actualizaciones en entornos de preproducción antes de promoverlas a producción.

La administración de revisiones efectiva se extiende más allá de la instalación de actualizaciones. Una estrategia de administración de revisiones también requiere una gobernanza coherente para asegurarse de que las máquinas virtuales se incorporan a la solución de administración de revisiones, configuradas según los estándares de carga de trabajo y supervisan continuamente el cumplimiento.

Nota:

Este artículo se centra en Azure Virtual Machines. Aunque Administrador de actualizaciones de Azure también admite servidores habilitados para Azure Arc, los escenarios híbridos implican consideraciones adicionales y no se tratan aquí.

Para obtener información sobre Virtual Machine Scale Sets, consulte Azure actualizaciones automáticas de imágenes del sistema operativo del conjunto de escalado de máquinas virtuales.

Administrador de actualizaciones de Azure

El enfoque recomendado para administrar Windows actualizaciones del sistema operativo en Azure Windows máquinas virtuales es usar Update Manager. Este servicio proporciona informes de programación y cumplimiento centralizados y la capacidad de realizar implementaciones de actualizaciones de sistema operativo preconfiguradas para las máquinas virtuales. Update Manager funciona a través de una extensión sidecar Azure máquina virtual instalada en cada máquina virtual de la carga de trabajo. Update Manager no hospeda ni distribuye las revisiones. Controla y activa el agente de Windows Update nativo (WUA) en cada máquina virtual.

Update Manager proporciona al equipo de carga de trabajo una vista central del estado de revisión de las máquinas virtuales en su entorno. Puede establecer los destinos y cadencias de aplicación de revisiones y habilitar la implementación de revisiones a petición.

Tip

Update Manager instala Windows actualizaciones mediante la API de WUA. Dado que estas actualizaciones omiten el flujo de trabajo de orquestador de Windows Update que usa Windows Configuración, es posible que no aparezcan en configuración>Windows Update>Historial de actualizaciones. Se espera este comportamiento. Para comprobar la instalación de actualizaciones, revise los eventos WindowsUpdateClient en Windows Visor de eventos.

organización de recursos de Azure

Update Manager no es un recurso de Azure. No lo implementas en las suscripciones de tu carga de trabajo. Está disponible en el portal de Azure y la experiencia en el portal es independiente de la suscripción y basada en RBAC. Mantiene las configuraciones de mantenimiento, qué revisiones del sistema operativo se aplican, cuándo se aplica y la asociación de las configuraciones a las máquinas virtuales de la carga de trabajo como Azure recursos.

Cada configuración de mantenimiento puede tener una sola programación y puede tener como destino cualquier número de recursos a través de asociaciones. Las configuraciones de mantenimiento son recursos regionales. Use una única configuración de mantenimiento y un conjunto de asociaciones para incluir solo las máquinas virtuales dentro de la misma región y suscripción. Si adopta este enfoque, tiene recursos de configuración de mantenimiento independientes para todos los entornos y, potencialmente, más de un recurso por entorno si la carga de trabajo es de varias regiones o tiene diferentes programaciones de actualización para diferentes partes de la carga de trabajo.

Mantenga los recursos de configuración de mantenimiento como parte del IaC de la carga de trabajo para ese entorno. Este enfoque le permite realizar procesos de control de cambios y prácticas de implementación seguras, y le ofrece una opción de recuperación ante desastres.

Requisitos de máquina virtual

Las máquinas virtuales de Windows deben usar una imagen personalizada o Azure Marketplace compatible. Independientemente del origen, debe configurar el sistema operativo para admitir actualizaciones. El método recomendado es a través de iaC de la máquina virtual, que configura las opciones de sistema operativo necesarias. En concreto, asegúrese de que las máquinas virtuales tengan al menos la siguiente configuración:

windowsConfiguration: {
  provisionVMAgent: true
  enableAutomaticUpdates: true

  patchSettings: {
    patchMode: 'AutomaticByPlatform'  // Turns off automatic updates in the OS; now platform triggers updates
    assessmentMode: 'AutomaticByPlatform' // Scans for missing updates every 24 hours

    automaticByPlatformSettings: {
      bypassPlatformSafetyChecksOnUserSchedule: true  // Allows Azure Update Management to honor defined schedules
      rebootSetting: 'IfRequired'  // Or 'Never' if required in your workload
    }
  }
}

El agente invitado de Windows instala una extensión sidecar denominada Microsoft.CPlat.Core.WindowsPatchExtension. Esta extensión con privilegios se ejecuta en las máquinas virtuales para obtener su programación y actualizar la configuración. También invoca las API nativas de actualización del sistema operativo Windows para realizar las actualizaciones. Esta extensión no se define como parte de iaC de la máquina virtual. Update Manager lo instala automáticamente y mantiene su ciclo de vida.

La WindowsPatchExtension extensión no invalida la configuración de origen de actualización en el equipo. Todavía es responsable de configurar el origen de actualización de las máquinas virtuales:

  • El repositorio de Windows Update (Windows sistema operativo y controladores específicos)
  • El repositorio Microsoft Update (Windows sistema operativo, controladores específicos y productos de Microsoft específicos)
  • Si su organización todavía requiere que las cargas de trabajo usen una, un servidor de Windows Server Update Services (WSUS) (ahora en desuso)

Para obtener más información sobre los orígenes admitidos, consulte Orígenes de actualización, tipos, Microsoft actualizaciones de aplicaciones y actualizaciones que no son de Microsoft.

Habilite las evaluaciones automáticas para que los informes de cumplimiento reflejen los datos actuales. Esta característica muestra el estado de cada máquina virtual con respecto a la línea de base de revisión y resalta las exposiciones recién divulgadas antes de la siguiente ejecución programada. La evaluación solo cubre la ejecución de máquinas virtuales. Las máquinas virtuales detenidas o desasignadas no se examinan.

Importante

Dado que Update Manager invoca directamente la funcionalidad nativa Windows sistema operativo, es importante que la configuración del sistema operativo siga configurada correctamente para admitir la aplicación de revisiones.

  • Asegúrese de que la directiva de grupo, Microsoft Intune u otras herramientas de administración de configuración no invalide la configuración del sistema operativo necesaria para que Update Manager funcione correctamente en las máquinas virtuales. Para obtener valores de configuración específicos, consulte Configuración de Windows Update En Administrador de actualizaciones de Azure.
  • Los firewalls de nivel de sistema operativo no deben bloquear el tráfico de actualización.

Aplicación de directivas

La carga de trabajo también debe usar Azure Policy para exigir que las máquinas virtuales permanezcan correctamente configuradas para Update Manager. Aplique las directivas de Administrador de actualizaciones de Azure integradas para evitar el desfase de configuración. Las directivas integradas admiten DINE (deployIfNotExists) y modifican la aplicación para corregir automáticamente las máquinas virtuales no compatibles.

Para obtener un enfoque controlado por directivas para la administración de revisiones, consulte Habilitación de la evaluación periódica y la aplicación de revisiones programadas en máquinas virtuales Azure mediante una directiva. Use este enfoque si la carga de trabajo no usa IaC para implementar y configurar las máquinas virtuales.

Requisitos de red

Para las máquinas virtuales de Azure con acceso directo saliente a Internet, Windows Update suele funcionar sin necesidad de una lista de permitidos de red adicional, siempre que la configuración del origen de actualización del sistema operativo invitado, DNS, el proxy, la inspección de TLS y la configuración de las directivas locales permitan el tráfico de Windows Update/Microsoft Update. Sin embargo, la mayoría de las cargas de trabajo funcionan en redes virtuales bloqueadas con acceso saliente restringido. En estos casos, debe permitir el tráfico para Microsoft actualizar puntos de conexión en todos los grupos de seguridad de red y firewalls a los que se va a realizar la salida.

Grupos de seguridad de red

Los orígenes de actualización predeterminados, incluidos los Windows Update, se basan en DNS y no publican listas IP estáticas estables. Por lo tanto, para los orígenes de actualización hospedados en Internet, un grupo de seguridad de red conectado a la NIC de la máquina virtual o su subred debe admitir el tráfico de salida de Internet a TCP:443 y TCP:80. Debe restringir aún más el acceso desde el firewall de salida. Si las actualizaciones proceden de un intervalo de direcciones IP estáticas (por ejemplo, un origen local), debe definir explícitamente ese destino de salida en el grupo de seguridad de red.

Firewall de salida

El firewall de salida debe permitir el tráfico a los FQDN usados por el origen de la actualización. Si usas Azure Firewall y un origen de actualización proporcionado por Microsoft, usa la etiqueta FQDN de WindowsUpdate para permitir el acceso saliente a los puntos de conexión de Windows Update. Para obtener información sobre cómo configurar otros firewalls de salida en la ruta de acceso de red, consulte Configuración de firewalls. Debe permitir este tráfico solo cuando se origina en las máquinas virtuales de Windows, no de subredes no relacionadas en la carga de trabajo.

Asociar máquinas virtuales con una configuración de mantenimiento

Aunque puede crear asociaciones estáticas entre una configuración de mantenimiento y las máquinas virtuales, use el ámbito dinámico en su lugar. Los ámbitos dinámicos determinan qué máquinas virtuales están asociadas a la configuración de mantenimiento en función de atributos como el grupo de recursos, la ubicación y las etiquetas. La configuración de mantenimiento, no el ámbito dinámico, define qué actualizaciones se instalan y cuándo se instalan. La delimitación dinámica incorpora nuevas máquinas virtuales coincidentes sin necesidad de que administre los recursos de asociación de configuración de cada máquina virtual.

Al usar reglas de ámbito dinámico, siga estas recomendaciones:

  • Administre las reglas de ámbito dinámico de IaC como parte de la carga de trabajo.
  • Para evitar dependencias entre entornos, incluya solo las máquinas virtuales del entorno, duplicando la configuración y las reglas de ámbito dinámico en todos los entornos según sea necesario.
  • Use etiquetas como mecanismo principal para la asociación y aplique su uso mediante Azure Policy.

Diseñar un calendario escalonado de aplicación de parches

Un calendario típico de aplicación de parches para una carga de trabajo utiliza calendarios de implementación por fases. Después de la versión de actualización mensual Microsoft, aplique primero las actualizaciones a las máquinas virtuales de desarrollo y prueba. Después de validar estas actualizaciones, promueva la misma clasificación de actualizaciones a la preproducción y, a continuación, la producción en ventanas de mantenimiento independientes.

Cree configuraciones de mantenimiento para definir la periodicidad, la ventana de mantenimiento, las clasificaciones de actualización y el comportamiento de reinicio. A continuación, cree la asociación de ámbito dinámico para dirigir las máquinas virtuales de la carga de trabajo para realizar la programación de revisiones rutinarias.

Normalmente, una programación alineada con el martes de revisión permite unos días para la validación antes de la implementación de producción. Dado que Microsoft actualizaciones de seguridad mensuales se publican generalmente el segundo martes de cada mes, un enfoque sugerido podría ser el siguiente. En este ejemplo, las máquinas virtuales de destino se administran mediante una regla de ámbito dinámico que usa etiquetas.

Medio ambiente Programación Etiqueta de recurso de máquina virtual Actualizaciones Reboot
Desarrollo Segundo martes
2200-0000
PatchGroup = Backend o PatchGroup=Frontend Crítico + Seguridad Si es necesario
Test Segundo miércoles
2200-0000
PatchGroup = Backend o PatchGroup=Frontend Crítico + Seguridad Si es necesario
Backend de producción (Fase 1) Segundo sábado
2200-0100
PatchGroup=Backend Crítico + Seguridad Si es necesario
Frontend de producción (Fase 2) El domingo siguiente
2200-0100
PatchGroup=Frontend Crítico + Seguridad Si es necesario

Gestionar la concurrencia de actualizaciones

Una configuración de mantenimiento inicia actualizaciones en todas las máquinas virtuales asociadas al mismo tiempo. Azure serializa los reinicios mediante la actualización del dominio solo para las máquinas virtuales de un conjunto de disponibilidad común. Las ondas back-end y front-end de este ejemplo separan la programación por nivel, no por capacidad redundante, por lo que cada instancia de un nivel podría reiniciarse juntas y quitar ese nivel por debajo de su capacidad necesaria.

Dentro de cada nivel de producción, divida la aplicación de revisiones en ondas que conservan la capacidad que se alinean con las zonas de disponibilidad, los dominios de actualización o los grupos de instancias definidos por la carga de trabajo. Use un valor de etiqueta distinto y una configuración de mantenimiento por onda.

Tenga en cuenta la coherencia del despliegue

Update Manager realiza una evaluación nueva en cada ejecución. Por lo tanto, las programaciones basadas en clasificación pueden seleccionar paquetes de actualización asociados a otro artículo de Knowledge Base (KB) en oleadas posteriores. Si cada oleada debe instalar el conjunto exacto de actualizaciones validadas, configure inclusiones explícitas de KB en lugar de basarse únicamente en clasificaciones.

Puede automatizar esta configuración mediante la API REST de Update Manager para consultar los resultados de la evaluación de la primera oleada y, a continuación, actualizar la configuración de mantenimiento para las oleadas posteriores.

La contrapartida de lograr una consistencia completa entre ondas es una complejidad de orquestación considerable. Si la carga de trabajo puede tolerar el riesgo de que una oleada posterior instale un paquete de actualización diferente al de la primera oleada, use la programación basada en clasificación.

Reduce los reinicios con hotpatching

Los reinicios suelen ser la parte más disruptiva de un calendario de aplicación de parches. Determinan los tamaños de ventana de mantenimiento y el comportamiento de reinicio en la tabla anterior. En las imágenes admitidas, el almacenamiento en caliente instala Windows actualizaciones de seguridad mediante la aplicación de revisiones al código en memoria de los procesos en ejecución, por lo que las actualizaciones de la mayoría de los meses se aplican sin reiniciar. Hotpatch es una extensión de Windows Update, por lo que Update Manager instala hotpatches mediante las mismas configuraciones de mantenimiento y el ámbito dinámico que usa para las otras máquinas virtuales.

Si la carga de trabajo es sensible a los reinicios, adopte una SKU del sistema operativo y un diseño que admita el almacenamiento en caliente:

  • Hotpatch solo está disponible en imágenes Windows específicas. No se puede habilitar hotpatch en cualquier imagen personalizada.
  • Solo las actualizaciones de seguridad de Windows se actualizan mediante hotpatching. Las actualizaciones de no seguridad, las actualizaciones de .NET y las actualizaciones de controladores o firmware todavía requieren un reinicio en los meses en que se publican. Las líneas base trimestrales de hotpatch y cualquier línea base no planificada que Microsoft emita para corregir una vulnerabilidad de día cero también requieren un reinicio. Mantenga una ventana de mantenimiento que pueda absorber un reinicio.

Controle los problemas de "antes" y "después"

Update Manager evalúa e instala las actualizaciones del sistema operativo, pero un proceso de revisión correcto puede incluir actividades antes y después de la ventana de mantenimiento para controlar correctamente los reinicios necesarios o problemas específicos de la aplicación. Update Manager proporciona eventos previos y posteriores que puede usar en la automatización de la carga de trabajo. Agregue un controlador de eventos, como una función Azure, a la arquitectura de la carga de trabajo. El controlador de eventos responde a Azure Event Grid notificaciones antes y después de la ejecución de revisiones programadas.

Use las actividades de aplicación previa a la aplicación de revisiones de Update Manager para realizar tareas como estas:

  • Inicie una máquina virtual detenida o desasignada. Las máquinas virtuales detenidas o desasignadas no se pueden aplicar revisiones y se omiten.
  • Compruebe que los puntos de recuperación de copia de seguridad están disponibles.
  • Valide el estado de la máquina virtual y de la aplicación.
  • Suprima temporalmente las alertas de supervisión para evitar falsos positivos durante la ventana de mantenimiento.

Una vez instaladas las actualizaciones, use las actividades posteriores a la aplicación de revisiones para realizar tareas como estas:

  • Restaurar la supervisión.
  • Realice comprobaciones de estado de la aplicación y del servicio.
  • Publique un aviso en un canal de Microsoft Teams.

Trate Event Grid y el proceso del controlador de eventos como recursos de carga de trabajo. Impleméntelos con IaC y aíslelos entre entornos.

Preparación de las actualizaciones a petición

Update Manager admite la instalación de revisiones a petición fuera de cualquier ventana de mantenimiento programada. Esta característica es útil para aplicar revisiones de emergencia o correcciones críticas fuera del ciclo, o para validar el comportamiento de revisión en una sola máquina virtual antes de un lanzamiento programado más amplio. Puede desencadenar actualizaciones a petición directamente desde el portal de Azure o la API rest de Update Manager en una o varias máquinas virtuales simultáneamente. El equipo de cargas de trabajo debe establecer directrices para cuándo realizar una actualización fuera de banda y cómo se organiza ese proceso en toda la carga de trabajo.

Revertir actualizaciones

Update Manager no proporciona reversión de revisiones del sistema operativo. Después de aplicar revisiones, no hay ningún mecanismo integrado para desinstalarlos directamente a través de Update Manager.

Si la carga de trabajo necesita admitir un estado "último correcto conocido", cree una instantánea o un punto de recuperación antes de una ejecución de mantenimiento. Automatice la creación de instantáneas para ejecutarse antes de cada ventana de aplicación de revisiones para asegurarse de que siempre existe un punto de recuperación antes de aplicar las revisiones. Como alternativa, vuelva a implementar la máquina virtual sin la revisión, excluya la revisión de KB problemática de la implementación y vuelva a aplicar las actualizaciones.

Importante

Planee la estrategia de recuperación antes de habilitar la aplicación de revisiones programadas en producción.

Informes de cumplimiento

Update Manager envía a Azure Resource Graph tanto los resultados de evaluación como los resultados de instalación de revisiones; Azure Resource Graph almacena las actualizaciones pendientes durante 7 días y los resultados de la instalación durante 30 días. Update Manager incluye vistas integradas de informes de cumplimiento y administración que proporcionan visibilidad del estado de actualización en todo el entorno. Estos paneles permiten a los administradores supervisar el cumplimiento de revisiones, identificar las máquinas que requieren atención y realizar un seguimiento del progreso de la implementación de actualizaciones desde una ubicación central.

Los libros de trabajo predefinidos muestran información clave de toda su carga de trabajo:

  • Resumen general del estado y la configuración de la máquina
  • Desglose de las actualizaciones pendientes por gravedad y clasificación
  • Un resumen de las programaciones, las configuraciones de mantenimiento y las máquinas asociadas a cada programación
  • Una vista histórica de las ejecuciones de instalación anteriores, incluidas las tasas de éxito y los errores

Muchas organizaciones requieren que sus equipos de aplicaciones proporcionen informes de cumplimiento. Lo ideal es que su organización ya use Update Manager para ese seguimiento, ya que la experiencia del portal de Update Manager y los libros pueden funcionar a través de los límites de la suscripción y no es necesario proporcionar ningún informe de estado de revisión personalizado en la carga de trabajo.

Si usted o su organización necesitan informes personalizados más allá de las vistas predefinidas, puede personalizar libros. Incluya libros personalizados en los archivos IaC de la carga de trabajo para aplicar un proceso de control de cambios y proporcionar una opción de recuperación ante desastres. Una alternativa es proporcionar los datos de informes de cumplimiento necesarios a través de consultas de Resource Graph.

Si la carga de trabajo debe conservar el historial de revisiones durante más tiempo que Resource Graph, cree un proceso para exportar los datos a un almacén que controle.

Enfoque alternativo

Si decide no adoptar el enfoque programado de Update Manager preconfigurado para la carga de trabajo, evalúe la aplicación automática de revisiones de invitado de máquina virtual antes de diseñar una solución personalizada. Si usa esta opción, Azure orquesta la aplicación de revisiones automáticamente. Sin embargo, renunciará a las siguientes ventajas si usa este enfoque:

  • Despliegue escalonado. Las actualizaciones no se promueven a través del desarrollo, la prueba y las oleadas de producción, por lo que se pierden las puertas de validación.
  • Control de ventana de mantenimiento. Azure determina cuándo se ejecuta la aplicación de revisiones durante las horas de poca actividad en la zona horaria de cada máquina virtual.
  • Actualizar el control de clasificación. Solo se aplican las actualizaciones críticas y de seguridad. Otras actualizaciones no se instalan automáticamente.

Contributors

Microsoft mantiene este artículo. Los siguientes colaboradores escribieron este artículo.

Autor principal:

Para ver los perfiles no públicos de LinkedIn, inicie sesión en LinkedIn.

Pasos siguientes