NWC Services Blog
Jeder, der Rollouts koordiniert und durchführt, kennt folgende Thematik: Wie teste ich am besten das Update einer bestehenden Installation, ohne es unkontrolliert auszurollen.
Eine weit verbreitete Möglichkeit ist, eine Policy unkritisch zu aktualisieren und einzelne Instanzen auf den aktuellen Revisionsstand der Policy zu heben. Das hat natürlich den Nachteil, dass bei einer Neuinstallation eines Clients möglicherweise die neueste Version installiert wird, obwohl diese noch gar nicht durch die Tests durch ist. Auch neue Instanzen verwenden die neueste, noch nicht final getestete, Revision.
Eine weitere Möglichkeit, die man auch in der Praxis findet, ist es, alle Instanzen zu deaktivieren, solange die Tests nicht abgeschlossen sind. Hierbei wird jedoch bei einer Neuinstallation das Paket ggfs. überhaupt nicht ausgeführt. Das kann unter Umständen zu Folgeproblemen führen.
Es gibt noch einen weiteren Lösungsansatz, welcher jedoch relativ unbekannt ist und keinen der zuvor genannten Nachteile mit sich bringt:
Jeder kennt die Arbeit, die auf einen zukommt, wenn in der DSM eine neue Revision eines Bootenvironments ansteht. Es müssen ggf. Folgerevisionen von Paketen und OS-Installation Sets angelegt werden.
Mit der DSM 7.1 wird diese Arbeit ganz erheblich vereinfacht. Für jeden Client ist jetzt individuell konfigurierbar, welches Bootenvironment in welcher Revision verwendet werden soll.
In Enteo v6 wurde das Konzept von Paket-Revisionen eingeführt, womit es möglich wurde, verschiedene Versionen eines Pakets vorzuhalten, zu verteilen und zu installieren.
Die verschiedenen Revisionen eines Pakets wurden (und werden auch noch in DSM 7) in Unterverzeichnissen des Paketverzeichnisses namens "REV\" abgelegt. Für Revisionen größer 1 wurden dabei in den jeweiligen REV-Unterverzeichnissen nur die gegenüber den Vorgänger-Revisionen geänderten Dateien gespeichert.
Dieser Ansatz führte in Enteo v6 dazu, dass ein Client sich in seinem lokalen Repository-Cache ein "vollständiges Paketverzeichnis zusammenbauen musste" (wofür die Informationen in der File-Package-Index-Datei package.fpi ausgewertet wurden), bevor das Paket installiert werden konnte.
Da aber das aus NetInstall 5.x bekannte Konzept der Ausführung direkt aus dem NetInstall-Share durchaus in vielen Umgebungen ein adäquater und stabil funktionierender Ansatz war, wurde in DSM 7 eine Möglichkeit geschaffen, für jede Paket-Revision ein vollständiges Paketverzeichnis bereitzustellen. Damit kann – wenn gewünscht – auf das Staging von Paketen im lokalen Repository-Cache verzichtet werden, da auf dem Server alle Dateien in der erwarteten Verzeichnisstruktur vorhanden sind (zur Deaktivierung des Stagings siehe unten).