Windows Server 2012 / 2012 R2 - Comment mettre à jour un cluster de basculement

Page 1 / 3

Comme vous le savez surement, tous les serveurs (noeuds) d'un cluster doivent utiliser la même version de Windows Server et avoir exactement le même service pack et les mêmes mises à jour Windows.
Ce qui veut dire que pour mettre à jour un serveur, vous devriez l'exclure du cluster avant de remettre vos serveurs dans le même cluster.

Pour pallier à ce problème, Microsoft fournit une console nommée "Mise à jour adaptée aux clusters" qui permet de :

  • télécharger et d'installer automatiquement toutes les mises à jour importantes (et recommandées si vous le souhaitez) maintenant
  • planifier le téléchargement et l'installation des mises à jour importantes et recommandées (si vous le souhaitez) tous les jours, toutes les semaines, ... à l'heure souhaitée

En plus de ça, Windows Server gérera automatiquement la suspension du noeud (serveur) pendant l'installation des mises à jour sur celui-ci et le remettra en service lorsque toutes les mises à jour auront été installées.
Ensuite, il passera au noeud suivant, etc, jusqu'à ce que tous les noeuds aient été mis à jour.

Vous aurez également la possibilité d'exécuter des scripts au début du processus et/ou à la fin du processus si vous le souhaitez, ainsi que de générer des rapports pour connaitre les mises à jour qui auront été installées.

  1. Analyser la configuration des noeuds pour la maj automatique
  2. Créer un profil d'exécution des mises à jour
  3. Planification de l'installation des mises à jour
  4. Appliquer les mises à jour à ce cluster
  5. Téléchargement et installation des mises à jour
  6. Mise à jour des autres noeuds
  7. Générer un rapport d'Exécution de mise à jour

1. Analyser la configuration des noeuds pour la maj automatique

Pour pouvoir mettre à jour automatiquement les noeuds de votre cluster, il faut d'abord analyser la configuration de ceux-ci pour pouvoir régler les petits détails qui seront peut-être nécessaires dans votre cas.

Bref, ouvrez la console "Mise à jour adaptée aux clusters" et sélectionnez votre cluster dans la liste.
Ensuite, cliquez sur Connecter.

Comme vous pouvez le voir, la mise à jour adaptée aux clusters n'a jamais été exécutée sur les noeuds de notre cluster.

Dans l'onglet "Consignation dans un journal des mises à jour en cours", vous verrez l'historique des mises à jour détectées, téléchargées et installées.

Cliquez sur : Analyser la disponibilité de la mise à jour du cluster.

Patientez pendant l'analyse des différents noeuds du cluster.

Ensuite, vous verrez une liste de pré-requis s'afficher.

Dans notre cas, tout est bon sauf :

  • la configuration du pare-feu
  • le proxy local qui n'est pas configuré (mais qui est facultatif, si vos serveurs sont déjà en mesure de se connecter à Internet)
  • le rôle en cluster Mise à jour adaptée aux clusters qui n'est pas installé

Pour la configuration du pare-feu, allez dans le panneau de configuration -> Système et sécurité -> Pare-feu Windows, puis cliquez sur "Autoriser une application ou une fonctionnalité via le Pare-feu Windows".

Autorisez l'arrêt à distance pour le Domaine.

Pour le rôle en cluster Mise à jour adaptée aux clusters qui n'est pas installé, on vous indique que vous pourrez l'installer en utilisant l'action "Configurer les options de mise à jour automatique du cluster" dans la console principale (Mise à jour adaptée aux clusters).

2. Créer un profil d'exécution des mises à jour

Pour pouvoir lancer l'installation des mises à jour sur vos clusters depuis la console "Mise à jour adaptée aux clusters" ou de manière planifiée, vous devrez d'abord créer un profil d'exécution des mises à jour.
Pour cela, cliquez sur : Créer ou modifier un profil d'Exécution des mises à jour.

L'éditeur de profils d'exécution de mise à jour s'affiche.

Grâce à cet éditeur, vous pourrez créer un fichier xml avec les options suivantes :

  • StopAfter : temps maximum (en minutes) pendant lequel le processus de mise à jour (PreUpdateScript et PostUpdateScript inclus) peut s'effectuer
  • WarnAfter : permet d'afficher un avertissement si le processus de mises à jour (PreUpdateScript et PostUpdateScript inclus) dépasse le temps indiqué (en minutes)
  • MaxRetriesPerNode : défini le nombre fois que le processus de mise à jour (ainsi que les scripts) pourra être relancé par noeud
  • MaxFailedNodes : nombre maximum de noeuds sur lesquels le processus de mise à jour peut échouer (soit parce que le serveur tombe en panne, soit parce que le service de clustering s'est arrêté)
  • RequireAllNodesOnline : permet d'effectuer les mises à jour uniquement si tous les serveurs sont en ligne
  • RebootTimeoutMinutes : temps maximum que le plug-in de mises à jour autorisera pour le redémarrage du serveur (par défaut : 15 minutes)
  • PreUpdateScript : chemin vers un script à exécuter avant le processus de mise à jour
  • PostUpdateScript : idem mais après le processus de mise à jour
  • ConfigurationName : permet de configurer une session PowerShell dans laquelle vos scripts seront exécutés (non applicable si vous n'utilisez pas de script)
  • CauPluginName : permet de spécifier le plug-in à utiliser pour l'exécution des mises à jour adaptées aux clusters (par défaut : Microsoft.WindowsUpdatePlugin)
  • CauPluginArguments : permet de spécifier des arguments au plug-in sélectionné juste au-dessus. Néanmoins, il n'y a pas d'argument nécessaire pour celui sélectionné par défaut.

Pour plus d'informations concernant ces options, référez-vous à la page "Mise à jour adaptée aux clusters options avancées et profils d’exécution de mise à jour" du site de Microsoft.

Dans notre cas, nous avons défini :

  • un avertissement si le processus de mise à jour dépasse 2 heures (120 minutes) grâce à l'option WarnAfter
  • un maximum d'essai par noeud de 2 grâce à l'option MaxRetriesPerNode
  • l'option RequireAllNodesOnline pour que le processus de mise à jour s'effectue uniquement si tous les noeuds sont en ligne et donc éviter qu'un noeud ne se retrouve dans un autre état de mise à jour par rapport au reste du cluster

Sauvegardez le fichier de configuration sous un autre nom.
Par exemple : ClusterUpdatesParameters.