Cette question concerne toute une série de problèmes similaires, mais je vais le demander comme exemple concret.Comment détecter de façon fiable la consommation de ressources anormales?
J'ai un serveur avec un système de fichiers dont le contenu fluctue. Je dois surveiller l'espace disponible sur ce système de fichiers pour m'assurer qu'il ne se remplit pas. Par souci d'argument, supposons que s'il se remplit, le serveur tombe en panne.
Peu importe ce que c'est - il pourrait, par exemple, être une file d'attente de "travail".
Pendant le fonctionnement « normal », l'espace disponible varie dans les limites « normales », mais il peut y avoir des pathologies:
- Quelques autres (éventuellement externe) composant qui ajoute le travail peut être à court de contrôle
- Certains composants qui élimine le travail s'empare, mais reste non détecté
les caractéristiques statistiques du processus sont essentiellement inconnus. Ce que je cherche est un algorithme qui prend, en entrée, des mesures périodiques chronométrées de l'espace disponible (les suggestions alternatives pour l'entrée sont les bienvenues), et produit en sortie, une alarme quand les choses sont "anormales" et le système de fichiers est "susceptible de se remplir". Il est évidemment important d'éviter les faux négatifs, mais presque aussi important d'éviter les faux positifs, pour éviter d'engourdir le cerveau de l'administrateur qui reçoit l'alarme. J'apprécie qu'il existe des solutions alternatives comme jeter plus d'espace de stockage au problème sous-jacent, mais j'ai réellement connu des cas où 1000 fois ne suffisait pas.
Les algorithmes qui prennent en compte les mesures historiques stockées sont bien, bien que les algorithmes à la volée qui minimisent la quantité de données historiques soient préférés. J'ai accepté la réponse de Frank et je retourne maintenant à la planche à dessin pour étudier ses références en profondeur.
Il y a trois cas, je pense, d'intérêt, non pas:
- Le scénario « Vente de Harrods vient de commencer »: un pic d'activité qui à une seconde résolution est « hors composer ", mais ne représente pas un réel danger d'épuisement des ressources;
- Le scénario «Réchauffement climatique»: nécessité de prévoir une croissance (relativement) stable; et
- Le scénario "Google est en train de m'envoyer une copie non sollicitée de The Index": cela épuisera toutes mes ressources dans un délai relativement court, sauf si je fais quelque chose pour l'arrêter.
Il est le dernier qui est (je pense) le plus intéressant et difficile, du point de vue d'un sysadmin ..
+1 Frank, merci pour votre réaction réfléchie. J'ai exploré la théorie de la file d'attente; et le lissage statistique, le filtrage de Kalman et ainsi de suite. Mais la grande question qui reste est de savoir comment distinguer entre une poussée soudaine d'activité et une catastrophe imminente. –
BTW, super lien vers l'article sur le blog de Tamino –
Je pense que le problème est analogue aux problèmes que traite Tamino. Une brusque poussée d'activité est comme «changements de temps» (bruit à court terme) et ce que vous voulez identifier est comme «changements dans le climat» (une tendance à long terme). Donc, il peut y avoir des techniques que vous pouvez reporter à partir du problème GW. – frankodwyer