Entwicklung eines automatisierten Ops-Toolkits

In diesem praktischen Projekt entwickeln Sie eine Reihe von Automatisierungswerkzeugen als Teil eines Platform Efficiency Teams. Sie üben professionelle Git-Workflows, Bash-Scripting für Systemüberwachung, fortgeschrittene Protokollverarbeitung mit Awk und Sed sowie die Aufgabenplanung mit Cron.

DevOps EngineerDevOpsLinux

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Nützliche Betriebsautomatisierung ist mehr als ein einmal gestartetes Skript: Sie sollte versioniert und ausführbar sein, kontrollierte Ausgabe erzeugen und planmäßig laufen. In diesem Challenge-Projekt setzt du diese Teile zu einem kleinen lokalen Ops-Toolkit zusammen.

Du richtest einen Git-Workflow ein, schreibst einen Bash-Health-Monitor, wandelst ein vorbereitetes Log mit sed und awk um und installierst zwei Cron-Einträge. Jede Phase prüft konkrete Dateien, Rechte, Repository-Zustände, Berichtsinhalte oder Crontab-Syntax ohne befehlsweise Lösung.

Was du lernen wirst

  • Ein lokales Git-Repository initialisieren, Ignore-Regeln definieren, auf develop arbeiten und einen Ausgangsstand committen
  • Ein ausführbares Bash-Skript schreiben, das Root-Dateisystemnutzung und Nginx-Status mit Zeitstempeln meldet
  • Festplattennutzung mit df extrahieren und einen Dienst mit systemctl, service oder pgrep prüfen
  • DEBUG-Einträge entfernen, IPv4-Adressen maskieren und Logfelder mit sed und awk umformen
  • Einen ausführbaren Prozessor und einen Bericht im vorgegebenen Zeitstempel-, Markierungs- und Nachrichtenformat erzeugen
  • Monitoring alle fünf Minuten und Logverarbeitung täglich um 02:00 planen und Monitorfehler in eine Datei umleiten

Für wen dieser Kurs geeignet ist

Dieses Projekt richtet sich an Linux- und DevOps-Lernende, die Git, Bash, Textverarbeitung und Cron ohne Schritt-für-Schritt-Befehle kombinieren möchten.

Voraussetzungen: Vertrautheit mit Shell-Skripten, Ausführungsrechten, Git-Grundlagen, Pipelines, sed, awk, Prozess- oder Dienstprüfungen und Crontab-Syntax; Prüfprojekt.

Lernumgebung: Ein browserbasierter Linux-Host mit Bash, Git, Cron, Nginx-Dienstzustand, GNU/Linux-Textwerkzeugen und vorbereiteten Dateien; kein Remote-Git oder Cloud-Konto nötig.

Häufig gestellte Fragen

Pusht die Git-Phase Code zu GitHub oder einem anderen Remote?

Nein. Sie erstellt nur ein lokales Repository unter /home/labex/ops-toolkit, fügt *.tmp und logs/ hinzu, wechselt zu develop und erzeugt mindestens einen Basis-Commit.

Ist der Monitor ein vollständiges Alarmsystem?

Nein. monitor.sh gibt Root-Festplattennutzung und Nginx-Status mit Zeitstempel aus. Schwellenwerte, Benachrichtigungen, Metrikspeicherung und Dashboard fehlen.

Welches Logformat erwartet der Prozessor?

Vorbereitete, leerzeichengetrennte Datensätze mit Datum, Uhrzeit, Level, IPv4 und Nachricht. DEBUG entfällt, IPs werden [REDACTED], Ausgabe ist YYYY-MM-DD HH:MM:SS [REDACTED] Message....

Wartet die Cron-Challenge auf tatsächliche Ausführungen?

Nein. Geprüft werden exakt zwei Einträge: monitor.sh alle fünf Minuten mit stderr nach monitor.err und process_logs.sh täglich um 02:00.

Lehrer

labby
Labby
Labby is the LabEx teacher.