Suche

 

Aktuelle Beiträge

Neues "Feature" im Captains...
Letzte Tage, beim Lesen meiner Blogroll, ging mir durch...
cptsalek - 4. Dez, 15:48
The story of stuff: Jetzt...
An einem der zurückliegenden 8. Dezember habe...
cptsalek - 4. Dez, 08:28
Das Leben ist gut
...so ganz ohne Windows. :-)
cptsalek - 2. Dez, 09:42
Vielen Dank für...
Vielen Dank für das Einstellen dieses Artikels! Endlich...
das Bäumchen (anonym) - 30. Nov, 12:34
HPV-Impfung
Ich mag naturbedingt ein skeptischer Mensch dem Kapital...
cptsalek - 29. Nov, 14:06

Credits

Knallgrau New Media Solutions - Web Agentur für neue Medien

powered by Antville powered by Helma


Creative Commons License

xml version of this page
xml version of this page (summary)
xml version of this page (with comments)

twoday.net AGB

Archiv

Februar 2008
Mo
Di
Mi
Do
Fr
Sa
So
 
 
 
 
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
10
11
12
13
14
15
17
20
21
22
23
24
25
26
29
 
 
 

Status

Online seit 1092 Tagen
Zuletzt aktualisiert: 4. Dez, 15:48

Counter & Co.

Egoload - Verträumter Idealist
Mein
Koordinaten auf der EgoMap:  93,2
100% Heidnisch

Locations of visitors to this page


Lilypie Expecting a baby Ticker

SVC: Wirklich nett gemacht

Eine der "großen Neuerungen" von Solaris 10 war sicherlich SVC, der "init.d-Ersatz". Die lieb gewonnen Runlevel-Scripte bringen in aktuellen Systemen eine Reihe von Nachteilen mit sich. So werden sie streng anhand ihrer nummerierten Reihenfolge ausgeführt, ohne dass Abhängigkeiten berücksichtigt werden.
Das bedeutet zum einen, dass kein Nutzen aus SMP-Systemen gezogen werden, weil immer ein Script nach dem anderen ausgeführt wird. Zum anderen muß ein nachfolgendes Script davon ausgehen, dass seine Vorgänger gestartet worden sind, es gibt vernünftige Möglichkeit, Fehler abzufangen.
Wenn also irgendwo ein Fehler aufgetreten ist bootet das System trotzdem weiter und es kommt zu einer ganzen Reihe Folgefehler. Im Ernstfall kann man kaum abschätzen in welchem Zustand ein System dann ist, und was man noch alles machen muß, nachdem der ursprüngliche Fehler behoben ist.
 
Mittlerweile sind eigentlich alle Unixe von den Runlevel-Scripten entweder abgekommen, oder haben Erweiterungen daran vorgenommen, so definieren z.B. BSDs und Gentoo Dependencies.
Einzig Sun ist den Weg aber komplett gegangen und verwendet nur noch ein paar wenige Init-Scripte im "Legacy_Run". Mit einem Ende ist wohl mit Solaris 11 zu erwarten, wenn ich diversen Stimmchen trauen darf.
Statt dessen tritt SVC auf den Plan, welches anhand der einzelnen Abhängigkeitsdefinitionen ganze Bäume erstellt und diese parallel anfahren kann, auch wenn man über Zeitgewinn streiten kann. Andererseits boote ich meine Server nicht so häufig als das ich für einen Streit Energie verschwenden würde. ;-)
 
In SVC sind die alten Runlevel, vor allem rc3 als Solaris Defaultrunlevel als sogenannte "Milestones" aufgeführt. Ein Milestones besteht aus einem Haufen Abhängigkeitsdefinitionen, stellt aber selber keine Dienste zur Verfügung. Beim Booten der Maschine kann man diese Meilensteine - es gibt natürlich auch einen für Singleuser - gezielt anfahren.
Was SVC von den ganzen Alternativen abhebt ist die Tatsache, dass nach meiner Erfahrung nur Solaris 10 in der Lage ist, einen Abbruch wieder korrekt aufzunehmen und damit einen Bootvorgang richtig fortzusetzen. Anders ausgedrückt: Egal was passiert, SVC bietet zu jeder Zeit einen konsistenten Stand des Systems.
 
Kleines Beispiel: Bei der Netzwerk-Konfiguration ist was schief gelaufen und eine Service-IP fehlt z.B. Eine nachgelagerte Apache-Instanz macht darauf aber einen Bind, da die IP aber nicht existiert schlägt der fehl und der Apache wird nicht gestartet.
Mit SVC werden in diesem Falle alle Netzwerkdienste erst garnicht initialisiert. Die grundlegende Netzwerk-Konfiguration wird durch network-physical abgedeckt. Geht die auf failed, werden weder ssh, noch Apache noch sonstwas durch initialisiert.
Spätestens wenn die User anrufen, dass sie sich nicht auf das System konnekten können, kann Admin also hingehen, sieht den Zustand, und kann network-physical fixen.
In dem Moment, wo das passiert ist und der SVC-Service damit in den Status Enabled wechselt, zieht SVC automatisch alle abhängigen Dienste an, ohne das Admin eingreifen muß. Voila...
 
Das ist einer der Gründe, warum ich gerne neue Manifests für Anwendungen schreibe, die wir unter Solaris 10 produktiv nehmen. Dabei offenbaren die Manifests meiner Meinung nach einen Pferdefuß, da es sich hierbei um XML-Dateien handelt.
Ich mag kein XML.
Meiner Meinung nach hat XML bis heute noch nicht bewiesen, daß es das kann, wofür es geschaffen worden ist. Die Import-Funktion, mit der ein neuen Manifest ins SVC-Repository integriert wird, ist da ein gutes Beispiel für. Statt einer ordentlichen Fehlermeldung, weil der Parser irgendwas nicht verstanden hat, kommt nur eine höchst ominöse Meldung a la "es ist ein Fehler aufgetreten".
Aber irgendwas ist ja immer, und ich habe die Hoffnung noch nicht aufgegeben, dass Sun in einer der zukünftigen Versionen dem Parser ein paar ordentliche Meldungen implantieren kann.

Name

Url

Meine Eingaben merken?

Titel:

Text:


JCaptcha - du musst dieses Bild lesen können, um das Formular abschicken zu können
Neues Bild

 

Wichtiges/Interessantes aus anderen Blogs:

Netzfilter: Unbrauchbar und schädlich
<p>Sueddeutsche.de hat den Dresdner Informatik-Professor...

Twitter (was mache ich gerade?)

    User Status

    Du bist nicht angemeldet.

    ...wenn man trotzdem lacht
    Atari Mega ST
    Auf Arbeit
    Bloggen
    Bookmarks & Links
    BSD
    Bundeswehr
    CCC07
    Computing
    Datenschutz
    Fahrrad
    Fundsachen
    G8
    Garten
    Gentechnik
    Gesundheit
    ... weitere
    Profil
    Abmelden
    Weblog abonnieren