Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Wie kann ich benutzerdefinierte Metriken von Amazon-EMR-Cluster-Instances sammeln und sie dann in CloudWatch überwachen?
Ich möchte benutzerdefinierte Metriken für Amazon-EMR-Cluster-Instances konfigurieren, wie z. B. die Speicher-, CPU- und Festplattenspeichernutzung. Dann möchte ich die Metriken mit Amazon CloudWatch überwachen.
Behebung
Hinweis: Wenn Sie Amazon EMR Version 7.0.0 oder höher verwenden, installieren Sie CloudWatch-Agent als Anwendung. Weitere Informationen finden Sie unter Amazon-CloudWatch-Agent.
Um Metriken aus einem Amazon-EMR-Cluster zu konfigurieren und zu erfassen, installieren Sie den CloudWatch-Agent auf Amazon Elastic Compute Cloud (Amazon EC2). Nach der Installation des CloudWatch-Agents können Sie die gesammelten Metriken zusätzlich zu den veröffentlichten Standardmetriken für Amazon-EC2-Instances verwenden.
Speichern Sie die Metriken, die Sie mit dem CloudWatch-Agent sammeln, in CloudWatch und zeigen Sie sie an, ähnlich wie bei allen anderen CloudWatch-Metriken. Der Standard-Namespace für Metriken, die vom CloudWatch-Agent erfasst werden, ist CWAgent. Sie können jedoch bei der Konfiguration des Agents einen anderen Namespace angeben.
Gehen Sie wie folgt vor, um den CloudWatch-Agent zu konfigurieren und benutzerdefinierte Metriken von den Amazon-EMR-Clusterknoten aus zu veröffentlichen:
-
Erstellen Sie eine Beispielkonfigurationsdatei für den CloudWatch-Agent (config.json) mit der folgenden Beispielkonfiguration. Im folgenden Beispiel erfassen vier CPU-Metriken, zwei Festplattenmetriken und eine Speichermetrik die Metriken für einen Linux-Server. Der Agent ist so eingerichtet, dass er diese Metriken von einem collectd-Client empfängt:
{ "agent": { "metrics_collection_interval": 60, "run_as_user": "root" }, "metrics": { "aggregation_dimensions": [ [ "InstanceId" ] ], "append_dimensions": { "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}" }, "metrics_collected": { "collectd": { "metrics_aggregation_interval": 60 }, "cpu": { "measurement": [ "cpu_usage_idle", "cpu_usage_iowait", "cpu_usage_user", "cpu_usage_system" ], "metrics_collection_interval": 60, "resources": [ "*" ], "totalcpu": false }, "disk": { "measurement": [ "used_percent", "inodes_free" ], "metrics_collection_interval": 60, "resources": [ "*" ] }, "mem": { "measurement": [ "mem_used_percent" ], "metrics_collection_interval": 60 }, "statsd": { "metrics_aggregation_interval": 60, "metrics_collection_interval": 10, "service_address": ":8125" } } } } -
Kopieren Sie das folgende Bootstrap-Skript an Ihren Amazon Simple Storage Service (Amazon S3)-Speicherort:
#!/bin/bash sudo yum install amazon-cloudwatch-agent -y sudo amazon-linux-extras install collectd -y aws s3 cp <s3 path for config.json> /home/hadoop/config.json sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:///home/hadoop/config.jsonDas Skript installiert zuerst den CloudWatch-Agent-collectd-Client. Dann kopiert es die Datei config.json von Amazon S3 in den lokalen Pfad /home/hadoop. Schließlich führt das Skript den CloudWatch-Agent mit der Datei config.json aus.
-
Fügen Sie die Bootstrap-Aktion zum Amazon-EMR-Cluster hinzu.
Nachdem Sie die collectd-Metriken in CloudWatch importiert haben, können Sie diese Metriken als Zeitreihendiagramme anzeigen. Sie können auch Alarme einrichten, sodass Sie benachrichtigt werden, wenn die Metriken einen Schwellenwert überschreiten, den Sie angeben.
Um die collectd-Metriken in der CloudWatch-Konsole anzuzeigen,. Wählen Sie den Namespace für die Metriken, die vom Agent erfasst werden. Standardmäßig heißt dieser Namespace CWagent. Weitere Informationen finden Sie unter Gesammelte Metriken anzeigen, die vom CloudWatch-Agenten importiert wurden.
- Themen
- Analytics
- Tags
- Amazon EMR
- Sprache
- Deutsch

Relevanter Inhalt
AWS OFFICIALAktualisiert vor 3 Jahren