Shell-Skripting vs. Job-Scheduling-Systeme

Bastelstube ade

Shell-Skripte steuern Server und Clients zuverlässig, bringen jedoch einige Nachteile mit sich: etwa wenn die Fehlerbehandlung innerhalb eines Skripts ausufert oder die Wartung von altem und komplexem Code das IT-Budget belastet. Job-Scheduling-Systeme helfen, die gravierend-sten Nachteile manuellen Scriptings auszubügeln.
Das Rechenzentrum und die IT-Infrastruktur im Unternehmen bilden die Grundlage für einen erfolgreichen IT-Betrieb. In der Dezember-Ausgabe beleuchtet ... (mehr)

Viele Administratoren arbeiten mit Shell-Skripts und Cronjobs unter Linux, um Aufgaben oder bestimmte Programmabläufe zu bewältigen. Diese bestehen aus einigen wenigen bis mehreren hundert einzelnen Prozessen und deren Koordination, Synchronisation und richtige Reihenfolge erfordert ein hohes Maß an Aufwand, bei dem mit der Zeit ein ziemlich undurchsichtiger Wildwuchs entstehen kann.

Fehlerbehandlung lässt Skripte ausufern

Ein Beispiel soll dies verdeutlichen: Angenommen, in einem einfachen Ablauf sollen "ProgrammA" und "ProgrammB" nacheinander laufen. Das Shell-Skript dazu ist schnell geschrieben:

#!/bin/sh
ProgrammA
ProgrammB

Soweit, so einfach, doch Fehler behandelt dieses Beispiel noch nicht. Damit ProgammB nicht mit falschen Daten arbeitet, muss der Skriptautor verhindern, dass es startet, falls ProgrammA einen Fehler liefert:

#!/bin/sh
 
ProgrammA
RET=$?
if [ $RET -ne 0 ]
then
echo "Fehler $RET in ProgrammA!"
exit $RET
fi
 
ProgrammB
RET=$?
if [ $RET -ne 0 ]
then
echo "Fehler $RET in ProgrammB!"
exit $RET
fi

Jetzt muss das Skript ausgiebig getestet werden, denn nicht berücksichtigte Fehler können fatale Folgen haben. Hier taucht ein erstes Problem auf: Die Fehlerbehandlung implementieren zwei Entwickler eventuell etwas unterschiedlich. Das führt dazu, dass die Verständlichkeit des Skripts sinkt. Ist das der Fall, steigen die Kosten, weil die Wartung

...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019