Gestion évolutive des correctifs de machine virtuelle Windows

Cet article décrit l’approche recommandée pour l’opérationnalisation des mises à jour du système d’exploitation sur Windows machines virtuelles dans votre charge de travail. Le processus recommandé fournit une solution de gestion des correctifs cohérente, évolutive et régie pour les machines virtuelles Windows dans votre charge de travail. Il vous permet de valider les mises à jour dans les environnements de préproduction avant de les promouvoir en production.

La gestion efficace des correctifs s’étend au-delà de l’installation des mises à jour. Une stratégie de gestion des correctifs nécessite également une gouvernance cohérente pour s’assurer que les machines virtuelles sont intégrées à la solution de gestion des correctifs, configurées en fonction des normes de charge de travail et surveillées en permanence pour la conformité.

Remarque

Cet article se concentre sur Machines virtuelles Azure. Même si Gestionnaire de mise à jour Azure prend également en charge les serveurs compatibles avec Azure Arc, les scénarios hybrides impliquent des considérations supplémentaires et ne sont pas abordés ici.

Pour plus d’informations sur Virtual Machine Scale Sets, consultez Azure mises à niveau automatiques de l’image du système d’exploitation du groupe de machines virtuelles identiques.

Gestionnaire de mise à jour Azure

L’approche recommandée pour la gestion des mises à jour de système d’exploitation Windows sur les machines virtuelles Azure Windows consiste à utiliser Update Manager. Ce service fournit des rapports de planification et de conformité centralisés et la possibilité d’effectuer des déploiements de mises à jour de système d’exploitation intermédiaires pour vos machines virtuelles. Update Manager fonctionne via une extension de machine virtuelle Azure side-car installée sur chaque machine virtuelle de votre charge de travail. Update Manager n’héberge pas ni ne distribue les correctifs lui-même. Il contrôle et active l’agent de Windows Update natif (WUA) sur chaque machine virtuelle.

Update Manager donne à votre équipe de charge de travail une vue centrale de l’état des correctifs des machines virtuelles dans votre environnement. Vous pouvez définir vos cibles et cadences de mise à jour corrective et activer le déploiement des correctifs à la demande.

Tip

Update Manager installe Windows mises à jour à l’aide de l’API WUA. Étant donné que ces mises à jour contournent le flux de travail d'orchestrateur Windows Update utilisé par les paramètres Windows, ils peuvent ne pas apparaître dans l'historique Des paramètres>Windows Update>Update. Il s’agit du comportement attendu. Pour vérifier l’installation de la mise à jour, passez en revue les événements WindowsUpdateClient dans Windows observateur d'événements.

organisation de ressources Azure

Update Manager n'est pas une ressource Azure. Vous ne le déployez pas au sein des abonnements de votre charge de travail. Il est disponible dans le portail Azure, et l'expérience du portail est indépendante du RBAC et de l'abonnement. Vous gérez les configurations de maintenance, les correctifs de système d'exploitation qui s'appliquent, le cas échéant, et l'association des configurations aux machines virtuelles de votre charge de travail en tant que ressources Azure.

Chaque configuration de maintenance peut avoir une planification unique et peut cibler n’importe quel nombre de ressources via des associations. Les configurations de maintenance sont des ressources régionales. Utilisez une configuration de maintenance unique et un ensemble d’associations pour inclure uniquement des machines virtuelles dans la même région et le même abonnement. Si vous effectuez cette approche, vous disposez de ressources de configuration de maintenance distinctes pour tous les environnements, et potentiellement plusieurs ressources par environnement si votre charge de travail est multirégion ou dispose de planifications de mises à jour différentes pour différentes parties de la charge de travail.

Gérez vos ressources de configuration de maintenance dans le cadre de l’iaC de votre charge de travail pour cet environnement. Cette approche vous permet d’effectuer des processus de contrôle des modifications et des pratiques de déploiement sécurisées, et vous offre une option de récupération d’urgence.

Configuration requise pour les machines virtuelles

Les machines virtuelles Windows doivent utiliser une image personnalisée ou Place de marché Azure prise en charge. Quelle que soit la source, vous devez configurer le système d’exploitation pour prendre en charge les mises à jour. La méthode recommandée consiste à utiliser l’iaC de votre machine virtuelle, qui configure les paramètres de système d’exploitation requis. Plus précisément, vérifiez que vos machines virtuelles ont au moins les paramètres suivants :

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
    }
  }
}

L’agent invité Windows installe une extension sidecar appelée Microsoft.CPlat.Core.WindowsPatchExtension. Cette extension privilégiée s’exécute sur vos machines virtuelles pour obtenir sa configuration de planification et de mise à jour. Il appelle également les API de mise à jour de système d’exploitation natives Windows pour effectuer les mises à jour. Vous ne définissez pas cette extension dans le cadre de votre iaC de machine virtuelle. Update Manager l’installe automatiquement et conserve son cycle de vie.

L’extension WindowsPatchExtension ne remplace pas les paramètres de la source de mise à jour sur l’ordinateur. Vous êtes toujours responsable de la configuration de la source de mise à jour pour vos machines virtuelles :

  • Référentiel Windows Update (système d’exploitation Windows et pilotes spécifiques)
  • Référentiel Microsoft Update (système d’exploitation Windows, pilotes spécifiques et produits Microsoft spécifiques)
  • Si votre organisation a toujours besoin de charges de travail pour l’utiliser, un serveur Windows Server Update Services (WSUS) (désormais déconseillé)

Pour plus d’informations sur les sources prises en charge, consultez Sources de mise à jour prises en charge, types, mises à jour d’applications Microsoft et mises à jour non Microsoft.

Activez les évaluations automatiques afin que vos rapports de conformité reflètent les données actuelles. Cette fonctionnalité affiche l’état de chaque machine virtuelle en ce qui concerne votre base de référence de correctif et met en évidence les expositions nouvellement divulguées avant l’exécution planifiée suivante. L’évaluation couvre uniquement l’exécution de machines virtuelles. Les machines virtuelles arrêtées ou libérées ne sont pas analysées.

Important

Étant donné que Update Manager appelle directement la fonctionnalité de système d'exploitation native Windows, il est important que les paramètres du système d'exploitation restent correctement configurés pour prendre en charge la mise à jour corrective.

  • Vérifiez que la stratégie de groupe, Microsoft Intune ou d'autres outils de gestion de configuration ne remplacent pas les paramètres de système d'exploitation requis pour que Update Manager fonctionne correctement sur vos machines virtuelles. Pour obtenir des valeurs de configuration spécifiques, consultez Configurer les paramètres de Windows Update dans Gestionnaire de mise à jour Azure.
  • Les pare-feu au niveau du système d’exploitation ne doivent pas bloquer le trafic de mise à jour.

Application de la stratégie

Votre charge de travail doit également utiliser Azure Policy pour appliquer que vos machines virtuelles restent correctement configurées pour Update Manager. Appliquez les stratégies Gestionnaire de mise à jour Azure intégrées pour empêcher la dérive de configuration. Les stratégies intégrées prennent en charge DINE (deployIfNotExists) et modifient l’application pour corriger automatiquement les machines virtuelles non conformes.

Pour une approche basée sur des stratégies pour la gestion des correctifs, consultez Activer l’évaluation périodique et la mise à jour corrective planifiée sur Azure machines virtuelles à l’aide d’une stratégie. Utilisez cette approche si votre charge de travail n’utilise pas IaC pour déployer et configurer vos machines virtuelles.

Exigences réseau

Pour les machines virtuelles Azure disposant d’un accès Internet sortant direct, Windows Update fonctionne généralement sans configuration réseau supplémentaire de liste d’autorisation, à condition que la source de mise à jour du système d’exploitation invité, le DNS, le proxy, l’inspection TLS et les paramètres de stratégie locale autorisent le trafic Windows Update/Microsoft Update. Toutefois, la plupart des charges de travail fonctionnent dans des réseaux virtuels verrouillés avec un accès sortant restreint. Dans ce cas, vous devez autoriser le trafic vers Microsoft points de terminaison de mise à jour dans tous les groupes de sécurité réseau et pare-feu que vous parcourez.

Groupes de sécurité réseau

Les sources de mise à jour par défaut, y compris Windows Update, sont basées sur DNS et ne publient pas de listes IP statiques stables. Par conséquent, pour les sources de mise à jour hébergées sur Internet, un groupe de sécurité réseau attaché à la carte réseau de la machine virtuelle ou à son sous-réseau doit prendre en charge le trafic de sortie Internet vers TCP :443 et TCP :80. Vous devez restreindre davantage l’accès à partir de votre pare-feu de sortie. Si vos mises à jour proviennent d’une plage d’adresses IP statiques (par exemple, une source locale), vous devez définir explicitement cette destination sortante dans votre groupe de sécurité réseau.

Pare-feu de sortie

Votre pare-feu de sortie doit autoriser le trafic vers les noms de domaine complets utilisés par votre source de mise à jour. Si vous utilisez Pare-feu Azure et une source de mise à jour fournie par Microsoft, utilisez la balise FQDN WindowsUpdate pour autoriser l’accès sortant aux points de terminaison Windows Update. Pour plus d’informations sur la configuration d’autres pare-feu de sortie dans votre chemin d’accès réseau, consultez Configurer des pare-feu. Vous devez autoriser ce trafic uniquement lorsqu’il provient de vos machines virtuelles Windows, et non à partir de sous-réseaux non liés dans votre charge de travail.

Associer des machines virtuelles à une configuration de maintenance

Bien que vous puissiez créer des associations statiques entre une configuration de maintenance et vos machines virtuelles, utilisez plutôt une étendue dynamique. Les étendues dynamiques déterminent les machines virtuelles associées à la configuration de maintenance en fonction d’attributs tels que le groupe de ressources, l’emplacement et les balises. La configuration de maintenance, et non l’étendue dynamique, définit les mises à jour installées et quand elles sont installées. Le ciblage dynamique prend en charge automatiquement les nouvelles machines virtuelles correspondantes sans vous obliger à gérer des ressources d’association de configuration par machine virtuelle.

Lorsque vous utilisez des règles d’étendue dynamique, suivez ces recommandations :

  • Gérez les règles d’étendue dynamiques dans IaC dans le cadre de votre charge de travail.
  • Pour éviter les dépendances entre environnements, incluez uniquement les machines virtuelles de votre environnement, la configuration duplicating et les règles d’étendue dynamiques entre les environnements en fonction des besoins.
  • Utilisez des balises comme mécanisme principal pour l’association et appliquez leur utilisation à l’aide de Azure Policy.

Concevoir une planification de mise à jour corrective intermédiaire

Une planification de mise à jour corrective classique pour une charge de travail utilise des planifications de déploiement intermédiaires. Après la version mensuelle de Microsoft mise à jour, appliquez d’abord les mises à jour aux machines virtuelles de développement et de test. Après avoir validé ces mises à jour, promouvez la même classification des mises à jour en préproduction, puis la production dans des fenêtres de maintenance distinctes.

Créez des configurations de maintenance pour définir la périodicité, la fenêtre de maintenance, les classifications de mises à jour et le comportement de redémarrage. Créez ensuite votre association d’étendue dynamique pour cibler des machines virtuelles dans votre charge de travail pour effectuer votre planification de mise à jour corrective de routine.

Une planification alignée sur les correctifs mardi permet généralement quelques jours de validation avant le déploiement de production. Étant donné que Microsoft mises à jour de sécurité mensuelles sont généralement publiées le deuxième mardi de chaque mois, une approche suggérée peut être la suivante. Dans cet exemple, les machines virtuelles cibles sont gérées par le biais d’une règle d’étendue dynamique qui utilise des balises.

Environnement Calendrier Étiquette de ressource de machine virtuelle Mises à jour Reboot
Development Deuxième mardi
2200-0000
PatchGroup = Backend ou PatchGroup=Frontend Critique + sécurité Si nécessaire
Test Deuxième mercredi
2200-0000
PatchGroup = Backend ou PatchGroup=Frontend Critique + sécurité Si nécessaire
Back-end de production (phase 1) Deuxième samedi
2200-0100
PatchGroup=Backend Critique + sécurité Si nécessaire
Frontend de production (phase 2) Dimanche suivant
2200-0100
PatchGroup=Frontend Critique + sécurité Si nécessaire

Gérer la concurrence des mises à jour

Une configuration de maintenance démarre les mises à jour sur toutes les machines virtuelles associées en même temps. Azure sérialise les redémarrages par domaine de mise à jour uniquement pour les machines virtuelles dans un groupe à haute disponibilité commun. Les ondes back-end et frontend de cet exemple séparent la planification par niveau, et non par capacité redondante, de sorte que chaque instance d’un niveau peut redémarrer ensemble et supprimer ce niveau en dessous de sa capacité requise.

Dans chaque niveau de production, fractionnez les correctifs en vagues de conservation de capacité qui s’alignent sur vos zones de disponibilité, mettez à jour les domaines ou les groupes d’instances définis par la charge de travail. Utilisez une valeur d’étiquette et une configuration de maintenance distinctes par vague.

Tenez compte de la cohérence lors du déploiement

Update Manager effectue une nouvelle évaluation à chaque exécution. Les planifications basées sur la classification peuvent donc sélectionner des packages de mise à jour associés à un autre article de la Base de connaissances (KO) dans les vagues ultérieures. Si chaque vague doit installer le jeu de mises à jour validé exactement, configurez les inclusions explicites de la base de connaissances au lieu de s’appuyer uniquement sur des classifications.

Vous pouvez automatiser cette configuration à l’aide de l’API REST Update Manager pour interroger les résultats de l’évaluation à partir de la première vague, puis mettre à jour la configuration de maintenance pour les vagues suivantes.

Le compromis que vous apportez pour obtenir une cohérence complète des ondes est une complexité d’orchestration significative. Si votre charge de travail peut tolérer le risque d’une vague ultérieure d’installation d’un package de mise à jour différent de la première vague, utilisez la planification basée sur la classification.

Réduire les redémarrages avec hotpatching

Les redémarrages sont souvent la partie la plus perturbatrice d’une planification de mise à jour corrective. Ils déterminent les tailles de fenêtre de maintenance et le comportement de redémarrage dans le tableau précédent. Sur les images prises en charge, hotpatching installe Windows mises à jour de sécurité en mettant à jour le code en mémoire des processus en cours d’exécution, de sorte que les mises à jour pour la plupart des mois s’appliquent sans redémarrage. Hotpatch est une extension de Windows Update. Update Manager installe les correctifs chauds à l’aide des mêmes configurations de maintenance et de l’étendue dynamique que vous utilisez pour vos autres machines virtuelles.

Si votre charge de travail est sensible aux redémarrages, adoptez une référence SKU et une conception de système d’exploitation qui prend en charge le hotpatching :

  • Hotpatch est disponible uniquement sur des images Windows spécifiques. Vous ne pouvez pas activer hotpatch sur une image personnalisée arbitraire.
  • Seules les mises à jour de sécurité de Windows font l’objet d’un correctif à chaud. Les mises à jour hors sécurité, les mises à jour .NET, ainsi que les mises à jour de pilotes ou de microprogramme nécessitent toujours un redémarrage au cours du mois de leur publication. Les références trimestrielles de correctifs à chaud, ainsi que toute référence non planifiée que Microsoft publie pour corriger une vulnérabilité zero-day, nécessitent également un redémarrage. Conservez une fenêtre de maintenance qui peut absorber un redémarrage.

Gérer les préoccupations « avant » et « après »

Update Manager évalue et installe les mises à jour du système d’exploitation, mais un processus de mise à jour corrective réussi peut inclure des activités avant et après la fenêtre de maintenance pour gérer correctement les redémarrages requis ou les problèmes spécifiques à l’application. Update Manager fournit des pré-événements et des post-événements que vous pouvez utiliser dans l’automatisation de votre charge de travail. Vous ajoutez un gestionnaire d'événements, comme une fonction Azure, à l'architecture de votre charge de travail. Le gestionnaire d’événements répond à Azure Event Grid notifications avant et après l’exécution planifiée des correctifs.

Utilisez les activités de pré-mise à jour corrective pour effectuer des tâches comme celles-ci :

  • Démarrez une machine virtuelle arrêtée ou libérée. Les machines virtuelles arrêtées ou libérées ne peuvent pas être corrigées et ignorées.
  • Vérifiez que les points de récupération de sauvegarde sont disponibles.
  • Valider l’intégrité de la machine virtuelle et de l’application.
  • Supprimez temporairement les alertes de surveillance pour empêcher les faux positifs pendant la fenêtre de maintenance.

Une fois les mises à jour installées, utilisez des activités de post-mise à jour corrective pour effectuer des tâches comme suit :

  • Rétablir la supervision.
  • Effectuez des vérifications d’intégrité des applications et des services.
  • Publiez un avis sur un canal Microsoft Teams.

Traitez Event Grid et le calcul de votre gestionnaire d’événements en tant que ressources de charge de travail. Déployez-les avec IaC et isolez-les entre les environnements.

Préparer les mises à jour à la demande

Update Manager prend en charge l’installation de correctifs à la demande en dehors de toute fenêtre de maintenance planifiée. Cette fonctionnalité est utile pour appliquer des correctifs d’urgence ou des correctifs critiques hors cycle, ou pour valider le comportement des correctifs sur une seule machine virtuelle avant un déploiement planifié plus large. Vous pouvez déclencher des mises à jour à la demande directement à partir du portail Azure ou de l’API REST Update Manager sur une ou plusieurs machines virtuelles simultanément. L’équipe de charge de travail doit établir des instructions pour savoir quand effectuer une mise à jour hors bande et comment ce processus est orchestré dans votre charge de travail.

Annuler les mises à jour

Update Manager ne fournit pas de restauration corrective du système d’exploitation. Après avoir appliqué des correctifs, il n’existe aucun mécanisme intégré pour les désinstaller directement via Update Manager.

Si votre charge de travail doit prendre en charge un état « bon connu en dernier », créez un instantané ou un point de récupération avant l’exécution d’une maintenance. Automatisez la création d’instantanés avant chaque fenêtre de mise à jour corrective pour vous assurer qu’un point de récupération existe toujours avant l’application des correctifs. Vous pouvez également redéployer la machine virtuelle sans le correctif, exclure le correctif KB problématique du déploiement et réappliquer les mises à jour.

Important

Planifiez votre stratégie de récupération avant d’activer la mise à jour corrective planifiée en production.

Rapports de conformité

Update Manager envoie (push) les résultats de l’évaluation et des correctifs d’installation vers Azure Resource Graph, qui stocke les mises à jour en attente pendant 7 jours et les résultats d’installation pendant 30 jours. Update Manager inclut des vues intégrées de création de rapports de conformité et de gestion qui fournissent une visibilité sur l’état de mise à jour dans votre environnement. Ces tableaux de bord permettent aux administrateurs de surveiller la conformité des correctifs, d’identifier les machines qui nécessitent une attention et de suivre la progression du déploiement des mises à jour à partir d’un emplacement central.

Les classeurs prédéfinis affichent des informations clés sur votre charge de travail :

  • Résumé global de l’état et de la configuration de l’ordinateur
  • Répartition des mises à jour en attente par gravité et classification
  • Résumé des planifications, des configurations de maintenance et des machines attachées à chaque planification
  • Vue historique des exécutions d’installation passées, y compris les taux de réussite et les échecs

De nombreuses organisations exigent que leurs équipes d’application fournissent des rapports de conformité. Dans l’idéal, votre organisation utilise déjà Update Manager pour ce suivi, car l’expérience du portail Update Manager et les classeurs peuvent fonctionner entre les limites d’abonnement et vous n’avez pas besoin de fournir de rapports d’état de correctif personnalisés dans votre charge de travail.

Si vous ou votre organisation avez besoin de rapports personnalisés au-delà des vues prédéfinies, vous pouvez personnaliser des classeurs. Incluez des classeurs personnalisés dans les fichiers IaC de votre charge de travail pour appliquer un processus de contrôle des modifications et fournir une option de récupération d’urgence. Une alternative consiste à fournir les données de rapport de conformité requises par le biais de requêtes Resource Graph.

Si votre charge de travail doit conserver l’historique des correctifs pendant plus longtemps que Resource Graph le conserve, générez un processus d’exportation des données vers un magasin que vous contrôlez.

Autre approche

Si vous décidez de ne pas adopter l’approche planifiée de Update Manager pour votre charge de travail, évaluez la mise à jour corrective automatique des invités de machine virtuelle avant de concevoir une solution personnalisée. Si vous utilisez cette option, Azure orchestre la mise à jour corrective pour vous. Toutefois, vous abandonnez les avantages suivants si vous utilisez cette approche :

  • Déploiement progressif. Les mises à jour ne sont pas promues via des vagues de développement, de test et de production. Vous perdez donc les portes de validation.
  • Gestion de la fenêtre de maintenance. Azure détermine quand la mise à jour corrective s'exécute pendant les heures creuses dans le fuseau horaire de chaque machine virtuelle.
  • Mettre à jour le contrôle de classification. Seules les mises à jour critiques et de sécurité sont appliquées. Les autres mises à jour ne sont pas installées automatiquement.

Contributors

Microsoft conserve cet article. Les contributeurs suivants ont écrit cet article.

Auteur principal :

Pour afficher les profils LinkedIn non publics, connectez-vous à LinkedIn.

Étapes suivantes