Testen des ELK in DevOps
Nachdem die Docker Compose-Datei vollständig konfiguriert und alle Dienste definiert wurden, 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 ausgeführt wird und wie erwartet miteinander kommuniziert.
Container-Build
Zum Starten der Container im Hintergrundmodus und zur Anwendung aller Änderungen in den Dockerfiles folgenden Befehl ausführen:
Dieser Befehl baut die Images bei Änderungen neu (--build) und startet alle Container im Hintergrund (-d), sodass das Terminal weiterhin verfügbar bleibt. Dadurch wird sichergestellt, dass die aktuellste Konfiguration und der neueste 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. Es sollte ersichtlich sein, dass jeder Container — die Flask-Anwendung, Filebeat, Logstash, Elasticsearch und Kibana — sich im UP-Status befindet.
Falls sich ein Container nicht in diesem Status 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 Discover-Tab.
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 alle Indizes, die mitflask-logsbeginnen, einbezogen werden; -
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. Wechseln Sie zurück zu Kibana 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. Welcher Port wird in diesem Setup für den Zugriff auf Kibana verwendet?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
What should I do if one of the containers is not in the UP state?
How can I view the logs in Kibana after starting the containers?
Can you explain how to test if the logging pipeline is working correctly?
Großartig!
Completion Rate verbessert auf 3.7
Testen des ELK in DevOps
Swipe um das Menü anzuzeigen
Nachdem die Docker Compose-Datei vollständig konfiguriert und alle Dienste definiert wurden, 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 ausgeführt wird und wie erwartet miteinander kommuniziert.
Container-Build
Zum Starten der Container im Hintergrundmodus und zur Anwendung aller Änderungen in den Dockerfiles folgenden Befehl ausführen:
Dieser Befehl baut die Images bei Änderungen neu (--build) und startet alle Container im Hintergrund (-d), sodass das Terminal weiterhin verfügbar bleibt. Dadurch wird sichergestellt, dass die aktuellste Konfiguration und der neueste 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. Es sollte ersichtlich sein, dass jeder Container — die Flask-Anwendung, Filebeat, Logstash, Elasticsearch und Kibana — sich im UP-Status befindet.
Falls sich ein Container nicht in diesem Status 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 Discover-Tab.
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 alle Indizes, die mitflask-logsbeginnen, einbezogen werden; -
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. Wechseln Sie zurück zu Kibana 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. Welcher Port wird in diesem Setup für den Zugriff auf Kibana verwendet?
Danke für Ihr Feedback!