Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Konfigurieren von Contrail Insights-Alarmen mit Contrail Command

Mit Contrail Insights Alarms können Sie einen Alarm konfigurieren, der generiert wird, wenn eine Bedingung in der Infrastruktur erfüllt ist. Contrail Insights führt eine verteilte Analyse der Metriken am Ort der Erfassung durch, um eine effiziente und reaktionsschnelle Erkennung von Ereignissen zu ermöglichen, die mit einem Alarm übereinstimmen. Es gibt zwei Arten von Alarmen für Contrail Insights:

Static

Zum Vergleich wird der vom Benutzer angegebene statische Schwellenwert verwendet.

Dynamic

Zum Vergleich wird der dynamisch gelernte adaptive Schwellenwert verwendet.

Hinweis:

Für Contrail Insights-Versionen vor 3.2.6: Um Alarme zu konfigurieren, muss Ihr Contrail Insights-Lizenzabonnement aktiv sein.

Contrail Insights Alarme – Übersicht

Sowohl für statische als auch für dynamische Alarme erfasst Contrail Insights Agent kontinuierlich Messungen von Metriken (siehe Von Contrail Insights erfasste Metriken) für verschiedene Entitäten, wie Hosts, Instanzen und Netzwerkgeräte. Neben der einfachen Erfassung analysiert der Agent auch den Strom der Metriken zum Zeitpunkt der Erfassung, um übereinstimmende Alarmregeln zu identifizieren. Für einen bestimmten Alarm aggregiert der Agent die Proben nach einer benutzerdefinierten Funktion (Durchschnitt, Standardabweichung, Min, Max, Summe) und erzeugt eine einzige Messung für jedes benutzerdefinierte Messintervall. Für ein bestimmtes Messintervall vergleicht der Agent jede Messung mit einem Schwellenwert. Bei einem Alarm mit statischer Schwelle wird eine Messung über eine benutzerdefinierte Vergleichsfunktion (oben, unten, gleich) mit einem festen Wert verglichen. Bei dynamischen Schwellenwerten wird eine Messung mit einem Wert verglichen, den Contrail Insights im Laufe der Zeit gelernt hat.

Sie können Alarmparameter weiter konfigurieren, für die mehrere Intervalle erforderlich sind. Auf diese Weise können Sie Alarme so konfigurieren, dass sie anhaltenden Bedingungen entsprechen, und gleichzeitig die Leistung über kleine Zeiträume hinweg messen. Maximalwerte über einen weiten Zeitraum können übertriebene Bedingungen sein. Durchschnittswerte können die Informationen jedoch verwässern. Ein Gleichgewicht wird besser erreicht, indem man über kleine Intervalle misst und auf wiederholte Übereinstimmungen in mehreren Intervallen achtet. Um beispielsweise die CPU-Auslastung über einen Zeitraum von drei Minuten zu überwachen, kann ein Alarm so konfiguriert werden, dass er die durchschnittliche CPU-Auslastung in Intervallen von fünf Sekunden vergleicht, aber nur dann einen Alarm auslöst, wenn 36 (oder eine Teilmenge von 36) Intervallen mit der Alarmbedingung übereinstimmen. Dies bietet eine bessere Visibilität über anhaltende Leistungsbedingungen als ein einfacher Durchschnitt oder ein Maximum über drei Minuten.

Dynamische Schwellenwerte ermöglichen die Erkennung von Ausreißern beim Ressourcenverbrauch auf der Grundlage historischer Trends. Der Ressourcenverbrauch kann zu verschiedenen Tageszeiten und Wochentagen erheblich variieren. Dies macht es schwierig, einen statischen Schwellenwert für eine Metrik festzulegen. Beispielsweise kann eine CPU-Auslastung von 70 % für Montagmorgen zwischen 10:00 und 12:00 Uhr als normal angesehen werden, aber die gleiche CPU-Auslastung kann für Samstagnächte zwischen 21:00 und 22:00 Uhr als ungewöhnlich hoch angesehen werden.

Mit dynamischen Schwellenwerten erfährt Contrail Insights Trends in Metriken für alle Ressourcen im Bereich, auf die ein Alarm zutrifft. Wenn beispielsweise ein Alarm für ein Host-Aggregat konfiguriert ist, lernt Contrail Insights eine Baseline aus den Metrikwerten, die für Hosts in diesem Aggregat erfasst wurden. Ebenso lernt ein Alarm mit einem dynamischen Schwellenwert, der für ein Projekt konfiguriert ist, eine Baseline aus Metrikwerten, die für Instanzen in diesem Projekt gesammelt wurden. Dann erzeugt der Agent einen Alarm, wenn eine Messung von dem für einen bestimmten Zeitraum erlernten Basiswert abweicht.

Wenn Sie einen Alarm mit einem dynamischen Schwellenwert erstellen, wählen Sie eine Metrik, einen Zeitraum, über den eine Baseline eingerichtet werden soll, und die Empfindlichkeit gegenüber Messungen, die von der Baseline abweichen. Die Empfindlichkeit kann als hoch, mittel oder niedrig konfiguriert werden. Eine höhere Empfindlichkeit meldet geringere Abweichungen vom Ausgangswert und umgekehrt.

Betrieb von Contrail Insights Alarmen

Contrail Insights Agent führt eine verteilte statistische Echtzeitanalyse für einen Zeitreihendatenstrom durch. Der Agent analysiert Metriken über mehrere Messintervalle hinweg mithilfe eines konfigurierbaren Schiebefenstermechanismus. Ein Alarm wird generiert, wenn der Contrail Insights Agent feststellt, dass die Metrikdaten über eine konfigurierbare Anzahl von Messintervallen mit den Alarmkriterien übereinstimmen. Die Art der Probenaggregation und der Schwellenwert für einen Alarm sind konfigurierbar. Es werden zwei Arten von Alarmen unterstützt: statisch und dynamisch. Der Unterschied besteht darin, wie der Schwellenwert bestimmt und zum Vergleich der gemessenen metrischen Daten verwendet wird. In den folgenden Abschnitten wird die gesamte Analyse des gleitenden Fensters beschrieben und die Details der statischen Schwellenwerte und dynamischen Basislinien erläutert, die von der Analyse verwendet werden.

Analyse von gleitenden Fenstern

Contrail Insights Agent wertet Alarme mithilfe einer Schiebefensteranalyse aus. Die Sliding Window-Analyse vergleicht einen Strom von Metriken innerhalb eines konfigurierbaren Messintervalls mit einem statischen Schwellenwert oder einer dynamischen Baseline. Die Länge jedes Messintervalls ist auf eine Sekunde genau konfigurierbar. In jedem Messintervall werden rohe Zeitreihendatenstichproben mithilfe einer Aggregationsfunktion kombiniert, z. B. Durchschnitt, Maximum und Min. Der aggregierte Wert wird mit dem statischen Schwellenwert oder der dynamischen Baseline mithilfe einer konfigurierbaren Vergleichsfunktion verglichen, z. B. oben oder unten. Mehrere Messintervalle bilden ein gleitendes Fenster. Eine konfigurierbare Anzahl von Intervallen im gleitenden Fenster muss den Regelkriterien entsprechen, damit der Agent eine Benachrichtigung für den Alarm generieren kann.

Abbildung 1: Mechanik Time series analysis visualization with a sliding window approach. Horizontal axis shows data samples S1 to S21. A blue-outlined box groups data into six intervals i1 to i6. Red dashed boxes indicate interval duration. Red ovals highlight intervals with exceptions at data points S5, S6, S13, S14, and S15. der Alarmgenerierung

Abbildung 1 zeigt ein Beispiel, in dem das gleitende Fenster aus sechs benachbarten Messintervallen (i1 bis i6) besteht, wie durch den Parameter Intervallanzahl angegeben. Im Messintervall i1 wird der Mittelwert der Proben S1, S2, S3 alsS avg berechnet. Je nach Alarmtyp statisch oder dynamisch wird derS-Durchschnitt dann mit dem konfigurierten statischen Schwellenwert oder der dynamisch erlernten Baseline verglichen, wobei eine benutzerdefinierte Vergleichsfunktion wie oben oder unten verwendet wird. Die Ausgabe des Vergleichs bestimmt, ob ein bestimmtes Messintervall als Intervall mit Ausnahme gekennzeichnet ist. Diese Auswertung wird für jedes Messintervall innerhalb des gleitenden Fensters wiederholt (z. B. i1 bis i6).

Im Beispiel in Abbildung 1 bestimmt der Agent, dass zwei Intervalle, i2 und i5, Intervalle mit Ausnahme sind, indem er den aggregierten Wert für das Messintervall je nach Alarmtyp mit einem statischen Schwellenwert oder einer dynamischen Baseline vergleicht. Unter der Annahme, dass Intervall i1 das erste Intervall ist, für das der Alarm konfiguriert ist, wird der Alarm am Ende von Intervall i6 aktiv, wenn Contrail Insights Agent feststellt, dass mindestens zwei der letzten sechs Messintervalle als Ausnahmen markiert sind. Wenn ein Alarm über das Dashboard konfiguriert wird, sind die Anzahl der Intervalle und die Intervalle mit Ausnahme standardmäßig auf 1 festgelegt. Dadurch kann der Agent nach der Verarbeitung von Daten für ein Messintervall einen Alarm generieren.

Statischer Alarm

Zum Zeitpunkt der Alarmdefinition wird ein statischer Alarmschwellenwert angegeben. Abbildung 2 zeigt ein Beispiel für eine statische Alarmdefinition, gefolgt von dem entsprechenden JSON-Code, der für die API-Konfiguration eines Alarms verwendet wird. Die im Beispiel definierte Bedingung besteht darin, einen Durchschnitt der host.cpu.usage Stichproben über ein Messintervall von 60 Sekunden auszuwerten. Der Messwert wird mit einem statischen Schwellenwert von 80 % verglichen, um festzustellen, ob ein bestimmtes Messintervall mit der Alarmregel übereinstimmt. Abbildung 2 identifiziert die Komponenten in einer statischen Alarmdefinition.

Abbildung 2: Definition Labeled diagram of a monitoring alert rule for CPU usage. Explains conditions for generating a host alert: average CPU usage above 80 percent in 60-second intervals, met in 2 of last 6 intervals. Key components: EventRuleScope Host, EventRuleType Alert, MetricType host.cpu.usage, AggregationFunction Average, IntervalDuration 60 seconds, ComparisonFunction Above, Threshold 80 percent, IntervalsWithException 2, IntervalCount 6, Mode operational. statischer Alarme

Dynamischer Alarm

Ein dynamischer Alarmschwellenwert wird von Contrail Insights anhand von historischen Daten für die Gruppe von Entitäten, für die ein Alarm konfiguriert ist, erlernt. Abbildung 3 zeigt ein Beispiel für eine dynamische Alarmdefinition und identifiziert die Komponenten in einer dynamischen Alarmdefinition.

Abbildung 3: Definition Diagram of rule for generating alerts on CPU usage: Host alert triggers when average host CPU usage over 60 seconds is above dynamic threshold set by k-means algorithm with medium sensitivity. Condition must occur in 2 of last 6 intervals. dynamischer Alarme

Wenn Sie einen dynamischen Schwellenwert verwenden, konfigurieren Sie keinen statischen Schwellenwert. Stattdessen geben Sie drei Parameter an, die steuern, wie das Lernen durchgeführt wird. Der Lernalgorithmus erzeugt eine Baseline für die Entitäten. Die Basislinie setzt sich aus einem Mittelwert und einer Standardabweichung zusammen. Die Baseline wird kontinuierlich aktualisiert, wenn zusätzliche Metrikdaten erfasst werden.

Im Folgenden finden Sie eine Liste der drei Lernparameter und Informationen zu ihrer Funktionsweise:

BaselineAnalysisAlgorithm

Wählt den Machine Learning-Algorithmus aus, der zum Bestimmen des dynamischen Schwellenwerts verwendet wird. Folgende Algorithmen stehen zur Verfügung:

k-means

Contrail Insights verwendet einen k-Means-Algorithmus, um einen erwarteten Betriebsbereich für eine Reihe von Entitäten mit einer Granularität von jeder Stunde eines jeden Tages (bis zu einer Woche) zu erzeugen. Die erlernten Baselines werden anhand von Daten aus einer konfigurierbaren Lerndauer berechnet. Die Baselines werden im Laufe der Zeit kontinuierlich auf der Grundlage der neuesten Daten aktualisiert. Der k-means-Basisanalysealgorithmus ist nützlich, um eine Leistung zu beobachten, die für eine bestimmte Tageszeit unerwartet ist.

Beispielsweise kann ein k-Means-Algorithmus eine dynamische Baseline für 13:00 bis 14:00 Uhr lernen, die 80 % +/- 10 % betragen kann, während die Baseline zwischen 3:00 Uhr und 4:00 Uhr 20 % +/- 5 % betragen kann. Ein Alarm wird ausgelöst, wenn die gemessene Metrik 75 % des Wertes zwischen 3:00 Uhr und 4:00 Uhr beträgt, dieselbe Messung jedoch im Zeitraum von 13:00 Uhr bis 14:00 Uhr akzeptabel ist.

ewma

Der EWMA-Algorithmus (Exponentially Weighted Moving Average) erzeugt eine einzelne Baseline, die stündlich aktualisiert wird. Mit der konfigurierbaren Dauer der Lernphase können Sie das relative Gewicht steuern, das aktuellen Daten im Vergleich zu älteren Daten zugewiesen wird. Dieser Algorithmus ist nützlich, um einen Alarm zu erstellen, der plötzliche Änderungen in einer Metrik erkennen kann.

Beispielsweise kann ein EWMA-Algorithmus eine dynamische Baseline von 60 % +/- 10 % aus den Daten der letzten 24 Stunden lernen. Diese Baseline wird für das nächste 1-Stunden-Intervall verwendet, um zu bestimmen, ob Echtzeitdaten vom normalen Betriebsbereich abweichen. Nach jedem 1-Stunden-Intervall wird die EWMA-Baseline aktualisiert und eine neue aktualisierte Baseline wird für die zukünftige Alarmgenerierung verwendet.

LearningPeriodDuration

Anhand der historischen Daten wird eine dynamische Baseline ermittelt. Dieser Parameter bestimmt den Zeitraum, aus dem die neuesten historischen Daten zur Berechnung einer dynamischen Baseline verwendet werden. Zum Beispiel 1 Stunde, 1 Tag oder 1 Woche. Zum Zeitpunkt der Regelkonfiguration verfügt Contrail Insights möglicherweise noch nicht über genügend historische Daten für eine bestimmte Entität. In diesem Fall wird das Lernen durchgeführt, sobald Daten verfügbar sind. Die Alarmauswertung beginnt, nachdem eine Lernphase der Daten verfügbar ist und Baselines generiert werden.

Sensitivity

Die Empfindlichkeit eines dynamischen Alarms steuert die zulässige Größe der Abweichung vom gelernten Mittelwert. Der Sensitivitätsparameter steuert einen Multiplikator der gelernten Standardabweichung. Sie können niedrig, mittel oder hoch als Empfindlichkeit auswählen. Contrail Insights Agent vergleicht Echtzeitmessungen mit dem Bereich, der definiert ist durch:

mean - sensitivity * std_dev < x < mean + sensitivity * std_dev

Definition von Alarmen

Abbildung 2 zeigt ein Beispiel für eine statische Alarmdefinition. Jede Alarmdefinition enthält die folgenden Komponenten, die in Tabelle 1 aufgeführt sind.

Tabelle 1: Komponenten der Alarmdefinition

Artikel

Optionen

Beschreibung

Modul

Alarme, Service-Alarme

Wenn Alarme ausgewählt ist, können Sie Alarme für Entitäten wie Hosts, Instanzen und Netzwerkgeräte konfigurieren. Wenn Dienstalarme ausgewählt ist, können Sie Alarme für Dienste wie RabbitMQ-, MySQL-, ScaleIO- und OpenStack-Dienste konfigurieren.

Alarm-Regeltyp

Statisch, dynamisch

Dies bestimmt die Art des Schwellenwerts, den ein Alarm verwendet, um zu bestimmen, ob ein Alarm generiert werden soll oder nicht. Im Folgenden sind die beiden Typen aufgeführt, die unterstützt werden.

  • Statisch: Wenn ein Alarm als statisch definiert ist, sollte die Regeldefinition einen vordefinierten statischen Schwellenwert enthalten. Der statische Schwellenwert cpu.usage kann beispielsweise 80 % betragen.

  • Dynamisch: Wenn ein Alarm als dynamisch definiert ist, wird die Baseline anhand von historischen Daten ermittelt. Zusätzliche Parameter sind erforderlich, wie z. B. der Basisanalysealgorithmus, die Dauer der Lernzeit und die Empfindlichkeit.

Bezeichnung

Name des Alarms

Ein Name identifiziert den Alarm. Der Name wird im Dashboard angezeigt und ist die benutzerseitige Kennung für externe Benachrichtigungssysteme.

Geltungsbereich

Host, Instanz, Netzwerkgerät, virtuelles Netzwerk

Typ der Entität, z. B. Host, Instanz oder Netzwerkgerät, auf das der Alarm zutrifft. Wenn der Bereich beispielsweise als Instanz ausgewählt ist, können Sie die Regel für alle in der Infrastruktur vorhandenen Instanzen oder für Instanzen, die in einem bestimmten Projekt oder einem Aggregat vorhanden sind, konfigurieren.

Dienstleistung

RabbitMQ, MySQL, Ceph, OpenStack, Cassandra, Contrail, ScaleIO

Wenn diese Option aktiviert ist, können Sie Alarme für RabbitMQ-, MySQL-, Ceph-, OpenStack-, Cassandra-, Contrail- und ScaleIO-Services konfigurieren.

Umfang der Metrik

Cluster, Knoten, Warteschlange

Wählen Sie den Metrikbereich aus, den Sie überwachen möchten, z. B. Cluster, Knoten oder Warteschlange, und dann die zu überwachende Metrik.

Objekt

Die Optionen hängen von der Auswahl des Metrikbereichs ab.

Objekt, das überwacht wird.

Generieren

Ereignis, Alarm

Wenn die Bedingungen für den Alarm erfüllt sind, generieren Sie ein Ereignis oder einen Alarm.

Für Metrik

cpu.usage, memory.usage

Kennzahlen, die überwacht werden. Beispiel: host.cpu.usage oder instance.cpu.usage.

Wann

Wert

Intervall (Sekunden)

Wert in Sekunden

Die Dauer eines Messintervalls in Sekunden. Abhängig von der Stichprobenhäufigkeit einer beobachteten Metrik können innerhalb eines Intervalls eine oder mehrere Rohstichproben empfangen werden. Alle Rohstichproben, die innerhalb der Intervalldauer empfangen werden, werden mit Aggregationsfunktionen wie "average", "sum", "max", "min" und "std-dev" verarbeitet.

ist

Wert

Beispiel: Wenn der Wert über dem Schwellenwert -8 liegt. Kursivschrift im Beispiel stellt Variablen dar.

Schwellenwert

Schwellenwert

Ein numerischer Wert, mit dem Messungen verglichen werden. Contrail Insights unterstützt zwei Arten von Schwellenwerten: statisch oder dynamisch.

  • Statischer Schwellenwert: Ein fester Wert, der bei der Konfiguration eines Alarms angegeben wird. Beispiel: host.cpu.usage über 90 %, wobei 90 % der statische Schwellenwert ist.

  • Dynamischer Schwellenwert: Der Schwellenwert wird vom System dynamisch gelernt. Unüberwachtes Lernen wird verwendet, um mehr über historische Trends zu erfahren und den dynamischen Schwellenwert zu bestimmen. Wenn beispielsweise eine Ereignisregel für Hostaggregat definiert ist, wird die dynamische Baseline für das Aggregat bestimmt, indem der Baselineanalysealgorithmus auf Daten angewendet wird, die von allen Mitgliedshosts des Aggregats empfangen werden. Abbildung 6 zeigt die dynamische Baseline, die unter Verwendung des letzten 24-Stunden-Zeitrahmens historischer Daten und des k-Means-Clustering-Algorithmus ermittelt wurde. Diese Baseline wird für die nächsten 24 Stunden für die Alarmgenerierung unter Berücksichtigung der Tagesstunde und des entsprechenden Basislinienmittelwerts und der Standardabweichung verwendet. Beispielsweise wird am Dienstag von 8:00 bis 9:00 Uhr eine für Montag 8:00 bis 9:00 Uhr berechnete Baseline als Referenzschwellenwert für die Alarmgenerierung verwendet.

    Die erforderlichen Parameter für den dynamischen Schwellenwert sind:

    • Baseline-Analyse-Algorithmus

    • Dauer der Lernzeit

    • Empfindlichkeit

Tabelle 2 beschreibt die erforderlichen Parameter für einen dynamischen Alarm und die unterstützten Optionen.

Baseline-Analyse-Algorithmus

K-Means, EWMA

In Tabelle 2 werden diese Optionen beschrieben. In Abbildung 6 und Abbildung 7 finden Sie Beispiele für Basisanalysen

Dauer der Lernzeit

1 Woche, 1 Monat

In Tabelle 2 werden diese Optionen beschrieben.

Empfindlichkeit

Niedrig, mittel, hoch

In Tabelle 2 werden diese Optionen beschrieben.

Schweregrad

Keine, Information, Warnung, Fehler, kritisch

Zeigt den Schweregrad des Alarms an. Kritisch weist auf einen größeren Alarm hin. Die Informationen deuten auf einen geringfügigen Alarm hin.

Erweitert

Wenn diese Option ausgewählt ist, schließt sie Intervalle mit Ausnahme, Intervallanzahl und Status ein.

Aggregat/Projekt

Alle Hosts, alle Instanzen. AggregateId, ProjectId

Wählen Sie den Satz von Entitäten aus, die ein Alarm überwachen soll. Wenn der Bereich Instanz ist, können Sie einen Alarm für die Gruppe von Instanzen konfigurieren, die in einem bestimmten Projekt, Aggregat oder allen Instanzen in der Infrastruktur vorhanden sind. Wenn der Bereich Host ist, können Sie einen Alarm für eine Gruppe von Hosts konfigurieren, die in einem bestimmten Aggregat vorhanden sind, oder für alle Hosts in der Infrastruktur.

Alarm-Modus

Alarm, Ereignis

Der Modus kann als Warnung oder Ereignis konfiguriert werden.

Aggregationsfunktion

Durchschnitt, Max, Min, Summe, std-dev

Legt fest, wie in einem Messintervall empfangene Datenproben verarbeitet werden, um einen aggregierten Wert für den Vergleich zu generieren. Agent sammelt während eines Messintervalls mehrere Stichproben einer Metrik. Agent kombiniert die Proben gemäß der Aggregationsfunktion, um einen einzigen Wert für den Vergleich mit dem Schwellenwert (statisch oder dynamisch) in einem Messintervall zu bestimmen. Tabelle 5 listet und beschreibt die Aggregationsfunktionen für die Alarmverarbeitung.

Vergleichsfunktion

Oben, unten, gleich, bei einer Mindestrate steigend, bei einer minimalen Rate abnehmend von

Legt fest, wie die Ausgabe der Aggregationsfunktion mit dem statischen oder dynamischen Schwellenwert verglichen werden soll. Tabelle 6 zeigt verschiedene Vergleichsfunktionen, die für Contrail Insights-Alarme unterstützt werden. Abbildung 4 und Abbildung 5 zeigen Beispiele für die Vergleichsfunktion, die sowohl Zunahmen als auch Abnahmen bei einer minimalen Rate zeigen.

Statischer Schwellenwert

Wenn der Alarmregeltyp "statisch" ist

Schweregrad des Alarms

Keine, Information, Warnung, Fehler, kritisch

Zeigt den Schweregrad des Alarms an. Kritisch weist auf einen größeren Alarm hin. Die Informationen deuten auf einen geringfügigen Alarm hin.

Benachrichtigung

None, PagerDuty, Custom Service, Service Now, Slack

Benachrichtigungsmethoden, die Sie auf Betriebsbedingungen aufmerksam machen.

Intervalle mit Ausnahme

Beispiel: "2"

Dies ist die Mindestanzahl von Messintervallen innerhalb des Schiebefensters, für die eine Bedingung für einen Alarm erfüllt sein muss, um den Alarm auszulösen. In Abbildung 3 gibt es zwei Intervalle mit Ausnahme: i2 und i5. Bei der Konfiguration eines Alarms im Dashboard ist Intervalle mit Ausnahme standardmäßig auf 1 gesetzt. Das Intervall mit Ausnahme kann im Dashboard angegeben werden, indem Sie Überwachung > Alarme > Regel hinzufügen auswählen. Intervalle mit Ausnahme dürfen nicht größer als die Anzahl der Intervalle sein.

Anzahl der Intervalle

Beispiel: "3"

Maximale Anzahl benachbarter Messintervalle, für die eine statistische Analyse durchgeführt wird, bevor entschieden wird, ob ein Alarm ausgelöst wird oder nicht. In Abbildung 3 befinden sich 6 Messintervalle (i1 bis i6) im Schiebefenster. Jedes Messintervall hat eine Dauer, die durch den Parameter Intervalldauer angegeben wird. Bei der Konfiguration eines Alarms im Dashboard ist die Anzahl der Intervalle standardmäßig auf 1 festgelegt. Die Anzahl der Intervalle kann im Dashboard angegeben werden, indem Sie Überwachung > Alarme auswählen > Neue Regel hinzufügen auswählen.

Status

Aktivieren, deaktivieren

Wird verwendet, um den Status der Alarmregel festzulegen und zu überprüfen. Legen Sie den Status als aktiviert oder deaktiviert fest.

Erforderliche Parameter für dynamische Alarme

Tabelle 2 beschreibt die erforderlichen Parameter für einen dynamischen Alarm und die unterstützten Optionen.

Tabelle 2: Erforderliche Parameter für dynamischen Alarm

Erforderliche Parameter für den dynamischen Schwellenwert

Beschreibung

Unterstützte Optionen

Baseline-Analyse-Algorithmus

Der Baseline-Analysealgorithmus wird verwendet, um unüberwachtes Lernen mit historischen Daten durchzuführen. Die Baseline-Analyse wird kontinuierlich durchgeführt, sobald neue Daten eingehen.

  • K-Means-Clustering

  • Exponentieller gewichteter Mittelwert (EWMA)

Dauer der Lernzeit

Die Lernperiodendauer gibt die Menge der historischen Daten an, die vom Baseline-Analysealgorithmus zur Bestimmung einer Baseline verwendet werden. Die dynamische Baseline wird kontinuierlich anhand von Daten aus der letzten Lerndauer aktualisiert.

Wenn ein dynamischer Alarm konfiguriert ist, wird die Basisanalyse anhand von Daten aus der letzten Lerndauer durchgeführt, sofern verfügbar. Wenn nicht genügend Daten verfügbar sind, wertet Contrail Insights Agent Metriken aus, sobald genügend Daten vorhanden sind, um die ersten Baselines zu lernen.

Beispiel: Wenn die Lerndauer 1 Tag beträgt, vergleicht der Agent Metriken mit den Baselines pro Stunde für die letzten 24 Stunden.

Beispiel: Wenn die Lerndauer 1 Woche beträgt, vergleicht der Agent Metriken mit den Basisplänen pro Stunde für die letzten 7 x 24 Stunden.

  • 1 Woche: Der Ausgangswert wird für jede Stunde der Daten der letzten 1 Woche bestimmt. Die Baselines der nächsten 1 Woche werden auf der Grundlage der Daten der letzten Woche bestimmt.

  • 1 Monat: Der Ausgangswert wird auf der Grundlage der Daten der letzten 4 Wochen bestimmt. Baselines werden für jede Stunde an jedem Wochentag gelernt (7 x 24 Baselines). Die Baselines der nächsten 1 Woche werden auf der Grundlage der Daten der letzten 4 Wochen bestimmt. Beispielsweise wird eine Baseline am Montag von 14:00 bis 15:00 Uhr anhand von Metrikdaten der letzten 4 Montags um 14:00 bis 15:00 Uhr gelernt.

Empfindlichkeit

Die dynamische Baseline stellt einen normalen Betriebsbereich einer bestimmten Metrik für einen bestimmten Bereich dar. Wie in Abbildung 6 zu sehen ist, ist die dynamische Baseline ein Tupel, dessen Mittelwert und std-dev für eine bestimmte Tageszeit gelten.

Der Empfindlichkeitsfaktor bestimmt, welches zulässige Betriebsband zulässig ist. Messungen außerhalb des Vorgangsbereichs verursachen ein Intervall mit Ausnahme. Wenn der Basismittelwert beispielsweise 20 und std-dev 2 ist, liegt der normale Betriebsbereich zwischen 18 und 22. Wenn die Empfindlichkeit niedrig ist, wird der normale Betriebsbereich als 10 (Mittelwert - 5*std-dev) und 30 (Mittelwert + 5*std-dev) behandelt. Wenn in diesem Fall der gemessene Durchschnitt einer Metrik zwischen 10 und 30 liegt, wird kein Alarm ausgelöst. Wenn der Durchschnitt dagegen 5 oder 35 beträgt, wird ein Alarm ausgelöst.

  • Niedrig: Jeder Datenpunkt, der über dem Basislinienmittelwert liegt 5 * std-dev , ist ein Ausreißer.

  • Mittel: Jeder Datenpunkt, der über dem Basislinienmittelwert liegt 3 * std-dev , ist ein Ausreißer.

  • Hoch: Jeder Datenpunkt, der über dem Basismittelwert liegt 2 * std-dev , ist ein Ausreißer.

Zustände für den Alarmmodus

Tabelle 3 zeigt alle möglichen Zustände für einen Alarm, wobei der Modus als Alarm konfiguriert ist.

Tabelle 3: Zustände für den Alarmmodus, der als Alarm definiert ist

Bundesstaat

Beschreibung

Lernen

Dies ist der Anfangszustand jedes Alarms. In diesem Zustand verarbeitet der Alarm Echtzeitdaten und der Alarm bleibt in diesem Zustand, bis genügend Daten verarbeitet wurden, um die Entscheidung zu treffen, ob ein Alarm generiert werden soll oder nicht. Die Dauer der Lernphase hängt von den Parametern des gleitenden Fensters ab.

Aktiv

Die durch einen Alarm angegebene Bedingung ist erfüllt. Alarm bleibt in diesem Zustand, solange die Alarmbedingungen erfüllt sind.

Inaktiv

Die durch einen Alarm angegebene Bedingung ist nicht erfüllt. Beispielsweise wechselt der Alarm nach dem Lernzustand vom aktiven in den inaktiven Zustand, weil die CPU-Auslastung unter dem eingestellten Schwellenwert lag.

Deaktiviert

Der Agent analysiert die Daten für diesen Alarm nicht aktiv. Der Alarm wird vom Benutzer entweder gelöscht oder vorübergehend deaktiviert.

Tabelle 4 zeigt alle möglichen Zustände für einen Alarm, wobei der Modus als Ereignis konfiguriert ist.

Tabelle 4: Zustände für den Alarmmodus, definiert als Ereignis

Bundesstaat

Beschreibung

Aktiviert

Dies ist der Anfangszustand des Alarms, wobei der Modus auf Ereignis eingestellt ist, wenn eine Regel konfiguriert ist. Er bleibt in diesem Zustand, bis die Bedingungen erfüllt sind, um einen Alarm zu generieren.

Ausgelöst

Wenn die Bedingungen für die Alarmgenerierung erfüllt sind, wird ein Alarm mit dem Status ausgelöst generiert. Die Alarmerzeugung wird am Ende jedes Messintervalls protokolliert, solange die Bedingungen für Alarme weiterhin erfüllt sind.

Deaktiviert

Der Agent analysiert die Daten für diesen Alarm nicht aktiv. Der Alarm wird entweder gelöscht oder wurde vom Benutzer vorübergehend deaktiviert.

Aggregationsfunktionen für die Alarmverarbeitung

Tabelle 5 listet und beschreibt die Aggregationsfunktionen für die Alarmverarbeitung.

Tabelle 5: Aggregationsfunktionen für die Alarmverarbeitung

Aggregationsfunktion

Beschreibung

Durchschnitt

Statistischer Mittelwert aller innerhalb eines Messintervalls empfangenen Datenproben.

Beispiel: Host-Warnung generieren, wenn der CPU-Nutzungsdurchschnitt während eines 60-Sekunden-Intervalls über 80 % von 2 der letzten 3 Messintervalle liegt.

In diesem Beispiel beträgt das Messintervall 60 Sekunden. Ein Alarm wird generiert, wenn der Durchschnitt der CPU-Auslastungsproben in 2 beliebigen Messintervallen von 3 benachbarten Messintervallen 80% überschreitet.

Summe

Summe aller innerhalb eines Messintervalls empfangenen Datenproben.

Beispiel: Host-Warnung generieren, wenn die CPU-Nutzungssumme während eines 60-Sekunden-Intervalls über 250 % von 2 der letzten 3 Messintervalle liegt.

In diesem Beispiel wird ein Alarm generiert, wenn die CPU-Auslastungssumme in 2 beliebigen Messintervallen von 3 benachbarten Messintervallen, wobei jedes Messintervall 60 Sekunden dauert, über 250 % liegt.

Max

Maximaler Probenwert, der innerhalb eines Messintervalls beobachtet wird.

Beispiel: Host-Warnung generieren, wenn die maximale CPU-Auslastung während eines 60-Sekunden-Intervalls über 95 % von 2 der letzten 3 Messintervalle liegt.

In diesem Beispiel wird der Alarm generiert, wenn die maximale CPU-Auslastung in 2 beliebigen Messintervallen von 3 benachbarten Messintervallen, wobei jedes Messintervall 60 Sekunden dauert, über 95 % liegt.

Min

Minimaler Probenwert, der innerhalb eines Messintervalls beobachtet wird.

Beispiel: Hostwarnung generieren, wenn die Mindestauslastung der CPU-Nutzung während eines 60-Sekunden-Intervalls unter 5 % von 2 der letzten 3 Messintervalle liegt.

In diesem Beispiel wird der Alarm generiert, wenn die minimale CPU-Auslastung in 2 beliebigen Messintervallen von 3 benachbarten Messintervallen, wobei jedes Messintervall 60 Sekunden dauert, unter 5 % liegt.

std-dev

Die Standardabweichung der Zeitreihendaten wird auf der Grundlage der bis zum aktuellen Messintervall empfangenen Proben bestimmt.

Beispiel: Host-Warnung generieren, wenn die CPU-Auslastung std-dev während eines 60-Sekunden-Intervalls über 2 Sigma von 2 der letzten 3 Messintervalle liegt.

In diesem Beispiel wird der Alarm generiert, wenn die rohen Zeitreihenproben in mindestens 2 Messintervallen der letzten 3 Messintervalle darüber mean + 2*sigma liegen, wobei jedes Messintervall eine Dauer von 60 Sekunden hat.

Vergleichsfunktionen für die Alarmverarbeitung

Abbildung 4 und Abbildung 5 zeigen Beispiele für die Vergleichsfunktion, die sowohl Zunahmen als auch Abnahmen bei einer minimalen Rate zeigen.

Tabelle 6 zeigt verschiedene Vergleichsfunktionen, die für Contrail Insights-Alarme unterstützt werden.

Tabelle 6: Vergleichsfunktionen für die Alarmverarbeitung

Vergleichs-Operator

Beschreibung

Oben

Bestimmen Sie, ob das Ergebnis der Aggregationsfunktion innerhalb eines bestimmten Messintervalls über dem Schwellenwert liegt.

Hinweis:

Für den oben genannten dynamischen Schwellenwert vergleicht Contrail Insights, ob das Ergebnis der Aggregationsfunktion außerhalb des normalen Betriebsbereichs liegt (mittlerer +/- Sigma*-Empfindlichkeit).

Unten

Bestimmen Sie, ob das Ergebnis der für ein bestimmtes Messintervall ermittelten Aggregationsfunktion unter dem Schwellenwert liegt.

Hinweis:

Für den dynamischen Schwellenwert wird unten verglichen, ob das Ergebnis der Aggregationsfunktion innerhalb des normalen Betriebsbereichs liegt (mittlere +/- Sigma*Empfindlichkeit).

Gleich

Bestimmen Sie, ob das Ergebnis der Aggregationsfunktion gleich dem Schwellenwert ist.

Erhöhung bei einer Mindestrate von

Diese Vergleichsfunktion ist nützlich, wenn Sie einen plötzlichen Anstieg des Werts einer bestimmten Metrik anstelle ihres absoluten Werts verfolgen möchten. Wenn beispielsweise die Bandbreite des eingehenden oder ausgehenden Netzwerks innerhalb kurzer Intervalle zunimmt, sollten Sie einen Alarm auslösen. Abbildung 4 zeigt einen plötzlichen Anstieg des metrischen Durchschnitts zwischen dem Messintervall i1 und i2. In ähnlicher Weise wird ein plötzlicher Anstieg des metrischen Durchschnitts zwischen den Messintervallen i4 bis i5 beobachtet.

Beispiel: Host-Warnung generieren, wenn der host.network.ingress.bit_rate-Durchschnitt während eines 60-Sekunden-Intervalls mindestens um 25 % von 2 der letzten 3 Messintervalle ansteigt.

Wenn im Beispiel die mittlere Eingangsbitrate in 2 von 3 Messintervallen um mindestens 25 % ansteigt, wird ein Alarm ausgelöst.

Senkung bei einer Mindestrate von

Diese Vergleichsfunktion ist nützlich, wenn Sie einen plötzlichen Abfall des Werts einer bestimmten Metrik anstelle ihres absoluten Werts verfolgen möchten. Wenn beispielsweise die Bandbreite des Ausgangsnetzwerks innerhalb kurzer Zeit abnimmt, sollten Sie einen Alarm auslösen, um die Ursache zu ermitteln. Abbildung 5 zeigt eine plötzliche Abnahme des metrischen Durchschnitts zwischen dem Messintervall i1 und i2. In ähnlicher Weise wird ein plötzlicher Rückgang des metrischen Durchschnitts zwischen den Messintervallen i3 und i4 beobachtet.

Beispiel: Host-Warnung generieren, wenn der host.network.egress.bit_rate-Durchschnitt während eines 60-Sekunden-Intervalls mindestens um 25 % von 2 der letzten 3 Messintervalle abnimmt.

Wenn im Beispiel die mittlere Ausgangsbitrate in 2 von 3 Messintervallen um mindestens 25 % abnimmt, wird ein Alarm ausgelöst.

Abbildung 4: Vergleichsfunktion, die eine Anstiegsrate von Visualization of time series data analysis using a sliding window. Highlights include raw data, sliding window, measurement intervals, and detected anomalies.
Abbildung 5: Vergleichsfunktion, die eine Abnahme bei einer Mindestrate von Conceptual diagram of analyzing time series data using a sliding window. Shows intervals with exceptions and regions decreasing at a minimum rate.

Beispiele für dynamische Baselines

Abbildung 6 zeigt die dynamische Basislinie, die durch 24-Stunden-Daten und den k-Means-Clustering-Algorithmus berechnet wird. Für eine bestimmte Stunde des Tages ist der blaue Punkt der mean; der grüne Balken ist der ; der violette Balken ist mean - std-dev.mean + std-dev

Abbildung 6: Dynamische Baseline, ermittelt durch Daten der letzten 24 Stunden und K-Means-Clustering-Algorithmus Dashboard for CPU usage monitoring with alarm details and graph. Alarm triggers if CPU usage exceeds dynamic threshold over 60-second intervals. Graph shows low usage with a rise at day's end.

Abbildung 7 zeigt die dynamische Basislinie, die anhand von 24 Stunden historischer Daten mit dem EWMA-Algorithmus berechnet wurde. Diese Baseline wird für die nächste 1 Stunde für die Alarmgenerierung verwendet, bis sie erneut mit den Daten der letzten 24 Stunden aktualisiert wird.

Abbildung 7: Dynamische Baseline, ermittelt anhand der historischen Daten der letzten 24 Stunden mit EWMA Monitoring interface showing an alert triggered for disk.io.write above threshold. Includes alarm details, configuration table, and graph with MB/s data point.

Konfigurieren einer Alarmregel

So konfigurieren Sie einen Alarm:

  1. Wählen Sie Überwachung > Alarme aus.

  2. Klicken Sie im Bereich "Alarmregeln" auf "Regel hinzufügen ", um eine neue Regel zum Auslösen eines Alarms zu erstellen, wenn eine benutzerdefinierte Bedingung für eine der ausgewählten Entitäten im Netzwerk erfüllt ist.

    Abbildung 8: Aktive Alarmwarnungen und Alarmregeln in Contrail Command Monitoring dashboard of Juniper's Contrail Command interface showing navigation options, empty Alarms section, critical Alarm Rules, and Add Rule button.
  3. Wählen Sie für Modul eine der folgenden Optionen aus. Je nach Auswahl unterscheiden sich die Felder.

    Alarms

    Wenn Alarme ausgewählt ist, können Sie Alarme für Entitäten wie Hosts, Instanzen und Netzwerkgeräte konfigurieren.

    Service Alarms

    Wenn Dienstalarme ausgewählt ist, können Sie Alarme für Dienste in Ihrer Umgebung konfigurieren, z. B. RabbitMQ-, MySQL-, ScaleIO- und OpenStack-Dienste.

    Abbildung 9: Erstellen und Konfigurieren eines Alarms in Contrail Command Create Alarm page in Contrail Command interface for setting system metric alerts. Monitoring category expanded. Alarm named Test-CPU. Static rule for host.cpu.per_core.usage, 60-second interval, above threshold, critical severity.
  4. Wählen Sie Alarmregeltyp aus.

    • Statisch: Wenn ein Alarm als statisch definiert ist, sollte die Regeldefinition einen vom Benutzer festgelegten vordefinierten statischen Schwellenwert enthalten.

    • Dynamisch: Wenn ein Alarm als dynamisch definiert ist, wird der Schwellenwert dynamisch durch den Baselinealgorithmus bestimmt, der entweder k-Means oder EWMA sein kann.

  5. Wählen Sie die Metrik für die Regel aus und geben Sie das Intervall an, in dem die Regel einen Alarm auslösen soll. Weitere Parameter finden Sie in Tabelle 1 und in den Beschreibungen im Abschnitt "Alarmdefinition".

  6. Klicken Sie auf Erstellen , um den Alarm zu speichern.