Systemdiagnose für die Cloud Composer-Umgebung

Aufgrund der Mikrodienstarchitektur von Cloud Composer umfasst das End-to-End-Aktivitäts-Monitoring Ihrer Airflow-Konfiguration mehrere Messwerte. In dieser Anleitung wird ein Ansatz zur Verwendung der logbasierten Messwerte der Operations Suite von Google Cloud gezeigt, um Monitoring und Benachrichtigungen anhand eines benutzerdefinierten Messwerts einzurichten.

Ziele

  • Einfachen DAG bereitstellen, der im Abstand weniger Minuten in der Cloud Composer-Umgebung ausgeführt wird
  • Logs nutzen, die die Operations Suite von Google Cloud für Cloud Composer generiert, um mithilfe der logbasierten Messwerte einen benutzerdefinierten Messwert zu erstellen
  • Monitoring und Benachrichtigungen anhand des benutzerdefinierten Messwerts einrichten

Kosten

Cloud Composer ist ein kostenpflichtiges Produkt. Für die Nutzung von Cloud Composer in Rahmen dieser Anleitung fallen Kosten an. Weitere Informationen finden Sie unter Preise. Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung erstellen. Neuen Google Cloud-Nutzern steht möglicherweise eine kostenlose Testversion zur Verfügung.

Hinweis

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.

  4. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  5. Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.

  6. Erstellen Sie eine Cloud Composer-Umgebung.
  7. Sorgen Sie dafür, dass Sie die entsprechenden Berechtigungen haben. Die folgenden Berechtigungen sind erforderlich, um auf Logs und Messwerte für die Cloud Composer-Umgebung zuzugreifen:
    • Schreibgeschützter Zugriff auf Logging und Monitoring: logging.viewer und monitoring.viewer
    • Schreibgeschützter Zugriff auf Logging, einschließlich privater Logs: logging.privateLogViewer
    • Lese-/Schreibzugriff auf Monitoring: monitoring.editor

    Weitere Informationen finden Sie unter Zugriffssteuerung.

DAG in die Umgebung aufnehmen

  1. Laden Sie den folgenden DAG in den Cloud Storage-Bucket für die Umgebung hoch:

    import airflow
    from airflow import DAG
    from airflow.operators.bash_operator import BashOperator
    from datetime import timedelta
    
    default_args = {
        'retries': 1,
        'retry_delay': timedelta(minutes=5),
        'start_date': airflow.utils.dates.days_ago(0)
    }
    
    dag = DAG(
        'liveness',
        default_args=default_args,
        description='liveness monitoring dag',
        schedule_interval=timedelta(minutes=1))
    
    t1 = BashOperator(
        task_id='echo', bash_command='echo test', dag=dag, depends_on_past=False)
    
  2. Warten Sie, bis Airflow den DAG geplant hat. Sie können den Status in der Airflow-Weboberfläche prüfen.

    Airflow-Weboberfläche

Logbasierten Zählermesswert in der Operations Suite von Google Cloud erstellen

  1. Rufen Sie die Loganzeige auf.

    Zur Loganzeige

  2. Achten Sie darauf, dass oben auf der Seite das richtige Projekt ausgewählt ist, oder wählen Sie über das Drop-down-Menü oben auf der Seite ein Projekt aus.

  3. Wählen Sie im Ressourcenfeld die Option Cloud Composer-Umgebung und dann den Standort und den Umgebungsnamen aus.

  4. Wählen Sie im Feld für den Logtyp airflow-worker aus.

  5. Erstellen Sie in der Filterleiste einen Filter, damit nur Logs angezeigt werden, die der Aktivitäts-DAG ausgibt. Geben Sie dafür das folgende Label ein: label:workflow:liveness.

  6. Klicken Sie oben auf der Seite auf Messwert erstellen. Der Messwerteditor wird auf der rechten Seite und der Anzeigebereich mit Ihren Logs wird auf der linken Seite angezeigt.

    Messwert erstellen

  7. Legen Sie im Messwerteditor Werte für die folgenden Felder fest:

    1. Name: Wählen Sie einen Namen aus, der unter den logbasierten Messwerten in Ihrem Projekt nur einmal vorkommt, z. B. liveness-logs-cnt.
    2. Beschreibung: Beschreiben Sie den Messwert.
    3. Typ: Zähler
  8. Klicken Sie auf Messwert erstellen. Die Seite "Logbasierte Messwerte" wird angezeigt.

Benachrichtigungsrichtlinie erstellen

  1. Klicken Sie auf der Seite "Logbasierte Messwerte" das Kästchen für den Messwert an, für den Sie eine Richtlinie erstellen möchten, und wählen Sie im Menü rechts neben dem Messwerteintrag Benachrichtigung mit dem Messwert erstellen aus. Die Seite Neue Benachrichtigungsrichtlinie erstellen wird angezeigt.

    Benachrichtigung erstellen

  2. Klicken Sie auf der Seite Neue Benachrichtigungsrichtlinie erstellen im Abschnitt Bedingungen auf Bearbeiten. Ein bereits ausgefülltes Fenster Messwert erstellen wird angezeigt.

  3. (Optional) Geben Sie einen Namen für die Bedingung ein.

  4. Wählen Sie im Bereich "Ziel" für Aggregator den Wert Anzahl aus.

  5. Legen Sie im Bereich "Konfiguration" für Grenzwert den Wert nach Bedarf fest.

    Grafik: Benachrichtigungsrichtlinie

  6. Klicken Sie auf Speichern. Das Steuerfeld Neue Benachrichtigungsrichtlinie erstellen wird mit der festgelegten Bedingung angezeigt.

  7. Füllen Sie die Bereiche Benachrichtigungen, Dokumentation und Richtlinie benennen der Benachrichtigungsrichtlinie aus.

  8. Klicken Sie auf Speichern.

Bereinigen

Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.

  1. Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.

    Zur Seite „Ressourcen verwalten“

  2. Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
  3. Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.

Nächste Schritte

Umzu erfahren, wie Sie Messwerte für die Cloud Composer-Umgebung mithilfe eines benutzerdefinierten Dashboards ansehen können, lesen Sie die Informationen unter Umgebungs- und Workflow-Monitoring in der Operations Suite von Google Cloud.