Server

Ein Server ist ein Computer der auf die Erfüllung besonderer Aufgaben ausgelegt ist. Oft versteht man unter einem Server aber auch eine Software, die spezielle Aufgaben erledigt. Wie der Name schon andeutet geht es bei diesen speziellen Aufgaben immer darum, etwas zu „servieren“, also anzubieten.

Wenn im Kontext von Hardware über einen Server gesprochen wir, ist damit eine bestimmte Architektur gemeint. Vereinfacht gesagt wird der Begriff auch verwendet, um eine Architektur von einem Host System oder einem PC abzugrenzen. Grundsätzlich ist ein Server nicht auf ein bestimmtes Betriebssystem angewiesen, in komplexeren IT-Landschaften verbindet man den Serverbegriff in der Regel allerdings mit UNIX-basierten Architekturen. Die Serverhardware ist zudem auf den dauerhaften Betrieb ausgelegt. Anders als in einem PC sind spezielle Festplatten (Serielle SCSI statt SATA), ausgereifte Sicherungssysteme und mehrere Rechenkerne typisch. Server werden heute vernetzt betrieben und beherbergen in der Regel virtuelle Umgebungen.

Scheduling Software

Unter einer Scheduling Software (Automatisierungssoftware) wird ein Programm verstanden, mit dem mehrere Programme in Abhängigkeit voneinander automatisiert gesteuert werden. So ein Programm wird auf Servern benötigt. Da eine Automatisierung den manuellen Eingriff in eine Programmausführung überflüssig machen soll, laufen Scheduler in der Regel auf durchgehend erreichbaren Servern.

Eine Automatisierungssoftware stößt Programme auf einem oder mehreren Servern an und regelt die darauf basierenden Abläufe. Die Software steuert die Reaktion auf verschiedene Vorkommnisse. So können Automatisierungsprogramme auf unvorhergesehene Abbrüche von Programmabläufen reagieren oder Nachrichten versenden, wenn bestimmte Abläufe korrekt oder nicht korrekt abgelaufen sind. Zudem lässt sich mit einer Scheduling Software erkennen, wo genau in einer Jobverarbeitung ein Fehler aufgetreten ist. Im Vergleich zu einem einfachen Unix Crontab können Programmketten in einer Automatisierungssoftware nicht nur zeit- sondern auch bedingungsabhängig ausgelöst werden. Zudem können Bedingungen und Aktionen im Gesamtablauf eingebaut werden. Nicht zuletzt liefern solche Werkzeuge auch ein Monitoring, um Probleme in Programmabläufen zu erkennen. Bekannte Vertreter sind:

  • UC4 Automic
  • Control^M
  • Tivoli

Eine ausführliche Übersicht über Scheduling Programme liefert Wikipedia.

Migrationen

Als Migrationen werden in der IT Vorhaben bezeichnet, bei denen größere Veränderungen notwendig sind. Dies kann die Hardware, die Software oder auch die Prozesse eines Unternehmens betreffen. Beispiele für Migrationen sind

Umstellung einer Host-basierten Infrastruktur auf eine serverbasierte Infrastruktur

Upgrade einer Software von einer veralteten Version auf eine aktuelle Version

Einführung neuer Organisationsprozesse, in der Regel verbunden mit der Einführung neuer Software.

Migrationen können kleine Projekte umfassen, die in wenigen Tagen von einer Person erledigt werden oder auch umfassende Projekte die von einem größeren Team in mehreren Monaten gestemmt werden. Das Vorgehen ist dabei im Grundsatz immer ähnlich:

  1. Auswahlprozess des Zielzustandes (z.B. die einzuführende Soft- oder Hardware)
  2. Planung des Vorgehens
  3. ggf. Teststellung oder PoC
  4. Analyse des bestehenden Zustandes
  5. Umsetzung
  6. Test
  7. Coaching/Schulung der Nutzer