Direkt zum Inhalt

Wie installiere und konfiguriere ich den vereinheitlichten CloudWatch-Agent, um Metriken und Protokolle von einer Amazon-EC2-Instance an CloudWatch zu senden?

Lesedauer: 5 Minute
0

Ich möchte den vereinheitlichten-Amazon CloudWatch-Agent verwenden, um Metriken und Protokolle von meiner Amazon Elastic Compute Cloud (Amazon EC2)-Instance an CloudWatch zu senden.

Lösung

Voraussetzung: Stelle sicher, dass du Internetkonnektivität für deine Amazon-EC2-Instance herstellst, um eine Verbindung zu den erforderlichen Endpunkten herzustellen, oder dass du eine private Verbindung zu den Virtual Private Cloud (VPC)-Endpunkten herstellst.

Erstellen einer IAM-Rolle, um den CloudWatch-Agent auf der EC2-Instance auszuführen

Führe die folgenden Schritte aus:

  1. Öffne die AWS Identity and Access Management (IAM, Identitäts- und Zugriffsmanagement)-Konsole.
  2. Wähle im Navigationsbereich Rollen aus.
  3. Wähle Rolle erstellen.
  4. Wähle für Choose the service that will use this role (Auswählen des Services, der diese Rolle verwenden wird) die Option EC2.
  5. Wähle Weiter: Berechtigungen.
  6. Wähle in der Liste der Richtlinien CloudWatchAgentServerPolicy aus.
  7. Wähle Weiter: Tags, und wähle dann Weiter: Überprüfung.
  8. Gib für Name der Rolle einen Namen für die Rolle ein, z. B. CloudWatchAgentServerRole.
  9. (Optional) Gib eine Rollenbeschreibung ein.
  10. Vergewissere dich, dass CloudWatchAgentServerPolicy neben Richtlinien angezeigt wird.
  11. Wähle Rolle erstellen.
  12. Füge die IAM-Rolle an die EC2-Instance an.

Den vereinheitlichten CloudWatch-Agent herunterladen und ihn installieren

Linux-EC2-Instance
Führe die folgenden Schritte aus:

  1. Führe den folgenden Befehl aus, um den CloudWatch-Agent herunterzuladen:

    wget https://amazoncloudwatch-agent.s3.amazonaws.com/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm
  2. Führe den folgenden Befehl aus, um den CloudWatch-Agent zu installieren:

    sudo rpm -U ./amazon-cloudwatch-agent.rpm

Windows-EC2-Instance
Führe als Administrator in Windows PowerShell die folgenden Schritte aus:

  1. Führe den folgenden Befehl aus, um den Ordner zu öffnen, in den du das Installationsprogramm herunterladen möchtest:

    cd "path"

    Hinweis: Ersetze im vorherigen Befehl path durch den Pfad zu dem Ordner, in den du das Installationsprogramm herunterladen möchtest.

  2. Führe den folgenden Befehl aus, um den CloudWatch-Agent herunterzuladen:

    Invoke-WebRequest -Uri https://amazoncloudwatch-agent.s3.amazonaws.com/windows/amd64/latest/amazon-cloudwatch-agent.msi  -outFile amazon-cloudwatch-agent.msi

    Wenn du Transport Layer Security (TLS) Version 1.2 oder älter verwendest, erhältst du die folgende Fehlermeldung, wenn du den vorherigen Befehl Invoke-WebRequest ausführst:
    „Invoke-WebRequest : The request was aborted: Could not create SSL/TLS secure channel“
    Führe den folgenden Befehl aus, um deine TLS-Version zu konfigurieren:

    [Net.ServicePointManager]::SecurityProtocol = "Tls, Tls11, Tls12, Ssl3"

    Führe anschließend den vorherigen Befehl Invoke-WebRequest erneut aus.

  3. Führe den folgenden Befehl aus, um das Agent-Installationsprogramm zu starten:

    msiexec /i amazon-cloudwatch-agent.msi

Die Agent-Konfigurationsdatei erstellen

Verwende den Agent-Konfigurationsassistenten, um die Agent-Konfigurationsdatei zu erstellen. Bearbeite die Datei dann manuell, um Metriken oder Protokolle hinzuzufügen oder zu entfernen.

Konfiguriere die folgenden Einstellungen, wenn du den Assistenten verwendest:

  • Wenn du die Plugins StatsD und collectd auf deiner EC2-Instance installiert hast, wähle für Do you want to turn on StatsD daemon? (StatsD-Daemon aktivieren?) und Do you want to monitor metrics from collectd? (Metriken von collectd überwachen?) die Option Yes (Ja).
  • Wenn du den Agenten awslogs installiert hast und er ausgeführt wird, wähle für Do you have an existing CloudWatch Logs Agent configuration file to import for migration? (Hast du eine vorhandene CloudWatch-Logs-Agent-Konfigurationsdatei zum Importieren für die Migration?) die Option Yes (Ja).
    **Hinweis:**Wenn du Yes (Ja) wählst, liest der Assistent die awslogs-Agent-Konfigurationsdatei, /etc/awslogs/awslogs.conf oder /var/awslogs/etc/awslogs.conf, um die Protokolldateien zu ermitteln, die du überwachen musst.
  • Wähle für Do you want to store the configuration in the Parameter Store, a capability of AWS Systems Manager? (Die Konfiguration im Parameter Store speichern, der eine Funktion von AWS Systems Manager ist?) die Option Yes (Ja), um die Agent-Konfigurationsdatei im Parameter Store zu speichern, damit du die Datei später wiederverwenden kannst.
    **Hinweis:**Wenn du die Agent-Konfigurationsdatei im Parameter Store speicherst, variiert der Befehl zum Starten des Agent.

Nachdem du den Assistenten konfiguriert hast, wird die Agent-Konfigurationsdatei standardmäßig in /opt/aws/amazon-cloudwatch-agent/bin/config.json gespeichert. Bearbeite die Datei manuell, um Metriken oder Protokolle hinzuzufügen oder zu entfernen.

Ein Beispiel für eine benutzerdefinierte Konfigurationsdatei findest du unter Uploading the CloudWatch agent configuration file to Systems Manager Parameter Store (Hochladen der CloudWatch-Agent-Konfigurationsdatei in den Systems Manager Parameter Store) in Manually create or edit the CloudWatch agent configuration file (Manuelles Erstellen oder Bearbeiten der CloudWatch-Agent-Konfigurationsdatei).

Hinweis: Wenn du die Agent-Konfigurationsdatei änderst, verwende den Befehl fetch-config, um den Agenten zu starten und sicherzustellen, dass der Agent deine Änderungen widerspiegelt.

Linux-EC2-Instance
Führe den folgenden Befehl aus:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard

Windows-EC2-Instance
Führe den folgenden Befehl als Administrator in Windows PowerShell aus:

cd "C:\Program Files\Amazon\AmazonCloudWatchAgent"  .\amazon-cloudwatch-agent-config-wizard.exe

Der Assistent erstellt die Agent-Konfigurationsdatei standardmäßig mit dem folgenden Pfad: C:\Program Files\Amazon\AmazonCloudWatchAgent\config.json.

Den CloudWatch-Agent starten

Linux-EC2-Instance
Führe den folgenden Befehl aus:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:configuration-file-path -s

Hinweis: Ersetze configuration-file-path durch den Pfad für deine Konfigurationsdatei.

Windows-EC2-Instance
Führe den folgenden Befehl als Administrator in Windows PowerShell aus:

& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -a fetch-config -m ec2 -c file:configuration-file-path -s

Hinweis: Ersetze configuration-file-path durch den Pfad für deine Konfiguration.

Standardmäßig sendet der Agent Metriken an NameSpace CWAgent.

Den Agent-Status überprüfen

Der Agent benötigt Zeit, um die Metriken aufzufüllen, die du in CloudWatch konfiguriert hast. Führe die folgenden Befehle aus, um zu überprüfen, ob der Agent ausgeführt wird, bevor der Agent Metriken auffüllt.

Linux-EC2-Instance:

sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status

Windows-EC2-Instance:

& "C:\Program Files\Amazon\AmazonCloudWatchAgent\amazon-cloudwatch-agent-ctl.ps1" -m ec2 -a status

CloudWatch-Agent starten und stoppen

Weitere Informationen findest du unter Stopping and restarting the CloudWatch agent (Starten und Neustarten des CloudWatch-Agent).

AWS OFFICIALAktualisiert vor 7 Monaten