Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Testen des ELK in DevOps | Überwachung und Protokollierung in DevOps
Einführung in DevOps

bookTesten des ELK in DevOps

Da die Docker Compose-Datei nun vollständig konfiguriert ist und alle Dienste definiert sind, ist es an der Zeit, das System zu testen. Das Testen stellt sicher, dass jede Komponente — die Flask-Anwendung, Filebeat, Logstash, Elasticsearch und Kibana — korrekt läuft und wie erwartet miteinander kommuniziert.

Container-Build

Um die Container im Hintergrundmodus zu starten und sicherzustellen, dass alle Änderungen in den Dockerfiles übernommen werden, folgenden Befehl ausführen:

Dieser Befehl baut die Images bei Änderungen neu (--build) und startet alle Container im Hintergrund (-d), sodass das Terminal frei bleibt. Dadurch wird sichergestellt, dass die aktuelle Konfiguration und der aktuelle Code angewendet werden, ohne das Terminal zu blockieren.

Nach dem Starten der Container ist es wichtig zu überprüfen, ob alle Dienste korrekt laufen. Führen Sie dazu den folgenden Befehl in Ihrem Terminal aus:

Dieser Befehl listet alle Container zusammen mit ihrem Status, ihren Namen und Ports auf. Sie sollten sehen, dass jeder Container — die Flask-Anwendung, Filebeat, Logstash, Elasticsearch und Kibana — sich im UP state befindet.

Falls sich ein Container nicht in diesem Zustand befindet, prüfen Sie dessen Logs, um das Problem zu identifizieren und zu beheben, bevor Sie fortfahren.

Testen der ELK-Logging-Pipeline

Öffnen Sie Ihren Browser und gehen Sie zu localhost:5601. Kibana läuft auf diesem Port. Sobald die Oberfläche geladen ist, öffnen Sie das Panel auf der linken Seite und wechseln Sie zum Tab Discover.

Klicken Sie auf Create data view, um anzugeben, welche Logs angezeigt werden sollen:

  • Geben Sie einen Namen ein, zum Beispiel logs;

  • Geben Sie im Feld Index pattern flask-logs* ein. Das Sternchen bedeutet, dass jeder Index, der mit flask-logs beginnt, einbezogen wird;

  • Klicken Sie auf Save data view.

Kibana zeigt nun Logs der Anwendung an. Zu diesem Zeitpunkt erscheinen nur die anfänglichen Startprotokolle.

Testen Sie als Nächstes die Anwendung, indem Sie localhost:5050 in einem neuen Browser-Tab öffnen. Das Aufrufen von Seiten erzeugt Log-Ereignisse im Container, die von Filebeat und Logstash verarbeitet und in Kibana angezeigt werden. Kehren Sie zu Kibana zurück und klicken Sie auf Aktualisieren. Innerhalb von 10–15 Sekunden erscheinen neue Logs, wie "User opened the home page" oder "User clicked the button".

Alle Container laufen und die ELK-Pipeline ist vollständig funktionsfähig. Logs aus der Flask-App werden gesammelt, verarbeitet und in Kibana in Echtzeit angezeigt. Ihr Logging-System ist nun bereit, die Anwendungsaktivität zu überwachen und zu analysieren.

1. Welcher Befehl startet alle in der Docker Compose-Datei definierten Container korrekt?

2. Welchen Port verwenden Sie, um in diesem Setup auf Kibana zuzugreifen?

question mark

Welcher Befehl startet alle in der Docker Compose-Datei definierten Container korrekt?

Select the correct answer

question mark

Welchen Port verwenden Sie, um in diesem Setup auf Kibana zuzugreifen?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 6

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 3.7

bookTesten des ELK in DevOps

Swipe um das Menü anzuzeigen

Da die Docker Compose-Datei nun vollständig konfiguriert ist und alle Dienste definiert sind, ist es an der Zeit, das System zu testen. Das Testen stellt sicher, dass jede Komponente — die Flask-Anwendung, Filebeat, Logstash, Elasticsearch und Kibana — korrekt läuft und wie erwartet miteinander kommuniziert.

Container-Build

Um die Container im Hintergrundmodus zu starten und sicherzustellen, dass alle Änderungen in den Dockerfiles übernommen werden, folgenden Befehl ausführen:

Dieser Befehl baut die Images bei Änderungen neu (--build) und startet alle Container im Hintergrund (-d), sodass das Terminal frei bleibt. Dadurch wird sichergestellt, dass die aktuelle Konfiguration und der aktuelle Code angewendet werden, ohne das Terminal zu blockieren.

Nach dem Starten der Container ist es wichtig zu überprüfen, ob alle Dienste korrekt laufen. Führen Sie dazu den folgenden Befehl in Ihrem Terminal aus:

Dieser Befehl listet alle Container zusammen mit ihrem Status, ihren Namen und Ports auf. Sie sollten sehen, dass jeder Container — die Flask-Anwendung, Filebeat, Logstash, Elasticsearch und Kibana — sich im UP state befindet.

Falls sich ein Container nicht in diesem Zustand befindet, prüfen Sie dessen Logs, um das Problem zu identifizieren und zu beheben, bevor Sie fortfahren.

Testen der ELK-Logging-Pipeline

Öffnen Sie Ihren Browser und gehen Sie zu localhost:5601. Kibana läuft auf diesem Port. Sobald die Oberfläche geladen ist, öffnen Sie das Panel auf der linken Seite und wechseln Sie zum Tab Discover.

Klicken Sie auf Create data view, um anzugeben, welche Logs angezeigt werden sollen:

  • Geben Sie einen Namen ein, zum Beispiel logs;

  • Geben Sie im Feld Index pattern flask-logs* ein. Das Sternchen bedeutet, dass jeder Index, der mit flask-logs beginnt, einbezogen wird;

  • Klicken Sie auf Save data view.

Kibana zeigt nun Logs der Anwendung an. Zu diesem Zeitpunkt erscheinen nur die anfänglichen Startprotokolle.

Testen Sie als Nächstes die Anwendung, indem Sie localhost:5050 in einem neuen Browser-Tab öffnen. Das Aufrufen von Seiten erzeugt Log-Ereignisse im Container, die von Filebeat und Logstash verarbeitet und in Kibana angezeigt werden. Kehren Sie zu Kibana zurück und klicken Sie auf Aktualisieren. Innerhalb von 10–15 Sekunden erscheinen neue Logs, wie "User opened the home page" oder "User clicked the button".

Alle Container laufen und die ELK-Pipeline ist vollständig funktionsfähig. Logs aus der Flask-App werden gesammelt, verarbeitet und in Kibana in Echtzeit angezeigt. Ihr Logging-System ist nun bereit, die Anwendungsaktivität zu überwachen und zu analysieren.

1. Welcher Befehl startet alle in der Docker Compose-Datei definierten Container korrekt?

2. Welchen Port verwenden Sie, um in diesem Setup auf Kibana zuzugreifen?

question mark

Welcher Befehl startet alle in der Docker Compose-Datei definierten Container korrekt?

Select the correct answer

question mark

Welchen Port verwenden Sie, um in diesem Setup auf Kibana zuzugreifen?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 6
some-alt