Meine SQL Server DB Instance von Amazon Relational Database Service (Amazon RDS) verwendet mehr Speicher als erwartet. Ich möchte einen Amazon-CloudWatch-Alarm einrichten, um zu überwachen, wie viel Speicher SQL Server verwendet.
Kurzbeschreibung
Aktivieren Sie Enhanced Monitoring für Ihre RDS DB Instance und erstellen Sie dann einen CloudWatch-Alarm. Verwenden Sie Amazon Simple Notification Service (Amazon SNS), um Benachrichtigungen über die Speicherauslastung von SQL Server zu erhalten.
Behebung
In diesem Beispiel wird die Enhanced-Monitoring-Metrik sqlServerTotKb verwendet, um einen CloudWatch-Alarm zu erstellen. Amazon SNS sendet dann eine Benachrichtigung über den Speicher, den die Amazon RDS für SQL Server DB Instance verwendet.
Führen Sie die folgenden Schritte aus:
- Öffnen Sie die CloudWatch-Konsole.
- Wählen Sie im Navigationsbereich die Option Protokollgruppen aus.
- Wählen Sie aus der Liste der Protokollgruppen RDSOSMetrics aus.
- Wählen Sie für Metrikfilter die Option Metrikfilter erstellen aus.
- Geben Sie ein Filtermuster für Ihre RDS DB Instance im folgenden Format ein: {$.instanceID = „nameOfYourRDSInstance“}. Zum Beispiel {$.instanceID=„sqltest“}.
- Wählen Sie im Abschnitt Select Log Data to Test die Ressourcen-ID Ihrer RDS DB Instance aus.
Hinweis: Um die Ressourcen-ID Ihrer RDS DB Instance zu finden, öffnen Sie die Amazon-RDS-Konsole. Wählen Sie im Navigationsbereich Datenbanken aus. Wählen Sie Ihre RDS DB Instance aus, navigieren Sie zur Registerkarte Konfiguration und suchen Sie im Abschnitt Instance nach der Ressourcen-ID.
- Wählen Sie Weiter, und geben Sie dann einen Filternamen ein, z. B. MyFilter.
- Geben Sie einen Metrik-Namespace wie EMMetric und einen Metriknamen wie SQLServerMemoryConsumption ein.
- Geben Sie den Metrikwert $.memory.sqlServerTotKb ein, und wählen Sie dann Weiter.
- Wählen Sie Metrikfilter erstellen.
- Wählen Sie den Metrikfilter aus, und wählen Sie dann Alarm erstellen aus.
- Überprüfen Sie im Abschnitt Metriken den Namespace und den Metriknamen und legen Sie dann den Zeitraum auf 1 Minute fest.
- Geben Sie im Abschnitt Bedingungen die Schwellenbedingungen ein. Zum Beispiel:
Typ des Schwellenwerts: Statisch
Immer wenn SQLServerMemoryConsumption: **Größer > Schwellenwert **
Schwellenwert: **20971520 **
**Hinweis:**Um 20 GiB als Schwellenwert anzugeben, geben Sie den Wert in KiB ein. Zum Beispiel 20971520 (20*1024*1024).
- Wählen Sie Weiter aus.
- Wählen Sie im Abschnitt Aktion konfigurieren die Option In Alarm aus.
- Wählen Sie die Option Neues Thema erstellen aus unter SNS-Thema auswählen. Verwenden Sie die E-Mail-Adresse, an die Sie Benachrichtigungen erhalten möchten, und wählen Sie dann Weiter aus.
- Geben Sie einen Namen und eine Beschreibung für den Alarm ein und wählen Sie dann Weiter aus. Zum Beispiel:
Name des Alarms: RDS DB Instance: SQLTEST: Speicherauslastung von SQL Server > 20 GiB
Beschreibung des Alarms: Die SQL-Server-Speicherauslastung auf Ihrer RDS DB Instance ist hoch
- Überprüfen Sie auf der Seite Vorschau und Erstellen die Details Ihres Alarms.
- Wählen Sie Alarm erstellen aus.
Sie können den Alarm auf der CloudWatch-Konsole unter Alarme anzeigen. Wenn Ihre SQL-Server-Speicherauslastung den definierten Schwellenwert überschreitet, wechselt Ihr Alarm in den ALARM-Status und Sie erhalten eine E-Mail-Benachrichtigung.