Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
CloudWatch Lösung: Tomcat-Workload auf Amazon EC2
Diese Lösung hilft Ihnen bei der Konfiguration der out-of-the-box Metrikerfassung mithilfe von CloudWatch Agenten für Tomcat-Server, die auf Instanzen ausgeführt werden. EC2 Darüber hinaus hilft sie Ihnen bei der Einrichtung eines vorkonfigurierten Dashboards CloudWatch . Allgemeine Informationen zu allen CloudWatch Observability-Lösungen finden Sie unter. CloudWatch Observability-Lösungen
Themen
Voraussetzungen
Diese Lösung ist für die folgenden Bedingungen relevant:
Unterstützte Versionen: Tomcat-Versionen 9, 10.1 und 11 (Beta)
Berechnung: Amazon EC2
Unterstützt bis zu 500 EC2 Instanzen für alle Tomcat-Workloads in einem bestimmten AWS-Region
Aktuelle Version des Agenten CloudWatch
-
Der SSM-Agent ist auf der EC2 Instanz installiert
Anmerkung
AWS Systems Manager (SSM-Agent) ist auf einigen Amazon Machine Images (AMIs) vorinstalliert, die von vertrauenswürdigen Drittanbietern AWS bereitgestellt werden. Wenn der Agent nicht installiert ist, können Sie ihn manuell installieren, indem Sie das Verfahren für Ihren Betriebssystemtyp verwenden.
Vorteile
Die Lösung ermöglicht die Tomcat-Serverüberwachung und bietet wertvolle Erkenntnisse für die folgenden Anwendungsfälle:
-
Erkennen Sie Tomcat-Serverfehler und Leistungsprobleme.
-
Überwachen Sie den Netzwerkverkehr auf Datenübertragungsprobleme.
-
Verfolgen Sie die Thread-Nutzung und aktive Benutzersitzungen.
-
Analysieren Sie die zugrunde liegende JVM-Leistung für den Tomcat-Server.
Im Folgenden sind die wichtigsten Vorteile der Lösung aufgeführt:
-
Automatisiert die Erfassung von Metriken für Apache Tomcat und die zugrunde liegende JVM mithilfe der CloudWatch Agentenkonfiguration, wodurch die manuelle Instrumentierung entfällt.
-
Bietet ein vorkonfiguriertes, konsolidiertes CloudWatch Dashboard für Apache Tomcat- und JVM-Metriken. Das Dashboard verarbeitet automatisch Metriken von neuen EC2 Tomcat-Instanzen, die mit der Lösung konfiguriert wurden, auch wenn diese Metriken bei der ersten Erstellung des Dashboards noch nicht vorhanden waren. Es ermöglicht Ihnen auch, die Metriken zur einfacheren Fokussierung und Verwaltung in logische Anwendungen zu gruppieren.
Die folgende Abbildung zeigt ein Beispiel für das Dashboard für diese Lösung.

Kosten
Diese Lösung erstellt und verwendet Ressourcen in Ihrem Konto. Ihnen wird die Standardnutzung in Rechnung gestellt, einschließlich der folgenden Kosten:
Alle vom CloudWatch Agenten gesammelten Metriken werden als benutzerdefinierte Metriken berechnet. Die Anzahl der von dieser Lösung verwendeten Metriken hängt von der Anzahl der EC2 Hosts ab.
-
Jeder für die Lösung konfigurierte Tomcat-Host veröffentlicht insgesamt 27 Metriken plus eine Metrik (
disk_used_percent
), wobei die Anzahl der Metriken von der Anzahl der Festplattenpfade für diesen Host abhängt.
-
Ein benutzerdefiniertes Dashboard.
API-Operationen, die vom CloudWatch Agenten zur Veröffentlichung der Metriken angefordert wurden. Bei der Standardkonfiguration für diese Lösung ruft der CloudWatch Agent die PutMetricDataeinmal pro Minute auf. Das bedeutet, dass die PutMetricDataAPI innerhalb eines 30-Tage-Monats für jeden EC2 Host aufgerufen
30*24*60=43,200
wird.
Weitere Informationen zur CloudWatch Preisgestaltung finden Sie unter CloudWatch Amazon-Preise
Mit dem Preisrechner können Sie die ungefähren monatlichen Kosten für die Nutzung dieser Lösung abschätzen.
Um den Preisrechner zur Schätzung Ihrer monatlichen Lösungskosten zu verwenden
-
Öffnen Sie den CloudWatch Amazon-Preisrechner
. -
Geben Sie im Abschnitt Metriken für Anzahl der Metriken den Wert ein
(27 + average number of disk paths per EC2 host) * number of EC2 instances configured for this solution
. -
Geben Sie im APIsAbschnitt für Anzahl der API-Anfragen den folgenden Wert ein
43200 * number of EC2 instances configured for this solution
.Standardmäßig führt die Lösung für jeden EC2 Host einen PutMetricDataVorgang pro Minute durch.
Geben Sie im Abschnitt Dashboards und Alarme für Anzahl der Dashboards den Wert ein.
1
-
Ihre geschätzten monatlichen Kosten finden Sie unten im Preisrechner.
CloudWatch Agentenkonfiguration für diese Lösung
Der CloudWatch Agent ist eine Software, die kontinuierlich und autonom auf Ihren Servern und in containerisierten Umgebungen ausgeführt wird. Es sammelt Metriken, Logs und Traces aus Ihrer Infrastruktur und Ihren Anwendungen und sendet sie an CloudWatch X-Ray.
Weitere Informationen über den CloudWatch Agenten finden Sie unterErfassen Sie mit dem CloudWatch Agenten Metriken, Logs und Traces.
Die Agentenkonfiguration in dieser Lösung erfasst die grundlegenden Metriken für Tomcat, JVM und. EC2 Der CloudWatch Agent kann so konfiguriert werden, dass er standardmäßig mehr JVM-Metriken sammelt, als das Dashboard anzeigt. Eine Liste aller Tomcat-Metriken, die Sie sammeln können, finden Sie unter. Sammeln Sie Tomcat-Metriken Eine Liste aller JVM-Metriken, die Sie sammeln können, finden Sie unter. Sammeln Sie JVM-Metriken Eine Liste der EC2 Amazon-Metriken finden Sie unterVom CloudWatch Agenten auf Linux- und macOS-Instances gesammelte Metriken.
Machen Sie JMX-Ports für den Tomcat-Server verfügbar
Der CloudWatch Agent verwendet JMX, um die Metriken für den Tomcat-Server und den JVM-Prozess zu sammeln. Um dies zu ermöglichen, müssen Sie den JMX-Port von Ihren Servern aus verfügbar machen. Um einen JMX-Port für die Überwachung und Verwaltung zu aktivieren, würden Sie die Systemeigenschaften für Ihre Tomcat-Server festlegen. Sie können die Umgebungsvariable verwendenCATALINA_OPTS
, um die erforderlichen Systemeigenschaften für Tomcat festzulegen. Sehen Sie sich die Startskripte und Konfigurationsdateien Ihres Tomcat-Servers an, wo Sie die Umgebungsvariable am besten einstellen können. Stellen Sie sicher, dass Sie eine ungenutzte Portnummer angeben. Nach der Änderung müssen Sie den Server neu starten.
export CATALINA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=<<port-number>> -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"
In diesem Beispiel wird nicht authentifiziertes JMX eingerichtet. Wenn Ihre Sicherheitsrichtlinien/Anforderungen erfordern, dass Sie JMX mit Kennwortauthentifizierung oder SSL für den Remotezugriff aktivieren, finden Sie in der JMX-Dokumentation
Führen Sie den Befehl aus, um den JMX-Port zu überprüfen. ps aux | grep jmxremote.port
Die Ergebnisse sollten zeigen, dass der JMX-Port für die JVM-Prozesse festgelegt wurde.
Agentenkonfiguration für die Tomcat-Lösung
Die vom Agenten gesammelten Metriken sind in der Agentenkonfiguration definiert. Die Lösung bietet Agentenkonfigurationen zur Erfassung der empfohlenen Metriken mit geeigneten Dimensionen für das Dashboard der Lösung.
Die Schritte zur Bereitstellung der Lösung werden weiter unten in beschriebenStellen Sie den Agenten für Ihre Lösung bereit. Die folgenden Informationen sollen Ihnen helfen zu verstehen, wie Sie die Agentenkonfiguration an Ihre Umgebung anpassen können.
Sie müssen einige Teile der folgenden Agentenkonfiguration an Ihre Umgebung anpassen:
-
Die JMX-Portnummer ist die Portnummer, die Sie im vorherigen Abschnitt dieser Dokumentation konfiguriert haben. Die Portnummer steht in der
endpoint
Zeile in der Konfiguration. -
AppName
— Dies wird als Dimension für die gesammelten Tomcat-Anwendungsmetriken verwendet. Geben Sie einen aussagekräftigen Namen ein, der die Gruppierung für die Instanzen darstellt, auf denen die Tomcat-Anwendung ausgeführt wird. -
ProcessGroupName
— Dies wird als Dimension für JVM-Metriken verwendet, die für Tomcat-Hosts gesammelt wurden. Geben Sie den Wert an, der mit dem obigen Wert identischAppName
ist. Dies ermöglicht die Anzeige der JVM-Metriken derselben Tomcat-App-Gruppe als Server-Metriken im Lösungs-Dashboard.
Wenn Sie beispielsweise zwei Tomcat-Apps in derselben App ausführen AWS-Konto, eine für die billing-system
Anwendung und eine für die order-system
Anwendung, können Sie die ProcessGroupName
Dimensionen AppName
und in der Agentenkonfiguration jeder Instanz entsprechend festlegen.
-
Legen Sie für die
billing-system
AnwendungsinstanzenAppName=billing-system
undProcessGroupName=billing-system
fest. -
Legen Sie für die
order-system
Anwendungsinstanzen den WertAppName=order-system
und festProcessGroupName=order-system
.
Wenn Sie diese Richtlinien befolgen, gruppiert die Lösung die Metriken automatisch anhand der ProcessGroupName
Dimensionen AppName
und. Das Dashboard wird Drop-down-Optionen enthalten, mit denen Sie Metriken für eine bestimmte Tomcat-Anwendung auswählen und anzeigen können, sodass Sie die Leistung einzelner Anwendungen separat überwachen können.
Agentenkonfiguration für Tomcat-Hosts
Verwenden Sie die folgende CloudWatch Agentenkonfiguration für EC2 Instanzen, auf denen Ihre Tomcat-Anwendungen bereitgestellt werden. Die Konfiguration wird als Parameter im Parameterspeicher von SSM gespeichert, wie weiter unten beschrieben. Schritt 2: Speichern Sie die empfohlene CloudWatch Agentenkonfigurationsdatei im Systems Manager Parameter Store
AppName
Ersetzen Sie ihn durch einen aussagekräftigen Namen, der für die Tomcat-Anwendung steht, zu der die Instanzen gehören. port-number
Ersetzen Sie ihn durch den JMX-Port Ihres Tomcat-Servers. Wenn JMX mit Kennwortauthentifizierung oder SSL für den Fernzugriff aktiviert wurde, finden Sie je nach Bedarf weitere Informationen Erfassen Sie Metriken zu Java Management Extensions (JMX) zur Einrichtung von TLS oder zur Autorisierung in der Agentenkonfiguration.
Die in dieser Konfiguration angezeigten EC2 Metriken (Konfiguration, die außerhalb des JMX-Blocks angezeigt wird) funktionieren nur für Linux- und macOS-Instances. Wenn Sie Windows-Instanzen verwenden, können Sie diese Metriken in der Konfiguration weglassen. Informationen zu Messwerten, die auf Windows-Instanzen erfasst wurden, finden Sie unterVom CloudWatch Agenten auf Windows Server-Instanzen gesammelte Metriken.
{ "metrics": { "namespace": "CWAgent", "append_dimensions": { "InstanceId": "${aws:InstanceId}" }, "metrics_collected": { "jmx": [ { "endpoint": "localhost:
port-number
", "tomcat": { "measurement": [ "tomcat.sessions", "tomcat.errors", "tomcat.processing_time", "tomcat.traffic", "tomcat.max_time", "tomcat.request_count", "tomcat.threads" ] }, "append_dimensions": { "AppName": "AppName
" } }, { "endpoint": "localhost:port-number
", "jvm": { "measurement": [ "jvm.classes.loaded", "jvm.gc.collections.count", "jvm.gc.collections.elapsed", "jvm.memory.heap.committed", "jvm.memory.heap.max", "jvm.memory.heap.used", "jvm.memory.nonheap.committed", "jvm.memory.nonheap.max", "jvm.memory.nonheap.used", "jvm.threads.count" ] }, "append_dimensions": { "ProcessGroupName": "AppName
" } } ], "disk": { "measurement": [ "used_percent" ] }, "mem": { "measurement": [ "used_percent" ] }, "swap": { "measurement": [ "used_percent" ] }, "netstat": { "measurement": [ "tcp_established", "tcp_time_wait" ] } } } }
Stellen Sie den Agenten für Ihre Lösung bereit
Je nach Anwendungsfall gibt es mehrere Ansätze für die Installation des CloudWatch Agenten. Wir empfehlen die Verwendung von Systems Manager für diese Lösung. Es bietet eine Konsolenerfahrung und erleichtert die Verwaltung einer Flotte verwalteter Server innerhalb eines einzigen AWS Kontos. Die Anweisungen in diesem Abschnitt verwenden Systems Manager und sind für den Fall vorgesehen, dass der CloudWatch Agent nicht mit vorhandenen Konfigurationen ausgeführt wird. Sie können überprüfen, ob der CloudWatch Agent ausgeführt wird, indem Sie die Schritte unter befolgenStellen Sie sicher, dass der CloudWatch Agent läuft.
Wenn Sie den CloudWatch Agenten bereits auf den EC2 Hosts ausführen, auf denen die JVM-Anwendung bereitgestellt ist, und die Agentenkonfigurationen verwalten, können Sie die Anweisungen in diesem Abschnitt überspringen und Ihren bestehenden Bereitstellungsmechanismus verwenden, um die Konfiguration zu aktualisieren. Stellen Sie sicher, dass Sie die Agentenkonfiguration von JVM mit Ihrer vorhandenen Agentenkonfiguration zusammenführen und dann die zusammengeführte Konfiguration bereitstellen. Wenn Sie Systems Manager verwenden, um die Konfiguration für den CloudWatch Agenten zu speichern und zu verwalten, können Sie die Konfiguration mit dem vorhandenen Parameterwert zusammenführen. Weitere Informationen finden Sie unter CloudWatch Agent-Konfigurationsdateien verwalten.
Anmerkung
Wenn Sie Systems Manager zur Bereitstellung der folgenden CloudWatch Agentenkonfigurationen verwenden, werden alle vorhandenen CloudWatch Agentenkonfigurationen auf Ihren EC2 Instanzen ersetzt oder überschrieben. Sie können diese Konfiguration an Ihre individuelle Umgebung oder Ihren Anwendungsfall anpassen. Die in dieser Lösung definierten Metriken sind die Mindestwerte, die für das empfohlene Dashboard erforderlich sind.
Der Bereitstellungsprozess umfasst die folgenden Schritte:
Schritt 1: Stellen Sie sicher, dass die EC2 Ziel-Instances über die erforderlichen IAM-Berechtigungen verfügen.
Schritt 2: Speichern Sie die empfohlene Agentenkonfigurationsdatei im Systems Manager Parameter Store.
Schritt 3: Installieren Sie den CloudWatch Agenten mithilfe eines AWS CloudFormation Stacks auf einer oder mehreren EC2 Instanzen.
Schritt 4: Stellen Sie sicher, dass das Agenten-Setup richtig konfiguriert ist.
Schritt 1: Stellen Sie sicher, dass die EC2 Zielinstanzen über die erforderlichen IAM-Berechtigungen verfügen
Sie müssen Systems Manager die Erlaubnis erteilen, den CloudWatch Agenten zu installieren und zu konfigurieren. Sie müssen dem CloudWatch Agenten auch die Erlaubnis erteilen, Telemetriedaten von Ihrer EC2 Instanz an zu CloudWatch veröffentlichen. Stellen Sie sicher, dass der IAM-Rolle, die der Instance zugewiesen ist, die Amazon IAM-Richtlinien CloudWatchAgentServerPolicyund die Amazon SSMManaged InstanceCore IAM-Richtlinien angehängt sind.
-
Informationen zum Erstellen einer Rolle finden Sie unter Erstellen Sie IAM-Rollen zur Verwendung mit dem CloudWatch Agenten auf Amazon-Instances EC2 .
-
Nachdem die Rolle erstellt wurde, fügen Sie sie Ihren EC2 Instances hinzu. Folgen Sie den Schritten unter Eine Instance mit einer IAM-Rolle starten, um beim Starten einer neuen EC2 Instance eine Rolle zuzuweisen. Um einer vorhandenen EC2 Instance eine Rolle zuzuweisen, folgen Sie den Schritten unter Eine IAM-Rolle an eine Instance anhängen.
Schritt 2: Speichern Sie die empfohlene CloudWatch Agentenkonfigurationsdatei im Systems Manager Parameter Store
Parameter Store vereinfacht die Installation des CloudWatch Agenten auf einer EC2 Instanz, indem Konfigurationsparameter sicher gespeichert und verwaltet werden, sodass keine hartcodierten Werte erforderlich sind. Dies gewährleistet einen sichereren und flexibleren Bereitstellungsprozess, ermöglicht eine zentrale Verwaltung und einfachere Aktualisierungen von Konfigurationen über mehrere Instanzen hinweg.
Gehen Sie wie folgt vor, um die empfohlene CloudWatch Agentenkonfigurationsdatei als Parameter im Parameter Store zu speichern.
Um die CloudWatch Agenten-Konfigurationsdatei als Parameter zu erstellen
Öffnen Sie die AWS Systems Manager Konsole unter https://console.aws.amazon.com/systems-manager/
. Wählen Sie im Navigationsbereich Application Management, Parameter Store aus.
-
Gehen Sie wie folgt vor, um einen neuen Parameter für die Konfiguration zu erstellen.
-
Wählen Sie Parameter erstellen aus.
-
Geben Sie im Feld Name einen Namen ein, mit dem Sie in späteren Schritten auf die CloudWatch Agenten-Konfigurationsdatei verweisen werden. Beispiel,
AmazonCloudWatch-Tomcat-Configuration
. -
(Optional) Geben Sie im Feld Beschreibung eine Beschreibung für den Parameter ein.
-
Wählen Sie für Parameterebene die Option Standard aus.
-
Wählen Sie unter Type (Typ) die Option String (Zeichenfolge) aus.
Wählen Sie als Datentyp Text aus.
-
Fügen Sie in das Feld Wert den entsprechenden JSON-Block ein, der unter aufgeführt warAgentenkonfiguration für Tomcat-Hosts. Achten Sie darauf, den Wert und die Portnummer der Gruppierungsdimension wie beschrieben anzupassen.
-
Wählen Sie Parameter erstellen aus.
-
Schritt 3: Installieren Sie den CloudWatch Agenten und wenden Sie die Konfiguration mithilfe einer Vorlage an AWS CloudFormation
Sie können AWS CloudFormation damit den Agenten installieren und ihn so konfigurieren, dass er die CloudWatch Agentenkonfiguration verwendet, die Sie in den vorherigen Schritten erstellt haben.
Um den CloudWatch Agenten für diese Lösung zu installieren und zu konfigurieren
-
Öffnen Sie den AWS CloudFormation Quick Create Stack Wizard über diesen Link: https://console.aws.amazon.com/cloudformation/Home? #/ stacks/quickcreate?templateURL=https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/CloudWatchAgent/CFN/v1.0.0/cw agent-installation-template -1.0.0.json
. -
Stellen Sie sicher, dass die ausgewählte Region auf der Konsole die Region ist, in der der Tomcat-Workload ausgeführt wird.
-
Geben Sie unter Stackname einen Namen zur Identifizierung dieses Stacks ein, z. B.
CWAgentInstallationStack
-
Geben Sie im Abschnitt Parameter Folgendes an:
-
Geben Sie für CloudWatchAgentConfigSSM den Namen des Systems Manager Manager-Parameters für die Agentenkonfiguration ein, die Sie zuvor erstellt haben, z. B.
AmazonCloudWatch-Tomcat-Configuration
-
Um die Zielinstanzen auszuwählen, haben Sie zwei Möglichkeiten.
-
Geben Sie für InstanceIdseine durch Kommas getrennte Liste der Instanzen eine Liste der Instanzen IDs an, auf IDs denen Sie den CloudWatch Agenten mit dieser Konfiguration installieren möchten. Sie können eine einzelne Instanz oder mehrere Instanzen auflisten.
-
Wenn Sie die Bereitstellung in großem Umfang durchführen, können Sie die TagKeyund die entsprechenden TagValueOptionen angeben, sodass alle EC2 Instances mit diesem Tag und Wert als Ziel ausgewählt werden. Wenn Sie eine angeben TagKey, müssen Sie eine entsprechende angeben TagValue. (Geben Sie für eine Auto Scaling Scaling-Gruppe
aws:autoscaling:groupName
für die TagKeyund den Namen der Auto Scaling Scaling-Gruppe an, die TagValueauf allen Instances innerhalb der Auto Scaling Scaling-Gruppe bereitgestellt werden soll.)Wenn Sie InstanceIdssowohl die als auch die TagKeysParameter angeben, haben die InstanceIdsVorrang und die Tags werden ignoriert.
-
-
-
Überprüfen Sie die Einstellungen und wählen Sie dann Stapel erstellen.
Wenn Sie die Vorlagendatei zunächst bearbeiten möchten, um sie anzupassen, wählen Sie unter Assistent zum Erstellen von Stacks die Option Vorlagendatei hochladen, um die bearbeitete Vorlage hochzuladen. Weitere Informationen finden Sie unter Einen Stack auf der AWS CloudFormation Konsole erstellen. Sie können den folgenden Link verwenden, um die Vorlage herunterzuladen: https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/CloudWatchAgent/CFN/v1.0.0/cw- agent-installation-template -1.0.0.json
Anmerkung
Nach Abschluss dieses Schritts wird dieser Systems Manager Manager-Parameter den CloudWatch Agenten zugeordnet, die in den Zielinstanzen ausgeführt werden. Dies bedeutet, dass:
-
Wenn der Systems Manager Manager-Parameter gelöscht wird, wird der Agent gestoppt.
-
Wenn der Systems Manager Manager-Parameter bearbeitet wird, werden die Konfigurationsänderungen automatisch in der geplanten Häufigkeit, die standardmäßig 30 Tage beträgt, für den Agenten übernommen.
-
Wenn Sie Änderungen an diesem Systems Manager Manager-Parameter sofort anwenden möchten, müssen Sie diesen Schritt erneut ausführen. Weitere Informationen zu Zuordnungen finden Sie unter Arbeiten mit Zuordnungen in Systems Manager.
Schritt 4: Stellen Sie sicher, dass das Agenten-Setup richtig konfiguriert ist
Sie können überprüfen, ob der CloudWatch Agent installiert ist, indem Sie die Schritte unter befolgenStellen Sie sicher, dass der CloudWatch Agent läuft. Wenn der CloudWatch Agent nicht installiert ist und nicht ausgeführt wird, stellen Sie sicher, dass Sie alles richtig eingerichtet haben.
-
Stellen Sie sicher, dass Sie der EC2 Instanz eine Rolle mit den richtigen Berechtigungen zugewiesen haben, wie unter beschriebenSchritt 1: Stellen Sie sicher, dass die EC2 Zielinstanzen über die erforderlichen IAM-Berechtigungen verfügen.
-
Stellen Sie sicher, dass Sie das JSON für den Systems Manager Manager-Parameter korrekt konfiguriert haben. Führen Sie die Schritte unter Fehlerbehebung bei der Installation des CloudWatch Agenten mit AWS CloudFormation aus.
Wenn alles korrekt eingerichtet ist, sollten Sie sehen, auf welcher Tomcat-Metriken veröffentlicht werden. CloudWatch Sie können in der CloudWatch Konsole nachsehen, ob sie veröffentlicht wurden.
Um zu überprüfen, ob Tomcat-Metriken veröffentlicht werden CloudWatch
Öffnen Sie die CloudWatch Konsole unter. https://console.aws.amazon.com/cloudwatch/
Wählen Sie Metriken, Alle Metriken aus.
Vergewissern Sie sich, dass Sie die Region ausgewählt haben, in der Sie die Lösung bereitgestellt haben, und wählen Sie Benutzerdefinierte Namespaces, aus. CWAgent
Suchen Sie nach den Metriken, die im Abschnitt zur Agentenkonfiguration dieses Dokuments erwähnt werden, z. B.
tomcat.errors
Wenn Sie Ergebnisse für diese Metriken sehen, werden die Metriken unter veröffentlicht CloudWatch.
Erstellen Sie das Tomcat-Lösungs-Dashboard
In diesem Dashboard werden die neu ausgegebenen Metriken angezeigt, wobei sowohl der Tomcat-Anwendungsserver als auch die zugrunde liegende JVM angezeigt werden. Dieses Dashboard bietet einen Überblick über den Zustand Ihres Tomcat-Workloads mit den wichtigsten Mitwirkenden. In der Ansicht mit den meisten Mitwirkenden werden die 10 wichtigsten Widgets pro Metrik angezeigt. Auf diese Weise können Sie Ausreißer auf einen Blick erkennen. Das Dashboard bietet auch einen Überblick über den Cluster, indem es Metriken für alle Instanzen aggregiert und präsentiert und so eine allgemeine Zusammenfassung des allgemeinen Zustands und des Betriebszustands des Clusters bietet.
Das Lösungs-Dashboard zeigt keine EC2 Metriken an. Um EC2 Metriken anzuzeigen, müssen Sie das EC2 automatische Dashboard verwenden, um die EC2 Verkaufsmetriken zu sehen, und das EC2 Konsolen-Dashboard verwenden, um die vom CloudWatch Agenten gesammelten EC2 Metriken zu sehen. Weitere Informationen zu automatischen Dashboards für finden Sie AWS-Services unter. Ein CloudWatch Dashboard für einen einzelnen AWS Dienst anzeigen
Um das Dashboard zu erstellen, können Sie die folgenden Optionen verwenden:
Verwenden Sie die CloudWatch Konsole, um das Dashboard zu erstellen.
Verwenden Sie die AWS CloudFormation Konsole, um das Dashboard bereitzustellen.
Laden Sie die AWS CloudFormation Infrastruktur als Code herunter und integrieren Sie sie als Teil Ihrer Continuous Integration (CI) -Automatisierung.
Wenn Sie die CloudWatch Konsole zum Erstellen eines Dashboards verwenden, können Sie eine Vorschau des Dashboards anzeigen, bevor Sie es erstellen und bezahlen.
Anmerkung
Das AWS CloudFormation in dieser Lösung erstellte Dashboard zeigt Metriken aus der Region an, in der die Lösung bereitgestellt wird. Stellen Sie sicher, dass Sie den AWS CloudFormation Stack in der Region erstellen, in der Ihre Tomcat-Metriken veröffentlicht werden.
Wenn Sie einen anderen benutzerdefinierten Namespace als CWAgent
in der CloudWatch Agentenkonfiguration angegeben haben, müssen Sie die AWS CloudFormation Vorlage für das Dashboard so ändern, dass sie durch den von Ihnen verwendeten benutzerdefinierten Namespace CWAgent
ersetzt wird.
Um das Dashboard über die Konsole zu erstellen CloudWatch
Anmerkung
In Lösungs-Dashboards werden derzeit nur Metriken zur Garbage-Collector angezeigt, die sich auf die Garbage-Collector beziehen. Dabei handelt es sich um den Standard-Collector für die neuesten Java-Versionen. Wenn Sie einen anderen Garbage-Collection-Algorithmus verwenden, sind die Widgets, die sich auf die Garbage-Collection beziehen, leer. Sie können diese Widgets jedoch anpassen, indem Sie die CloudFormation Dashboard-Vorlage ändern und den entsprechenden Garbage-Collection-Typ auf die Namensdimension der Messwerte anwenden, die sich auf die Müllsammlung beziehen. Wenn Sie beispielsweise die parallele Garbage-Collection verwenden, ändern Sie den Wert der name=\"G1 Young Generation\"
Metrik Garbage-Collection aufjvm.gc.collections.count
. name=\"Parallel GC\"
-
Öffnen Sie das CloudWatch Console Create Dashboard über diesen Link: https://console.aws.amazon.com/cloudwatch/home? #dashboards? ApacheTomcatOnEcDashboardTemplate=
2&referrer=os-catalog. -
Stellen Sie sicher, dass die ausgewählte Region auf der Konsole die Region ist, in der der Tomcat-Workload ausgeführt wird.
-
Geben Sie den Namen des Dashboards ein und wählen Sie dann Create Dashboard aus.
Um dieses Dashboard leicht von ähnlichen Dashboards in anderen Regionen zu unterscheiden, empfehlen wir, den Namen der Region in den Namen des Dashboards aufzunehmen, z. B.
TomcatDashboard-us-east-1
-
Zeigen Sie eine Vorschau des Dashboards an und wählen Sie Speichern, um das Dashboard zu erstellen.
Um das Dashboard zu erstellen, verwenden Sie AWS CloudFormation
-
Öffnen Sie den Assistenten AWS CloudFormation zum schnellen Erstellen von Stacks über diesen Link: https://console.aws.amazon.com/cloudformation/Home? #/ stacks/quickcreate?templateURL=https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/Tomcat_EC2/CloudWatch/CFN/v1.0.0/dashboard -template-1.0.0.json
. -
Stellen Sie sicher, dass die ausgewählte Region auf der Konsole die Region ist, in der der Tomcat-Workload ausgeführt wird.
-
Geben Sie unter Stackname einen Namen zur Identifizierung dieses Stacks ein, z. B.
TomcatDashboard-us-east-1
-
Geben Sie im Abschnitt Parameter den Namen des Dashboards unter dem DashboardNameParameter an.
-
Um dieses Dashboard leicht von ähnlichen Dashboards in anderen Regionen zu unterscheiden, empfehlen wir, den Namen der Region in den Namen des Dashboards aufzunehmen, z. B.
TomcatDashboard-us-east-1
-
Bestätigen Sie die Zugriffsmöglichkeiten für Transformationen unter Funktionen und Transformationen. Beachten Sie, dass CloudFormation dadurch keine IAM-Ressourcen hinzugefügt werden.
-
Überprüfen Sie die Einstellungen und wählen Sie dann Stapel erstellen aus.
-
Wenn der Stack-Status CREATE_COMPLETE lautet, wählen Sie unter dem erstellten Stack die Registerkarte Ressourcen und dann den Link unter Physikalische ID, um zum Dashboard zu gelangen. Sie können auch in der CloudWatch Konsole auf das Dashboard zugreifen, indem Sie im linken Navigationsbereich der Konsole Dashboards auswählen und den Namen des Dashboards unter Benutzerdefinierte Dashboards suchen.
Wenn Sie die Vorlagendatei bearbeiten möchten, um sie für einen beliebigen Zweck anzupassen, können Sie die bearbeitete Vorlage mithilfe der Option Vorlagendatei hochladen unter dem Assistenten zum Erstellen von Stacks hochladen. Weitere Informationen finden Sie unter Einen Stack auf der AWS CloudFormation Konsole erstellen. Sie können diesen Link verwenden, um die Vorlage herunterzuladen: https://aws-observability-solutions-prod-us-east-1.s3.us-east-1.amazonaws.com/Tomcat_EC2/CloudWatch/CFN/v1.0.0/dashboard-template-1.0.0.json
Anmerkung
In Lösungs-Dashboards werden derzeit nur Metriken im Zusammenhang mit der Garbage-Collector angezeigt, die sich auf die Garbage-Collector beziehen. Dabei handelt es sich um den Standard-Collector für die neuesten Java-Versionen. Wenn Sie einen anderen Garbage-Collection-Algorithmus verwenden, sind die Widgets, die sich auf die Garbage-Collection beziehen, leer. Sie können diese Widgets jedoch anpassen, indem Sie die CloudFormation Dashboard-Vorlage ändern und den entsprechenden Garbage-Collection-Typ auf die Namensdimension der Messwerte anwenden, die sich auf die Müllsammlung beziehen. Wenn Sie beispielsweise die parallele Garbage-Collection verwenden, ändern Sie den Wert der name=\"G1 Young Generation\"
Metrik Garbage-Collection aufjvm.gc.collections.count
. name=\"Parallel GC\"
Beginnen Sie mit dem Tomcat-Monitoring-Dashboard
Hier sind ein paar Aufgaben, die Sie mit dem neuen Tomcat-Dashboard ausprobieren können. Mit diesen Aufgaben können Sie überprüfen, ob das Dashboard ordnungsgemäß funktioniert, und Sie erhalten praktische Erfahrungen mit der Überwachung einer Tomcat-Anwendung. Wenn Sie diese ausprobieren, werden Sie sich mit der Navigation im Dashboard und der Interpretation der visualisierten Metriken vertraut machen.
Verwenden Sie die Drop-down-Liste
Das Dashboard bietet oben eine Dropdownliste, mit der Sie die spezifische Tomcat-Anwendung, die Sie überwachen möchten, filtern und auswählen können. Um Metriken für eine bestimmte Tomcat-Anwendung anzuzeigen, wählen Sie den Namen der Anwendung in der Dropdownliste Tomcat-App aus.
Überprüfen Sie den Zustand der Anwendung
Suchen Sie im Bereich App-Übersicht nach den Widgets Anfragen, Fehler und Fehlerrate. Diese bieten eine allgemeine Zusammenfassung der Leistung der Anwendung bei der Bearbeitung von Anfragen. Suchen Sie nach ungewöhnlich hohen Fehlerzahlen oder -raten, die auf Probleme hinweisen könnten, die untersucht werden müssen.
Überwachen Sie die Bearbeitung von Anfragen
Suchen Sie im Abschnitt Bearbeitungszeit von Anfragen nach den Widgets Max. Bearbeitungszeit und Gesamtzeit für die Bearbeitung aller Anfragen. Diese Kennzahlen helfen Ihnen dabei, potenzielle Leistungsengpässe bei der Bearbeitung von Anfragen zu identifizieren. Suchen Sie nach Servern mit deutlich höheren maximalen Verarbeitungszeiten im Vergleich zu anderen.
Analysieren Sie den Netzwerkverkehr
Suchen Sie im Abschnitt Netzwerkverkehr nach den Widgets Gesendeter Verkehr und Empfangener Verkehr. Diese zeigen die Datenmenge an, die von der Anwendung über das Netzwerk gesendet und empfangen wird. Ein unerwartet hohes Verkehrsaufkommen könnte auf mögliche Probleme mit der Netzwerkauslastung oder auf eine ineffiziente Datenübertragung hinweisen.
Untersuchen Sie die Threadnutzung
Suchen Sie im Abschnitt Sessions und Threads nach den Widgets Busy Threads Count, Threads Count und Sessions. Diese Metriken bieten Einblicke in das Thread-Management der Anwendung und in die aktiven Benutzersitzungen. Suchen Sie nach Servern mit einer ungewöhnlich hohen Anzahl von ausgelasteten Threads oder Sitzungen, was auf mögliche Ressourcenbeschränkungen hinweisen könnte.