ToSCA – Toolbox for System Configuration and Administration
Was ist ToSCA?
ToSCA ist das Kürzel für Toolbox for System Configuration and Administration. ToSCA ist ein System von Datenstrukturen, Verfahren und Methoden zur effektiven und skalierbarbaren Systemadministration von Rechnersystemen unterschiedlicher Betriebssystemfamilien.
Funktionsumfang
- elementare Bestandsverwaltung (Asset-Management)
- Systeminstallation und Recovery
- Konfiguration der Systemkomponenten
- Softwareinstallation und -update
- Monitoring-Integration
Wesentliche Konzepte
Entwurfsziele
- Unterstützung verschiedener (Betriebs-) System-Familien: LINUX (Scientific Linux, Fedora), WIN7 (Windows7, Windows Server 2008R2), VMwareESX DACS
- Unterstützung unterschiedlicher HW-Architekturen, z. B. X86, x86_64
- Unterstützung unterschiedlicher Distributionen, z. B. Scientific Linux, Fedora, Windows7, Windows Server 2008R2
- Unterstützung unterschiedlicher BS-Versionen einer Distribution, z. B. Scientific Linux 5.8, Scientific Linux 6.5
Begriffe
- Host, Maschine
Unter einem Host (synonym: Maschine) versteht man ein Rechnersystem, welches in einem Betriebssystem läuft. Dabei kann es sich um eine reale Maschine oder eine virtuelle Maschine (z. B: unter Steuerung von VMwareESX) handeln.
Wenn ein reales Rechnersystem in verschiedene Betriebssysteme gebootet werden kann, z. B. Linux und Windows7, dann handelt es sich im ToSCA-Sinne um unterschiedliche Hosts.
- Konfiguration
Die Konfiguration eines Hosts beschreibt den aktuellen Zustand aller zugehörigen Ressourcen. Dazu gehören u. a. der aktuelle Softwarebestand sowie der Inhalt und die Zugriffsrechte aller Systemdateien.
- Policy, Richtlinie
Eine Policy legt fest, wie sich ein Host verhalten soll. Policies dokumentieren Eigenschaften und technische Details der Konfiguration eines Hosts.
- Sysadmin
Sysadmins sind für die Betriebssysteme der Hosts verantwortlich. Das betrifft u. a. die Betriebssystem-Installation, die Konfiguration des Hosts und dessen Systemwartung. Für die Realisierung dieser Aufgaben haben sie umfassende administrative Rechte auf die betreffenden Hosts.
Der Sysadmin eines Hosts schafft die Basis für das Wirken des Funktionsadmins bzw. des Selfadmins.
- Funktionsadmin (Diensteverantworlicher)
Als Funktionsadmin bezeichnet man eine Person, die für die Funktionalität eines Hosts verantwortlich ist und die dafür notwendigen administrativen Rechte für den betreffenden Host hat. Bei einem Serversystem ist der Funktionsadmin insbesondere dafür verantwortlich, dass die beabsichtigten Serverdienste bereitgestellt werden. Es können mehrere Funktionsadmins für einen Host festgelegt werden. Jeder Host gehört zu einer festgelegten Funktionsklasse, wobei mehrere Hosts zur gleichen Funktionsklasse gehören können.
Die Funktionsadmins eines Hosts einer Funktionsklasse erbt per Definition die administrativen Rechte aller anderen Hosts, die zu dieser Funktionsklasse gehören.
- Selfadmin (lokaler Diensteverantwortlicher)
Als Selfadmin bezeichnet man eine Person, die für die Funktionalität eines bestimmten Hosts verantwortlich ist und die dafür notwendigen administrativen Rechte für den betreffenden Host hat.
Im Gegensatz zum Funktionsadmin haben Selfadmins keine administrativen Rechte für die anderen Hosts dieser Funktionsklasse.
- Softwareadmin
Softwareadmins sind für die Pflege der Softwarerepos, von denen Softwarepakete installiert werden können, zuständig. Dazu gehören insbesondere die URZ_CONTRIB-Repos.
Während der Funktionsadmin selbst entscheidet, welche Softwarepakte auf dem Host installiert werden, indem er Softwarepakete neu installiert oder deinstalliert, ist der Softwareadmin für die Pflege und Konsistenz der Konfigurationsfiles für die Definition der Softwarepakete eines Hosts verantwortlich.
Sysadmin, Funktionsadmin, Selfadmin und Softwareadmin teilen sich die Gesamtverantwortung für einen Host und arbeiten deshalb eng zusammen. In bestimmten Situationen ist es zweckmässig, dass eine Person gleichzeitig mehrere Rollen ausübt.