David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Kürzlich gründete David O'Brien sein eigenes Unternehmen Xirus (https://xirus.com.au), das sich auf Microsoft Azure Stack Cloud-Produkte konzentriert. Diese sind dafür ausgelegt, hybride Anwendungen konsistent in Rechenzentren, an Edge-Standorten, in Remote-Büros und in der Cloud zu erstellen und zu betreiben.

David bildet Einzelpersonen und Unternehmen in allen Aspekten von Microsoft Azure und Azure DevOps (ehemals VSTS) aus und ist weiterhin aktiv in der praktischen Beratung und dem Infrastructure as Code. Er ist seit 5 Jahren Microsoft MVP (Most Valuable Professional) und erhielt kürzlich die MVP-Auszeichnung für Azure. Als Mitorganisator des Melbourne Microsoft Cloud und Datacentre Meetups spricht O'Brien regelmäßig auf internationalen Konferenzen und verbindet seine Reiseleidenschaft mit seiner Leidenschaft, IT-Geschichten mit der Community zu teilen. Davids Blog finden Sie unter david-obrien.net, wo er auch seine Online-Trainings auf Pluralsight veröffentlicht.

In diesem Vortrag wird die Bedeutung von Metriken für das Verständnis dessen, was in Ihrer Umgebung geschieht und wie Ihre Anwendung funktioniert, thematisiert. Microsoft Azure bietet eine leistungsstarke und einfache Möglichkeit, Metriken für alle Arten von Arbeitslasten anzuzeigen, und im Vortrag wird erklärt, wie Sie diese nutzen können.

Um 3 Uhr morgens, am Sonntag, werden Sie im Schlaf plötzlich durch die Textnachricht geweckt: "Kritische Anwendung reagiert wieder nicht." Was ist passiert? Wo liegt die Ursache für die Verzögerungen? Aus diesem Vortrag erfahren Sie mehr über die Dienste, die Microsoft Azure seinen Kunden zur Verfügung stellt, um Protokolle und insbesondere die Metriken Ihrer Cloud-Arbeitslasten zu erfassen. David wird erläutern, welche Metriken für Sie bei der Arbeit auf der Cloud-Plattform von Interesse sein sollten und wie Sie darauf zugreifen können. Sie werden über Open-Source-Tools und den Aufbau von Dashboards lernen und am Ende genügend Wissen haben, um eigene Dashboards zu erstellen.

Und wenn Sie um 3 Uhr morgens erneut von einer Nachricht über den Ausfall einer kritischen Anwendung geweckt werden, können Sie schnell die Ursache dafür herausfinden.

Guten Tag, heute werden wir über Metriken sprechen. Mein Name ist David O’Brien, ich bin Mitbegründer und Inhaber eines kleinen australischen Beratungsunternehmens namens Xirus. Ich danke Ihnen nochmals, dass Sie sich die Zeit genommen haben, hier mit mir zu sein. Also, warum sind wir hier? Um über Metriken zu sprechen. Genauer gesagt, ich werde Ihnen darüber berichten und bevor wir zu konkreten Dingen übergehen, beginnen wir mit der Theorie.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Ich werde erklären, was Metriken sind, was man mit ihnen machen kann, worauf man achten sollte, wie man das Sammeln von Metriken in Azure integriert und was Visualisierung von Metriken bedeutet. Ich werde Ihnen zeigen, wie diese Dinge in der Microsoft-Cloud aussehen und wie man mit dieser Cloud arbeitet.

Bevor wir beginnen, bitte ich diejenigen, die Microsoft Azure verwenden, die Hände zu heben. Und wer arbeitet mit AWS? Ich sehe, nur wenige. Und mit Google? ALI Cloud? Eine Person! Großartig. Also, was sind Metriken? Die offizielle Definition des National Institute of Standards and Technology der USA lautet: „Eine Metrik ist ein Messstandard, der die Bedingungen und Regeln für die Durchführung einer Messung eines bestimmten Merkmals beschreibt und dazu dient, die Ergebnisse der Messung zu verstehen.“ Was bedeutet das?

Betrachten wir als Beispiel die Metrik zur Änderung des freien Speicherplatzes auf einer virtuellen Maschine. Zum Beispiel wird uns die Zahl 90 angezeigt, und diese Zahl bedeutet Prozent, das heißt, der freie Speicherplatz auf der Festplatte beträgt 90 %. Ich möchte anmerken, dass es nicht besonders interessant ist, eine 40-seitige PDF-Beschreibung der Definition von Metriken zu lesen.

Die Metrik sagt jedoch nicht aus, wie das Messergebnis zustande gekommen ist, sie zeigt nur dieses Ergebnis an. Was machen wir also mit Metriken?

Zunächst messen wir den Wert von etwas, um dann das Messergebnis zu nutzen.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Zum Beispiel haben wir den verfügbaren Speicherplatz auf der Festplatte ermittelt und können ihn nun nutzen, diesen Speicher verwenden usw. Nachdem wir das Ergebnis der Metrik erhalten haben, müssen wir es interpretieren. Zum Beispiel hat die Metrik einen Wert von 90 ausgegeben. Wir müssen wissen, was diese Zahl bedeutet: den verfügbaren Speicherplatz oder den belegten Speicherplatz auf der Festplatte in Prozent oder Gigabyte, die Netzwerklatenz von 90 ms usw. Das heißt, wir müssen die Bedeutung des Wertes der Metrik verstehen. Damit Metriken überhaupt sinnvoll sind, müssen wir nach der Interpretation eines einzelnen Metrikwertes die Erfassung von vielen Werten sicherstellen. Dies ist sehr wichtig, da viele Menschen die Notwendigkeit der Erfassung von Metriken nicht erkennen. Microsoft hat den Prozess der Metrikbeschaffung sehr einfach gemacht, aber Sie müssen selbst deren Erfassung sicherstellen. Diese Metriken werden nur 41 Tage gespeichert und am 42. Tag gelöscht. Daher müssen Sie, abhängig von den Eigenschaften Ihrer externen oder internen Hardware, dafür sorgen, dass die Metriken länger als 41 Tage gespeichert werden — in Form von Protokollen, Logbüchern usw. So sollten Sie nach der Erfassung sicherstellen, dass Sie sie an einem Ort ablegen, der es Ihnen ermöglicht, bei Bedarf die gesamte Statistik zur Veränderung der Metrikergebnisse abzurufen. Wenn Sie sie dort ablegen, können Sie effizient mit ihnen arbeiten.

Erst nachdem Sie die Metriken erhalten, diese interpretiert und gesammelt haben, können Sie ein SLA – ein Service-Level-Agreement – erstellen. Dieses SLA hat möglicherweise nicht viel Bedeutung für Ihre Kunden, ist jedoch wichtiger für Ihre Kollegen, Manager und diejenigen, die für die Funktionalität des Systems verantwortlich sind. Eine Metrik kann die Anzahl der Tickets messen – zum Beispiel erhalten Sie 5 Tickets pro Tag, und in diesem Fall zeigt sie die Reaktionsgeschwindigkeit auf Benutzeranfragen und die Schnelligkeit der Problemlösung. Eine Metrik sollte nicht einfach nur mitteilen, dass Ihre Website in 20 ms geladen wird oder die Antwortgeschwindigkeit 20 ms beträgt; eine Metrik ist mehr als nur eine technische Kennzahl.

Deshalb besteht die Aufgabe unseres Gesprächs darin, Ihnen ein umfassendes Bild der Metriken zu präsentieren. Eine Metrik dient dazu, dass Sie beim Blick darauf ein vollständiges Verständnis des Prozesses erhalten.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Sobald wir die Metrik erhalten haben, können wir zu 99 % garantieren, dass das System funktionsfähig ist, denn es ist nicht nur ein Blick in die Protokolldatei, in der steht, dass das System läuft. Eine Garantie von 99 % bedeutet beispielsweise, dass die API in 99 % der Fälle mit einer normalen Geschwindigkeit von 30 ms antwortet. Das ist genau das, was Ihre Nutzer, Kollegen und Manager interessiert. Viele unserer Kunden überwachen die Protokolle der Webserver, ohne Fehler zu bemerken, und denken, dass alles in Ordnung ist. Zum Beispiel sehen sie eine Netzwerkgeschwindigkeit von 200 Mbit/s und denken: „Okay, alles bestens!“ Aber um diese 200 zu erreichen, benötigen die Nutzer eine Antwortgeschwindigkeit von 30 Millisekunden, und genau dieser Wert wird nicht gemessen und in den Protokolldateien erfasst. Die Nutzer sind dann überrascht, dass die Website sehr langsam lädt, weil sie ohne die benötigte Metrik nicht wissen, warum sich das Verhalten so zeigt.

Aber da wir ein SLA haben, das 100% Betriebszeit garantiert, beginnen die Kunden, ihren Unmut zu äußern, weil die Nutzung der Webseite in Wirklichkeit sehr schwierig ist. Um ein objektives SLA zu erstellen, ist es notwendig, das gesamte Bild des Prozesses zu sehen, das durch die gesammelten Metriken erstellt wird. Dies ist der Gegenstand meiner ständigen Auseinandersetzung mit einigen Anbietern, die beim Erstellen von SLAs nicht verstehen, was der Begriff „Uptime“ bedeutet, und in den meisten Fällen ihren Kunden nicht erklären, wie ihre API funktioniert.

Wenn Sie einen Dienst erstellt haben, zum Beispiel eine API für Dritte, sollten Sie verstehen, was die erhaltene Metrik von 39,5 bedeutet – eine Antwort, eine erfolgreiche Antwort, eine Antwort mit einer Geschwindigkeit von 20 ms oder mit einer Geschwindigkeit von 5 ms. Sie müssen deren SLA an Ihr eigenes SLA, an Ihre eigenen Metriken anpassen.

Nachdem Sie all dies herausgefunden haben, können Sie mit der Erstellung eines großartigen Überwachungs-Dashboards beginnen. Sag mal, hat schon jemand die Anwendung zur interaktiven Visualisierung Grafana verwendet? Großartig! Ich bin ein großer Fan dieses Open-Source-Tools, weil es kostenlos ist und sich leicht bedienen lässt.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Wenn Sie Grafana noch nicht verwendet haben, erkläre ich Ihnen, wie Sie damit arbeiten. Wer in den 80er oder 90er Jahren geboren wurde, erinnert sich wahrscheinlich an die fürsorglichen Bärchen CareBears? Ich weiß nicht, wie beliebt diese Bären in Russland waren, aber in Bezug auf Metriken sollten wir genauso "fürsorglich" sein wie sie. Wie gesagt, Sie benötigen ein umfassendes Bild der gesamten Systemleistung, das über nur Ihre API, Ihre Website oder den Dienst, der auf einer virtuellen Maschine läuft, hinausgeht.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Sie müssen die wichtigsten Metriken erfassen, die die gesamte Systemleistung umfassend widerspiegeln. Die meisten von Ihnen sind Softwareentwickler, und daher verändert sich Ihr Leben ständig, um sich an neue Produktanforderungen anzupassen. So wie Sie sich um den Code-Prozess kümmern, sollten Sie sich auch um die Metriken kümmern. Sie müssen verstehen, wie jede Metrik mit jeder Zeile Code, die Sie geschrieben haben, verbunden ist. Zum Beispiel beginnen Sie nächste Woche mit einer neuen Marketingkampagne und erwarten, dass viele Benutzer Ihre Website besuchen. Für die Analyse dieses Ereignisses benötigen Sie Metriken, und möglicherweise ist ein ganzes Dashboard erforderlich, um die Aktivitäten dieser Personen zu verfolgen. Metriken sind notwendig, um herauszufinden, wie erfolgreich Ihre Marketingkampagne ist und wie sie tatsächlich funktioniert. Sie helfen Ihnen beispielsweise, ein effektives CRM – ein Kundenbeziehungsmanagementsystem – zu entwickeln.

Lassen Sie uns also mit unserem Azure-Cloud-Service beginnen. Es ist sehr einfach, Metriken zu finden und zu organisieren, da Azure Monitor vorhanden ist. Dieser Monitor zentralisiert das Konfigurationsmanagement Ihres Systems. Jedes Azure-Element, das Sie in Ihrem System verwenden möchten, verfügt über zahlreiche standardmäßig aktivierte Metriken. Dies ist eine kostenlose Anwendung, die sofort betriebsbereit ist und keine vorherige Einrichtung erfordert; Sie müssen nichts programmieren oder in Ihr System integrieren. Wir werden dies im nächsten Demo-Video überprüfen.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Darüber hinaus besteht die Möglichkeit, diese Metriken an Drittanbieteranwendungen zu senden, wie das Log-Management- und Analyse-System Splunk, die Cloud-Anwendung zur Log-Verwaltung SumoLogic, das Log-Verarbeitungstool ELK und IBM Radar. Es gibt jedoch einige Unterschiede, die von den von Ihnen verwendeten Ressourcen abhängen – wie virtuellen Maschinen, Netzwerkdiensten oder Azure SQL-Datenbanken. Das bedeutet, dass die Verwendung der Metriken je nach den Funktionen Ihrer Arbeitsumgebung unterschiedlich ist. Ich würde nicht sagen, dass diese Unterschiede gravierend sind, jedoch sind sie leider vorhanden und sollten berücksichtigt werden. Das Aktivieren und Übertragen von Metriken kann auf verschiedene Weisen erfolgen: über das Portal, CLI/Power Shell oder mithilfe von ARM-Vorlagen.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Bevor wir mit der ersten Demo beginnen, beantworte ich gerne Ihre Fragen. Wenn es keine Fragen gibt, fangen wir an. Auf dem Bildschirm sehen Sie, wie die Seite Azure Monitor aussieht. Kann jemand von Ihnen sagen, dass dieser Monitor nicht funktioniert?

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Jetzt ist alles bereit, Sie sehen, wie die Monitorservices aussehen. Ich kann sagen, dass es ein hervorragendes und sehr einfaches Tool für die tägliche Arbeit ist. Mit seiner Hilfe können Anwendungen, Netzwerke und die Infrastruktur überwacht werden. Vor kurzem wurde die Überwachungsoberfläche verbessert, und während früher die Services an verschiedenen Orten angeordnet waren, wird jetzt alle Informationen zu den Services auf der Startseite des Monitors konsolidiert.

Die Metriktabelle ist ein Tab im Pfad HomeMonitorMetrics, auf den Sie zugreifen können, um alle verfügbaren Metriken zu sehen und die gewünschten auszuwählen. Wenn Sie jedoch die Erfassung von Metriken aktivieren müssen, verwenden Sie den Pfad im Verzeichnis HomeMonitorDiagnostic settings und prüfen Sie die Kontrollkästchen der Metriken Enabled/Disabled. Standardmäßig sind fast alle Metriken aktiviert, aber wenn Sie etwas Zusätzliches aktivieren möchten, müssen Sie den Diagnosestatus von Disabled auf Enabled ändern.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Dafür müssen Sie auf die Zeile der ausgewählten Metrik klicken und im sich öffnenden Tab den Diagnosetyp aktivieren. Wenn Sie die ausgewählte Metrik analysieren möchten, markieren Sie nach dem Klicken auf den Link Diagnosetyp aktivieren das Kontrollkästchen Send to Log Analytics im angezeigten Fenster.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Log Analytics ähnelt ein wenig Splunk, ist jedoch günstiger. Dieser Dienst ermöglicht es Ihnen, alle Ihre Metriken, Protokolle und alles, was Sie benötigen, zu sammeln und in einem Arbeitsbereich von Log Analytics zu speichern. Der Dienst verwendet eine spezielle Abfragesprache namens KQL – Kusto Query Language, deren Funktionsweise wir im nächsten Demo betrachten werden. Ich möchte vorerst erwähnen, dass Sie damit Abfragen zu Metriken, Protokollen, Begriffen, Trends, Mustern usw. formulieren und Dashboards erstellen können.

Wir aktivieren das Kontrollkästchen Send to Log Analytics sowie die Kontrollkästchen im LOG-Bereich: DataPlaneRequests, MongoRequests und QueryRuntimeStatistics. Unten im METRIC-Bereich aktivieren wir das Kontrollkästchen Requests. Dann vergeben wir einen Namen und speichern die Einstellungen. In der Kommandozeile entspricht dies zwei Zeilen Code. Übrigens erinnert die Azure Cloud Shell in dieser Hinsicht an Google, das ebenfalls die Nutzung der Kommandozeile im Webbrowser erlaubt. AWS bietet so etwas nicht an, sodass Azure in dieser Hinsicht viel benutzerfreundlicher ist.

Ich kann beispielsweise die Demo über die Weboberfläche starten, ohne dafür Code auf meinem Laptop nutzen zu müssen. Dazu muss ich mich mit meinem Azure-Konto authentifizieren. Anschließend kann ich terrafone verwenden, falls ich es bereits benutze, und auf die Verbindung zum Dienst warten, um die Linux-Umgebung zu erhalten, die Microsoft standardmäßig nutzt.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Anschließend benutze ich Bash, die in Azure Cloud Shell integriert ist. Eine sehr nützliche Funktion ist die im Browser integrierte IDE, eine vereinfachte Version von VS Code. Dann kann ich mein Fehlermetriken-Template aufrufen, es bearbeiten und an meine Bedürfnisse anpassen.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Nachdem Sie in dieser Vorlage die Metrikanpassung eingerichtet haben, können Sie sie zur Erstellung von Metriken für Ihre gesamte Infrastruktur verwenden. Nachdem wir die Metriken angewendet, gesammelt und gespeichert haben, müssen wir sie visualisieren.

David O’Brien (Xirus): Metriken! Metriken! Metriken! Teil 1

Azure Monitor fokussiert sich ausschließlich auf Metriken und bietet nicht die Möglichkeit, einen umfassenden Überblick über den Zustand Ihres Systems zu erhalten. Möglicherweise verwenden Sie eine Reihe anderer Anwendungen, die außerhalb der Azure-Umgebung laufen. Wenn Sie also alle Prozesse überwachen und alle gesammelten Metriken an einem Ort visualisieren möchten, ist Azure Monitor dafür nicht geeignet.

Um dieses Problem zu lösen, bietet Microsoft das Tool Power BI an – eine umfassende Software für die Geschäftsanalyse, die eine Visualisierung unterschiedlichster Daten beinhaltet. Es handelt sich um ein relativ kostspieliges Produkt, dessen Preis von den gewünschten Funktionen abhängt. Standardmäßig bietet es 48 Arten von verarbeiteten Daten und ist mit SQL Azure-Datenbanken, Azure Data Lake Storage, Azure-Maschinenlerndiensten und Azure Databricks verbunden. Durch die Skalierbarkeit können Sie alle 30 Minuten neue Daten abrufen. Das könnte ausreichen, um Ihre Bedürfnisse zu erfüllen, oder nicht ausreichend sein, wenn Sie eine Visualisierung von Echtzeitmonitoring benötigen. In diesem Fall wird empfohlen, Anwendungen wie das erwähnte Grafana zu verwenden. Darüber hinaus beschreibt die Microsoft-Dokumentation die Möglichkeit, Metriken, Protokolle und Ereignistabellen mit SIEM-Tools an Visualisierungssysteme wie Splunk, SumoLogic, ELK und IBM Radar zu senden.

23:40 min

Die Fortsetzung kommt in Kürze...

Video abspielen

Ein wenig Werbung 🙂

Danke, dass Sie bei uns bleiben. Gefallen Ihnen unsere Artikel? Möchten Sie mehr interessante Inhalte sehen? Unterstützen Sie uns, indem Sie eine Bestellung aufgeben oder uns Ihren Freunden empfehlen. Cloud-VPS für Entwickler ab 4,99 $, eine einzigartige Alternative zu Einsteiger-Servern, die wir für Sie entwickelt haben: Alles über VPS (KVM) E5-2697 v3 (6 Kerne) 10GB DDR4 480GB SSD 1Gbps ab 19 $ oder wie man einen Server richtig teilt? (Verfügbar sind Optionen mit RAID1 und RAID10, bis zu 24 Kerne und bis zu 40GB DDR4).

Dell R730xd im Equinix Tier IV Rechenzentrum in Amsterdam zum halben Preis? Nur bei uns 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TB ab 199 $ in den Niederlanden! Dell R420 — 2x E5-2430 2.2GHz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — ab 99 $! Lesen Sie darüber Wie man eine Unternehmenskosten-Infrastruktur mit Dell R730xd E5-2650 v4-Servern für ein paar Euro aufbaut?

Quelle: habr.com

Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen 🔥 Zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster