Was sind Amazon CloudWatch Application Insights?
Mit CloudWatch Application Insights können Sie Ihre Anwendungen überwachen, die Amazon-EC2-Instances zusammen mit anderen Anwendungsressourcen verwenden. Es identifiziert Schlüsselmetriken, Protokolle und Alarme und richtet diese für Ihre Anwendungsressourcen und Ihren Technologie-Stack ein (z. B. Ihre Microsoft SQL Server-Datenbank, Web (IIS)- und Anwendungsserver, Betriebssystem, Load Balancer und Warteschlangen). Es überwacht kontinuierlich Metriken und Protokolle, um Anomalien und Fehler zu erkennen und zu korrelieren. Wenn Fehler und Anomalien erkannt werden, generiert Application Insights CludWatch Events, mit denen Sie Benachrichtigungen einrichten oder Aktionen ausführen können. Um die Fehlersuche zu erleichtern, erstellt es automatisierte Dashboards für die erkannten Probleme, die korrelierten Metrikanomalien und Protokollfehler sowie zusätzliche Erkenntnisse, die Sie auf die mögliche Ursache hinweisen. Die automatisierten Dashboards helfen Ihnen dabei, schnell Abhilfemaßnahmen zu treffen, um Ihre Anwendungen funktionstüchtig zu halten und Auswirkungen auf die Endbenutzer Ihrer Anwendung zu vermeiden. Außerdem werden OpsItems erstellt, damit Sie Probleme mit AWS SSM OpsCenter beheben können.
Sie können wichtige Leistungsindikatoren wie gespiegelte Schreibtransaktion/Sek., Länge der Wiederherstellungswarteschlange und Transaktionsverzögerung sowie Windows-Ereignisprotokolle in CloudWatch konfigurieren. Wenn ein Failover-Ereignis oder ein Problem mit Ihrem SQL-HA-Workload auftritt, wie z. B. ein eingeschränkter Zugriff zum Abfragen einer Zieldatenbank, bietet CloudWatch Application Insights automatisierte Erkenntnisse.
CloudWatch Application Insights lässt sich AWS Launch Wizard integrieren, um ein Ein-Klick-Überwachungs-Setup für die Bereitstellung von SQL-Server-HA-Workloads auf AWS bereitzustellen. Wenn Sie die Option zum Einrichten von Überwachung und Erkenntnissen mit Application Insights in der Launch-Wizard-Konsole
Inhalt
Funktionen
Application Insights bietet die folgenden Features:
Automatisches Einrichten der Überwachung für Anwendungsressourcen
CloudWatch Application Insights reduziert die Zeit für die Einrichtung der Überwachung Ihrer Anwendungen. Dazu werden Ihre Anwendungsressourcen gescannt, eine anpassbare Liste empfohlener Metriken und Protokolle bereitgestellt und diese in CloudWatch eingerichtet, um die erforderlichen Einblicke in Ihre Anwendungsressourcen wie Amazon EC2 und Elastic Load Balancers (ELB) zu bieten. Der Service richtet außerdem dynamische Alarme für überwachte Metriken ein. Die Alarme werden automatisch aktualisiert, basierend auf den in den letzten zwei Wochen festgestellten Anomalien.
Problemerkennung und Benachrichtigung
CloudWatch Application Insights erkennt Anzeichen von potenziellen Problemen mit Ihrer Anwendung, wie z. B. Metrikanomalien und Protokollfehler. Es korreliert diese Beobachtungen mit möglichen Problemen mit Ihrer Anwendung. Anschließend werden CloudWatch Events generiert, die konfiguriert werden können, um Benachrichtigungen zu empfangen oder Aktionen durchzuführen . Dadurch entfällt die Notwendigkeit, individuelle Alarme bei Metriken oder Protokollfehlern zu erstellen. Darüber hinaus können Sie Amazon-SNS-Benachrichtigungen so konfigurieren, dass Sie bei erkannten Problemen Benachrichtigungen erhalten.
Fehlersuche
CloudWatch Application Insights erstellt automatische Dashboards von CloudWatch für erkannte Probleme. Die Dashboards zeigen Details zum Problem, einschließlich der zugehörigen Metrikanomalien und Protokollfehler, die Ihnen bei der Fehlersuche helfen. Sie liefern außerdem zusätzliche Erkenntnisse, die auf mögliche Ursachen für die Anomalien und Fehler hinweisen.
Konzepte
Die folgenden Konzepte sind wichtig, um zu verstehen, wie Application Insights Ihre Anwendung überwacht.
Komponente
Eine automatisch gruppierte, eigenständige oder benutzerdefinierte Gruppierung ähnlicher Ressourcen, aus denen eine Anwendung besteht. Wir empfehlen, ähnliche Ressourcen zur besseren Überwachung in benutzerdefinierten Komponenten zusammenzufassen.
Beobachtung
Ein einzelnes Ereignis (Metrikanomalie, Protokollfehler oder Ausnahme), das mit einer Anwendung oder Anwendungsressource erkannt wird.
Problem
Probleme werden durch Korrelation, Klassifizierung und Gruppierung von Beobachtungen erkannt.
Definitionen anderer Schlüsselkonzepte für CloudWatch Application Insights finden Sie unter Amazon-CloudWatch-Konzepte.
Preise
CloudWatch Application Insights erstellt empfohlene Metriken und Protokolle für ausgewählte Anwendungsressourcen mithilfe von CloudWatch-Metriken, Protokollen und Ereignissen für Benachrichtigungen bei erkannten Problemen. Diese Features werden Ihrem AWS-Konto gemäß der CloudWatch-Preisliste
Kosten für CloudWatch Application Insights
Die Kosten für Amazon EC2 beinhalten die Nutzung der folgenden Features:
-
CloudWatch-Agent
-
CloudWatch-Agent-Protokollgruppen
-
CloudWatch-Agent-Metriken
-
Prometheus-Protokollgruppen (für JMX-Workloads)
-
Die Kosten für alle Ressourcen beinhalten die Nutzung der folgenden Features:
-
CloudWatch-Alarme (Großteil der Kosten)
-
SSM OpsItems (minimale Kosten)
Beispiel für Kostenberechnung
Die Kosten in diesem Beispiel werden gemäß dem folgenden Szenario betrachtet.
Sie haben eine Ressourcengruppe erstellt, die Folgendes beinhaltet:
-
Eine Amazon-EC2-Instance mit installiertem SQL-Server.
-
Ein angehängtes Amazon-EBS-Volume.
Wenn Sie diese Ressourcengruppe mit CloudWatch Application Insights verbinden, wird der auf der Amazon-EC2-Instance installierte SQL-Server-Workload erkannt. CloudWatch Application Insights startet mit der Überwachung folgenden Metriken.
Die folgenden Metriken werden für die SQL-Server-Instance überwacht:
-
CPUUtilization
-
StatusCheckFailed
-
Speicher % übertragene Bytes im Gebrauch
-
Verfügbarer Speicher Mbytes
-
Netzwerkschnittstellen-Bytes gesamt/Sekunde
-
Auslagerungsdatei % Verwendung
-
Physische Festplatte % Festplattenzeit
-
Processor % Processor Time
-
SQLServer: Puffer-Manager-Cache-Trefferquote
-
SQLServer:Lebenserwartung des Puffer-Managers
-
SQLServer:General Statistics Processes blocked
-
SQLServer:General Statistics User Connections
-
SQLServer:Locks Number of Deadlocks/sec
-
SQLServer:SQL Statistics Batch Requests/sec
-
System Processor Queue Length
Die folgenden Metriken werden für die Volumes überwacht, die mit der SQL-Server-Instance verbunden sind:
-
VolumeReadBytes
-
VolumeWriteBytes
-
VolumeReadops
-
VolumeWriteOps
-
VolumeTotalReadTime
-
VolumeToTalWriteTime
-
VolumeIdleTime
-
VolumeQueuelength
-
VolumeThroughputPercentage
-
VolumeConsumeDreadWriteOps
-
BurstBalance
Für dieses Szenario werden die Kosten gemäß der CloudWatch-Preise
-
Eigene Metriken
Für dieses Szenario werden 13 der oben genannten Metriken mit dem CloudWatch-Agent an CloudWatch gesendet. Diese Metriken werden als benutzerdefinierte Metriken behandelt. Die Kosten für jede benutzerdefinierte Metrik betragen 0,30 USD/Monat. Die Gesamtkosten für diese benutzerdefinierten Metriken betragen 13 x 0,30 USD = 3,90 USD pro Monat.
-
Alarme
Für dieses Szenario überwacht CloudWatch Application Insights insgesamt 26 Metriken, wodurch 26 Alarme erstellt werden. Die Kosten für jeden Alarm betragen 0,10 USD/Monat. Die Gesamtkosten für Alarme betragen 26 x 0,10 USD = 2,60 USD pro Monat.
-
Datenerfassung und Fehlerprotokolle
Die Kosten für die Datenerfassung betragen 0,05 USD pro GB und der Speicherplatz für das SQL-Server-Fehlerprotokoll beträgt 0,03 USD pro GB. Die Gesamtkosten für die Datenerfassung und das Fehlerprotokoll betragen 0,05 USD pro GB + 0,03 USD pro GB = 0,08 USD pro GB.
-
OpsItems von Amazon EC2 Systems Manager
Für jedes von CloudWatch Application Insights festgestellte Problem wird ein SSM OpsItem erstellt. Für Anzahl n an Problemen in Ihrer Anwendung belaufen sich die Gesamtkosten auf 0,00267 USD x n /Monat.
Zugehörige Services
Die folgenden Services werden zusammen mit CloudWatch Application Insights verwendet:
Zugehörige AWS-Sevices
-
Amazon CloudWatch bietet systemweiten Einblick in die Ressourcennutzung, die Anwendungsleistung und den Betriebsstatus. Der Service sammelt und verfolgt Metriken, sendet Alarmbenachrichtigungen, aktualisiert automatisch Ressourcen, die Sie anhand der von Ihnen definierten Regeln überwachen, und ermöglicht es Ihnen, Ihre eigenen benutzerdefinierten Metriken zu überwachen. CloudWatch Application Insights wird über CloudWatch speziell in den standardmäßigen operativen Dashboards von CloudWatch gestartet. Weitere Informationen finden Sie im Amazon CloudWatch-Benutzerhandbuch.
-
CloudWatch Container Insights sammelt, aggregiert und fasst Metriken und Protokolle von Ihren containerisierten Anwendungen und Microservices zusammen. Sie können Container Insights verwenden, um Amazon ECS, Amazon Elastic Kubernetes Service und Kubernetes-Plattformen auf Amazon EC2 zu überwachen. Wenn Application Insights auf den Container-Insights- oder Application-Insights-Konsolen aktiviert ist, zeigt Application Insights erkannte Probleme in Ihrem Container-Insights-Dashboard an. Weitere Informationen finden Sie unter Container Insights.
-
Amazon DynamoDB ist ein vollständig verwalteter NoSQL-Datenbankservice, mit dem Sie den Verwaltungsaufwand für den Betrieb und die Skalierung verteilter Datenbanken verringern, sodass Sie sich nicht um Hardwarebereitstellung, Einrichtung und Konfiguration, Replikation, Software-Patching oder Cluster-Skalierung kümmern müssen. DynamoDB bietet auch Verschlüsselung im Ruhezustand, wodurch der Betriebsaufwand und die Komplexität, die mit dem Schutz sensibler Daten verbunden sind, eliminiert werden.
-
Amazon EC2 stellt skalierbare Rechenkapazität in der AWS-Cloud bereit. Mit Amazon EC2 können Sie so viele oder so wenige virtuelle Server starten, wie Sie benötigen, die Sicherheit und das Netzwerk konfigurieren und den Speicher verwalten. Sie können nach hoch oder runter skalieren, um Anforderungsänderungen oder Nutzungsspitzen zu bewältigen, was Ihren Bedarf an Traffic-Prognosen reduziert. Weitere Informationen finden Sie im Amazon EC2-Benutzerhandbuch für Linux-Instances oder Amazon EC2-Handbuch für Windows-Instances.
-
Amazon Elastic Block Store (Amazon EBS) bietet Volumes für die Speicherung auf Blockebene, die in Verbindung mit Amazon-EC2-Instances verwendet werden. Amazon-EBS-Volumes verhalten sich wie unformatierte Blockgeräte. Sie können diese Volumes als Geräte auf Ihren Instances mounten. Amazon-EBS-Volumes, die einer Instance angefügt sind, werden als Speicher-Volumes bereitgestellt, die unabhängig von der Instance-Lebenszeit bestehen. Sie können ein Dateisystem über diesen Volumes erstellen oder sie auf dieselbe Art wie ein Blockgerät verwenden (so wie eine Festplatte). Sie können die Konfiguration eines Volumes, das einer Instance zugeordnet ist, dynamisch ändern. Weitere Informationen finden Sie im Benutzerhandbuch für Amazon EBS.
-
Amazon EC2 Auto Scaling hilft Ihnen sicherzustellen, dass Sie die richtige Anzahl von EC2-Instances zur Verfügung haben, um die Auslastung Ihrer Anwendung zu bewältigen. Weitere Informationen hierzu finden Sie im Amazon EC2 Auto Scaling-Benutzerhandbuch.
-
Elastic Load Balancingverteilt eingehende Anwendungen oder Netzwerkverkehr auf mehrere Ziele, wie EC2-Instances, Container und IP-Adressen, in mehreren Availability Zones. Weitere Informationen finden Sie im Elastic Load Balancing-Benutzerhandbuch.
-
IAM ist ein Webservice, der Ihnen hilft, den Zugriff auf AWS-Ressourcen für Ihre Benutzer sicher zu steuern. Verwenden Sie IAM, um zu steuern, wer Ihre AWS-Ressourcen verwenden darf (Authentifizierung), und um zu steuern, welche Ressourcen diese Benutzer verwenden dürfen und wie sie diese verwenden dürfen (Autorisierung). Weitere Informationen finden Sie unter Authentifizierung und Zugriffskontrolle für Amazon CloudWatch.
-
AWS Lambda erlaubt auch das Erstellen von Serverless-Anwendungen, bestehend aus Funktionen, die von Ereignissen ausgelöst werden, sowie deren automatische Bereitstellung mit CodePipeline und AWS CodeBuild. Weitere Informationen finden Sie unter AWS Lambda-Anwendungen.
-
AWS Launch Wizard für SQL Server reduziert den Zeitaufwand für die Bereitstellung einer SQL Server-Hochverfügbarkeitslösung in der Cloud. Sie geben Ihre Anwendungsanforderungen, einschließlich Leistung, Anzahl der Knoten und Konnektivität, in die Servicekonsole ein, und AWS Launch Wizard identifiziert die richtigen AWS-Ressourcen zum Bereitstellen und Ausführen Ihrer SQL-Server-Always-On-Anwendung.
-
AWS Resource Groups helfen Ihnen, die Ressourcen zu organisieren, aus denen Ihre Anwendung besteht. Mit Resource Groups können Sie Aufgaben für eine große Anzahl von Ressourcen gleichzeitig verwalten und automatisieren. Nur eine Ressourcengruppe kann für eine einzelne Anwendung registriert werden. Weitere Informationen finden Sie im AWS-Resource-Groups-Benutzerhandbuch.
-
Amazon SQS bietet eine sichere, dauerhafte und verfügbare gehostete Warteschlange, die es Ihnen ermöglicht, verteilte Softwaresysteme und -komponenten zu integrieren und zu entkoppeln. Weitere Informationen finden Sie im Amazon SQS-Benutzerhandbuch.
-
AWS Step Functions ist ein Serverless-Funktionskomposer, mit dem Sie eine Vielzahl von AWS-Dienstleistungen und Ressourcen, einschließlich AWS Lambda-Funktionen in strukturierte, visuelle Workflows sequenzieren können. Weitere Informationen finden Sie im AWS Step Functions-Benutzerhandbuch.
-
AWS SSM OpsCenter aggregiert und standardisiert OpsItems über Services hinweg und stellt kontextbezogene Untersuchungsdaten zu jedem OpsItem, zugehörigen OpsItems und verwandten Ressourcen bereit. OpsCenter bietet außerdem Systems Manager Automation-Dokumente (Runbooks), mit denen Sie Probleme schnell beheben können. Sie können durchsuchbare, benutzerdefinierte Daten für jedes OpsItem angeben. Sie können auch automatisch generierte Zusammenfassungsberichte über OpsItems nach Status und Quelle anzeigen. Weitere Informationen finden Sie im AWS Systems Manager-Benutzerhandbuch.
-
Amazon API Gateway ist ein AWS-Service zum Erstellen, Veröffentlichen, Warten, Überwachen und Sichern von REST-, HTTP- und WebSocket-APIs in jeder Größenordnung. API-Entwickler können APIs erstellen, die auf AWS oder andere Web-Services sowie auf Daten zugreifen können, die in der AWS Cloud gespeichert sind. Weitere Informationen finden Sie im Benutzerhandbuch für Amazon API Gateway.
Anmerkung
Application Insights unterstützt nur REST-API-Protokolle (v1 des API-Gateway-Services).
-
Amazon Elastic Container Service (Amazon ECS) ist ein vollständig verwalteter Container-Orchestrierungsservice Sie können Amazon ECS verwenden, um Ihre sensibelsten und geschäftskritischsten Anwendungen auszuführen. Weitere Informationen finden Sie im Entwicklerhandbuch zu Amazon Elastic Container Service.
-
Amazon Elastic Kubernetes Service (Amazon EKS) ist ein verwalteter Service, mit dem Sie Kubernetes auf AWS ausführen können, ohne Ihre eigene Kubernetes-Steuerungsebene oder -Knoten installieren, betreiben und warten zu müssen. Kubernetes ist ein Open-Source-System für eine automatische Bereitstellung, Skalierung und Verwaltung von Anwendungen in Containern. Weitere Informationen finden Sie im Amazon-EKS-Benutzerhandbuch.
-
Kubernetes auf Amazon EC2. Kubernetes ist eine Open-Source-Software, mit der Sie containerisierte Anwendungen in großem Umfang bereitstellen und verwalten können. Kubernetes verwaltet Cluster von Amazon-EC2-Computing-Instances und führt Container auf diesen Instances mit Prozessen für Bereitstellung, Wartung und Skalierung aus. Mit Kubernetes können Sie jede Art von containerisierten Anwendungen mit demselben Toolset On-Premises und in der Cloud ausführen. Weitere Informationen finden Sie in der Kubernetes-Dokumentation: Erste Schritte
. -
Amazon FSx hilft Ihnen, gängige Dateisysteme zu starten und auszuführen, die vollständig von AWS verwaltet werden. Mit Amazon FSx können Sie die Features und die Leistung gängiger Open-Source-Dateisysteme und kommerziell lizenzierter Dateisysteme nutzen, um zeitaufwändige Verwaltungsaufgaben zu vermeiden. Weitere Informationen finden Sie in der Amazon-FSx-Dokumentation.
-
Amazon Simple Notification Service (SNS) ist ein vollständig verwalteter Messaging-Dienst für die Kommunikation Anwendung–Anwendung sowie zu Anwendung–Mensch. Sie können Amazon SNS für die Überwachung durch Application Insights konfigurieren. Wenn Amazon SNS als Ressource für die Überwachung konfiguriert ist, verfolgt Application Insights SNS-Metriken, um festzustellen, warum SNS-Nachrichten Probleme haben oder fehlschlagen.
-
Amazon Elastic File System (Amazon EFS) ist ein vollständig verwaltetes elastisches NFS-Dateisystem zur Verwendung mit AWS Cloud-Services und On-Premises-Ressourcen. Es ist so konzipiert, dass es bei Bedarf auf Petabyte skaliert werden kann, ohne die Anwendungen zu unterbrechen. Es wird automatisch erweitert oder verkleinert, wenn Sie Dateien hinzufügen oder entfernen, wodurch die Notwendigkeit entfällt, Kapazität bereitzustellen und zu verwalten, um dem Wachstum gerecht zu werden. Weitere Informationen finden Sie in der Amazon-Elastic-File-System-Dokumentation.
Ähnliche Drittanbieterdienste
-
Für einige Workloads und Anwendungen, die in Application Insights überwacht werden, wird der Prometheus-JMX-Exporter mithilfe von AWS Systems Manager Distributor installiert, damit CloudWatch Application Insights Java-spezifische Metriken abrufen kann. Wenn Sie eine Java-Anwendung überwachen möchten, installiert Application Insights automatisch den Prometheus-JMX-Exporter für Sie.
Unterstützte Anwendungskomponenten
CloudWatch Application Insights scannt Ihre Ressourcengruppe, um Anwendungskomponenten zu identifizieren. Komponenten können eigenständig, automatisch gruppiert (z. B. Instances in einer Auto-Scaling-Gruppe oder hinter einem Load Balancer) oder benutzerdefiniert (durch Gruppierung einzelner Amazon-EC2-Instances) sein.
Die folgenden Komponenten werden von CloudWatch Application Insights unterstützt:
AWS-Komponenten
-
Amazon EC2
-
Amazon EBS
-
Amazon RDS
-
Elastic Load Balancing: Application Load Balancer und Classic Load Balancer (alle Ziel-Instances dieser Load Balancer werden identifiziert und konfiguriert).
-
Amazon-EC2-Auto-Scaling-Gruppen: AWS Auto Scaling (Auto-Scaling-Gruppen werden dynamisch für alle Ziel-Instances konfiguriert; wenn Ihre Anwendung skaliert wird, konfiguriert CloudWatch Application Insights automatisch die neuen Instances). Auto-Scaling-Gruppen werden für stackbasierte CloudFormation-Ressourcengruppen nicht unterstützt.
-
AWS Lambda
-
Amazon-Simple-Queue-Service (Amazon SQS)
-
Amazon-DynamoDB-Tabelle.
-
Amazon-S3-Bucket-Metriken
-
AWS Step Functions
-
Amazon-API-Gateway-REST-API-Phasen
-
Amazon Elastic Container Service (Amazon ECS): Cluster, Service und Aufgabe
-
Amazon Elastic Kubernetes Service (Amazon EKS): Cluster
-
Kubernetes auf Amazon EC2: Kubernetes-Cluster läuft auf EC2
-
Amazon SNS-Thema
Alle anderen Ressourcen vom Komponententyp werden derzeit nicht von CloudWatch Application Insights verfolgt. Wenn ein unterstützter Komponententyp nicht in Ihrer Application Insights-Anwendung erscheint, kann es sein, dass die Komponente bereits von einer anderen Anwendung registriert und verwaltet wird, die Sie besitzen und die von Application Insights überwacht wird.
Unterstützte Technologie-Stacks
Sie können CloudWatch Application Insights verwenden, um Ihre Anwendungen zu überwachen, die unter Windows-Server- und Linux-Betriebssystemen ausgeführt werden, indem Sie die Dropdown-Menüoption auf Anwendungsebene für eine der folgenden Technologien auswählen:
-
Frontend: Microsoft Internet Information Services (IIS) Webserver
-
Worker-Ebene:
-
.NET Framework.
-
.NET Core
-
-
Anwendungen:
Java
SAP NetWeaver Standard-, verteilte und Hochverfügbarkeitsimplementierungen
-
Active Directory
-
SharePoint
-
Datenbanken:
-
Microsoft SQL Server in Amazon RDS oder Amazon EC2 (einschließlich SQL Server-Hochverfügbarkeitskonfigurationen. Siehe Beispiele für die Komponentenkonfiguration)
-
MySQL läuft auf Amazon RDS, Amazon Aurora oder Amazon EC2
-
PostgreSQL läuft auf Amazon RDS oder Amazon EC2
-
Amazon-DynamoDB-Tabelle.
-
Oracle läuft auf Amazon RDS oder Amazon EC2
-
SAP HANA-Datenbank auf einer einzelnen Amazon-EC2-Instance und mehreren EC2-Instances
-
Cross-AZ-SAP-HANA-Datenbankeinrichtung, hohe Verfügbarkeit
-
SAP-Sybase-ASE-Datenbank auf einer einzelnen Amazon-EC2-Instance
-
Cross-AZ-SAP-Sybase-ASE-Datenbankeinrichtung, hohe Verfügbarkeit
-
Wenn keiner der oben aufgeführten Technologiestacks auf Ihre Anwendungsressourcen zutrifft, können Sie Ihren Anwendungsstack überwachen, indem Sie im Dropdown-Menü der Anwendungsebene auf der Seite Manage monitoring (Überwachung verwalten) die Option Custom (Benutzerdefiniert) wählen.