[IIS/SharePoint] Comment effectuer un WarmUp automatique de vos applications

Inutile de présenter ce qu’est le warmup, chaque SharePointeur en aura fait les frais après avoir lancé un IISReset ou simplement en étant le premier à appeler une page SharePoint le matin. Il y a nombre de différentes techniques qui vont de bon vieux scripts VBS à des solutions plus complexes comme des addons IIS ou des scripts PowerShell.

Mais c’est en diagnostiquant une ferme SharePoint chez un client que j’ai découvert une solution qui m’a le plus plus : lancer le WarmUp en connectant une tâche planifiée aux événements Windows.

Pour ce faire, c’est très simple ! Pour commencer, on va créer une tâche qui, ici, lancera du PowerShell (car PowerShell is good!) :

image

Ensuite, il faut créer un Trigger. Habituellement, c’est ici qu’on spécifie une planification telle que “tous les jours, à 6h du matin”. Dans notre cas, on spécifie que le Trigger sera un événement.

image

Pour trouver lequel, lançons la commande “iisreset” et voyons ce qui est tracé :

image

Le journal System a tracé deux événements de la source “IIS-IISReset” avec des ID différents. Ils font référence à l’arrêt puis au redémarrage d’IIS. C’est la dernière entrée qui nous intéresse.

Nous pouvons donc créer notre Trigger avec les paramètres suivants pour initier un warmup juste après le redémarrage d’IIS :

image

Quid des recyclage manuels ou automatiques ?

Si nous souhaitons lancer un WarmUp dès qu’un Application Pool est recyclée, nous devons modifier les propriétés IIS de l’Application Pool.

image

On a à notre disposition plusieurs évenements pour contrôler finement quels types de recyclages seront interceptés. Dans notre cas, activons “Manual Recycle”.

Ainsi, dès qu’on va demander le recyclage d’un App Pool, on aura l’évenement suivant que nous pourons rajouter comme trigger à notre tâche planifiée :

image

Et avec ça, vous prendrez peut-être un code de retour ?

Toutes les tâches planifiées Windows gêrent un code de retour (Last Run Result). Comme les scripts peuvent parfois devenir complexes, on pourra aller encore plus loin et retourner un code pour tracer si tout s’est bien passé :

[Environment]::Exit(0)

ou bien pour remonter une erreur de traitement avec un retour –1, par exemple :

image

 

Bon réveil à vos fermes !

SPierrick

Publié lundi 30 juillet 2012 14:24 par Pierrick CATRO-BROUILLET
Classé sous , ,
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires


Les 10 derniers blogs postés

- Merci par Blog de Jérémy Jeanson le 10-01-2019, 20:47

- Office 365: Script PowerShell pour auditer l’usage des Office Groups de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 11:02

- Office 365: Script PowerShell pour auditer l’usage de Microsoft Teams de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 10:39

- Office 365: Script PowerShell pour auditer l’usage de OneDrive for Business de votre tenant par Blog Technique de Romelard Fabrice le 04-25-2019, 15:13

- Office 365: Script PowerShell pour auditer l’usage de SharePoint Online de votre tenant par Blog Technique de Romelard Fabrice le 02-27-2019, 13:39

- Office 365: Script PowerShell pour auditer l’usage d’Exchange Online de votre tenant par Blog Technique de Romelard Fabrice le 02-25-2019, 15:07

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Stream Portal par Blog Technique de Romelard Fabrice le 02-21-2019, 17:56

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Video Portal par Blog Technique de Romelard Fabrice le 02-18-2019, 18:56

- Office 365: Script PowerShell pour extraire les Audit Log basés sur des filtres fournis par Blog Technique de Romelard Fabrice le 01-28-2019, 16:13

- SharePoint Online: Script PowerShell pour désactiver l’Option IRM des sites SPO non autorisés par Blog Technique de Romelard Fabrice le 12-14-2018, 13:01