• PagerDuty
    /
  • Blog
    /
  • KI
    /
  • Nutzung von KI/ML zur Optimierung der kontinuierlichen Auslieferung mit Harness und PagerDuty

Blog

Nutzung von KI/ML zur Optimierung der kontinuierlichen Auslieferung mit Harness und PagerDuty

von Steve Burton 7. September 2018 | 4 Minuten Lesezeit

Auf den ersten Blick scheint die Anwendung von maschinellem Lernen auf Kontinuierliche Bereitstellung Das klingt vielleicht ein bisschen so, als würde man versuchen, eine Erdnuss mit Kanonen auf Spatzen zu schießen. Ich meine, wie schwierig kann die Automatisierung von Bereitstellungsprozessen schon sein?

Wie sich herausstellt, ist es viel komplexer, als wir denken.

Die Einführung einer neuen Softwarelösung in der Produktion hat typischerweise zwei Ergebnisse:

  1. Der Dienst funktioniert weiterhin und wir gehen davon aus, dass alles in Ordnung ist.
  2. Der Dienst bricht zusammen und das Chaos bricht aus.

Tatsächlich spiegeln die beiden oben genannten Punkte wider, wie 95 Prozent der Unternehmen den Erfolg einer Implementierung messen (verfügbar = gut, nicht verfügbar = schlecht). Zufriedene PagerDuty -Kunden kennen wahrscheinlich das zweite Szenario (die Flut von Benachrichtigungen und Störungen auf ihrem Mobiltelefon). Allerdings ist auch Szenario 1 irreführend, da ein ständig verfügbarer Dienst nicht automatisch auf einwandfreie Funktion, Leistung oder Qualität schließen lässt.

Nachteile manueller Integritätsprüfungen bei der Bereitstellung

Eine Sache, die wir von unseren ersten 25 Kunden gelernt haben, bei Geschirr Das Problem ist, dass die meisten Organisationen typischerweise 3-5 Ingenieure beschäftigen, die jeweils mindestens eine Stunde damit verbringen, Produktionsbereitstellungen manuell zu überprüfen. Zum Beispiel einer unserer Kunden, Build.com Früher verbrachten 5-6 Teamleiter jeweils eine Stunde damit, Daten manuell zu analysieren. New Relic Und Sumo-Logik —was üblicherweise bedeutet, dass mehrere Konsolen-/Browserfenster geöffnet sein müssen und ständig zwischen Bash-Skripten, Anwendungsleistungsüberwachung und Log-Analysetools hin- und hergeschaltet werden muss.

Da das menschliche Gehirn im Kurzzeitgedächtnis nur 8–10 Elemente gleichzeitig verarbeiten kann und unzählige Daten aus verschiedenen Systemen einströmen, ist es heutzutage leicht, etwas zu übersehen. Manuelle Analysen und Systemprüfungen stellen eine Herausforderung dar, wenn nach der Implementierung mehrere hunderttausend Zeitreihenmetriken und einige Millionen Protokolleinträge ausgewertet werden müssen.

Lassen Sie KI/maschinelles Lernen Gesundheitschecks unterstützen

Bei Harness automatisieren wir nicht nur die Bereitstellung von Software-Artefakten in der Produktion, sondern auch Integritätsprüfungen mithilfe von KI und ML. Wir nennen das Kontinuierliche Überprüfung Die

Wir verwenden hauptsächlich unüberwachte maschinelle Lernalgorithmen wie Hidden Markov Models, Symbolic Aggregate Representation, KMeans Clustering und einige neuronale Netze, um die Erkennung von Anomalien und Regressionen aus APM- und Protokolldaten zu automatisieren.

Innerhalb von Sekunden nach der Bereitstellung eines neuen Software-Artefakts kann Harness eine Verbindung zu jedem beliebigen System herstellen. APM oder ein Protokollierungstool, das automatisch ein Modell des Anwendungsverhaltens aus Leistungs- (Antwortzeit/Durchsatz) und Qualitätsperspektive (Fehler/Ausnahmen/Ereignisse) generiert.

Harness vergleicht diese Modelle anschließend mit früheren Implementierungen und kennzeichnet sofort alle neuen Anomalien oder Regressionen. Was Menschen Stunden kostet, um es zu verarbeiten und zu analysieren, dauert mit Algorithmen des maschinellen Lernens nur Sekunden.

Die folgenden Screenshots stammen beispielsweise von der Harness-Verifizierung von AppDynamics APM-Daten:

Im obigen Bild ist zu sehen, dass Harness nach der Bereitstellung zwei Leistungseinbußen bei Geschäftstransaktionen festgestellt hat. Das dazugehörige Bild unten zeigt, dass sich die Antwortzeit einer Transaktion – „Anmeldeanfrage“ – von 31 ms auf 165 ms erhöht hat. Diese gesamte Analyse erfolgt automatisiert mithilfe von KI/ML.

Hier ist ein weiteres Beispiel dafür, wie Harness Fehler-/Ausnahmeanomalien in Anwendungsprotokollen von Splunk erkennt:

Rote Punkte kennzeichnen neue Fehler, die durch die Bereitstellung in die Anwendungsprotokolle eingeführt wurden. Graue und blaue Punkte repräsentieren Standardereignisse oder Fehler/Ausnahmen, die normalerweise bei jeder Bereitstellung auftreten.

Harness verwendet KMeans-Clustering in Kombination mit Jacard- und Kosinusdistanzberechnungen, um diese Visualisierungen zu erstellen. Ein Klick auf einen beliebigen Punkt zeigt außerdem den Stacktrace und die Ursache des Ereignisses an.

Automatisierte Rollback-Funktion mit KI/ML-Intelligenz

Harness kann mithilfe der Erkenntnisse aus der kontinuierlichen Verifizierung auch das Zurücksetzen von Bereitstellungen automatisieren. Man kann sich Harness als Sicherheitsnetz vorstellen, das es Entwickler- und DevOps-Teams ermöglicht, schneller bereitzustellen und bei Auftreten neuer Anomalien oder Regressionen ein Rollback durchzuführen.

Mit der bevorstehenden Unterstützung von PagerDuty durch Harness können Unternehmen PagerDuty sowohl als Benachrichtigungskanal als auch als Verifizierungsquelle nutzen. Beispielsweise kann Harness PagerDuty vor der Bereitstellung abfragen, um festzustellen, ob in der Produktionsumgebung aktive Vorfälle auftreten. Das Letzte, was Entwicklungs- und DevOps-Teams wollen, ist die Bereitstellung in einer solchen Umgebung.

Zusammenfassend bietet Harness Folgendes: Kontinuierliche Bereitstellung als Dienstleistung Das hilft Unternehmen, die Bereitstellung und Auslieferung von Software an Endnutzer in der Produktionsumgebung zu automatisieren. Wir unterstützen unsere Kunden dabei, schnell und ohne Qualitätsverluste voranzukommen.


Steve Burton ist CI/CD- und DevOps-Experte bei Harness.io. Vor seiner Zeit bei Harness war er in verschiedenen technischen Bereichen bei AppDynamics, Moogsoft und Glassdoor tätig. Seine Karriere begann er 2004 als Java-Entwickler bei Sapient. Wenn er sich nicht gerade mit Technik beschäftigt, schaut er normalerweise Formel 1 oder recherchiert im Internet nach Autos.