Von der breiten Öffentlichkeit noch weitgehend unbeachtet, arbeitet bei Novell ein Team rund um Chief Technology and Strategy Officer Nat Friedman an einem äußerst ambitionierten Projekt: Die Welt der Softwareauslieferung zur revolutionieren. Den bisher vorherrschenden All-in-One-Ansatz bezeichnet Friedman als "Vor-Feuer-Ära" der Softwareindustrie, die Installation sei in den meisten Fällen noch immer viel zu komplex und somit implizit fehlerbehaftet. Die Erfahrung zeige, dass entsprechend gut 50 Prozent aller Support-Fälle durch falsch installierte Software ausgelöst werden.

Komplex

Gerade im Server-Bereich sei den zuständigen AdministratorInnen dabei aber wenig Vorwurf zu machen, teilweise seien die nötigen Schritte dermaßen komplex, dass sie kaum vollständig korrekt durchzuführen sind. Eine Behauptung, die Friedman mit dem Handbuch einer geläufigen kommerziellen Datenbank-Lösung illustriert. Auf unzähligen Seiten werden hier Abhängigkeiten in exakt vorgeschriebenen Softwareversionen vorgeschrieben, teilweise müssen sich die AdministratorInnen dabei sogar um spezifische Kernel-Parameter kümmern.

Angepasst

Die Zukunft soll entsprechend vollkommen anders aussehen: Spezialisierte Appliances - bestehend aus Betriebssystem und der jeweiligen Anwendung - sollen von Haus aus fertig eingerichtet den bisherigen Ansatz ablösen. Wie man sich das vorzustellen hat, erklärt Friedman an einem praktischen Beispiel: Einem Toaster. Dieser vollführt nur eine Aufgabe, diese aber wirklich gut, zugleich ist er einfach einzurichten und zu benutzen. Um sich eine solch optimal angepasste Umgebung zu basteln, braucht es natürlich auch einen Baukasten, den will man nun mit SUSE Studio liefern.

Screenshot: Andreas Proschofsky

Dahinter verbirgt sich ein Webservice mit dem sich jeder und jede das eigene Linux-System in wenigen Klicks zusammenstellen kann. SUSE Studio ist dabei auf einen möglichst niedrigschwelligen Zugang ausgelegt. "Wer SUSE Studio verwenden will, braucht kein SUSE-User sein, nicht einmal Linux ist ein Voraussetzung, ein aktueller Firefox unter Windows tut es ebenfalls", streicht Nat Friedman die Vorteile eines Webservices im Gespräch mit derStandard.at hervor.

Ziele

Mit dem Web-Service visiert man zwei unterschiedliche Zielgruppen an. Aus kommerzieller Sicht wären dies vor allem unabhängige Softwarehersteller (ISVs) und Middleware-Anbieter, die ihren KundInnen vorgefertigte Appliances mit ihrer eigenen Software anbieten wollen. Zusätzlich will man aber auch die breitere Linux-Community von den Vorteilen von SUSE Studio überzeugen, das Feld der potentiellen Anwendungsformen sei schließlich ein weites, zeigt sich Friedman überzeugt. Dies reicht von Leuten, die sich schon immer einmal ihre eigene Linux-Distribution bauen - und mit anderen teilen - wollten, bis zu Softwareprojekten, die ihre aktuellsten Releases zum gefahrlosen Ausprobieren als Live-CD anbieten wollen.

Marktplatz

Apropos "Teilen": Für die Zukunft plant man die Eröffnung eines eigenen "Marktplatz" auf dem dann die von den UserInnen erstellten Appliances der Öffentlichkeit angeboten werden können. Optional soll es dabei auch möglich sein, die Appliances von anderen zu "klonen" und diese weiter zu verbessern. Laut Friedman werden bis zu Eröffnung des SUSE Studio Marktplatz allerdings noch einige Monate vergehen.

Screenshot: Andreas Proschofsky

Bevor wir mit einem konkreten Blick auf die Software forfahren, noch eine Anmerkung vorneweg: SUSE Studio befindet sich derzeit noch in der geschlossenen Alpha-Phase, wer daran teilnehmen will kann seine E-Mail-Adresse auf der Webpage des Projekts hinterlassen, und muss anschließend auf eine Einladung hoffen. Derzeit  beteiligen sich laut Friedman bereits mehrere tausend Personen am Test, mit der nächsten Ausbaustufe auf der Server-Seite hofft man diese Zahl auf rund 15.000 erhöhen zu können. Auf Sicht soll SUSE Studio freilich als vollständig frei zugängliches Service geführt werden.

Login

Wer sich zu den Glücklichen zählt, die eine Einladung bekommen haben, kann sich in Folge über diverse bestehende Logins - etwa OpenID, Google oder Yahoo - bei SUSE Studio anmelden. Die Erstellung der ersten Appliance beginnt dann mit der Auswahl des gewünschten Templates, dieses reicht von einem GNOME/KDE3/KDE4-Desktop-System bis zur kleinsten Variante, dem Just-Enough-Operating-System, das gezippt gerade mal  83 MByte groß ist.

Grundlage

Alle der derzeit angebotenen Templates basieren auf openSUSE 11.1, nach der Veröffentlichung von SUSE Linux Enterprise 11 soll hier aber auch Vorlagen auf Basis der Enterprise-Distribution zur Auswahl stehen. Die Grundlagen dafür hat Novell mittlerweile geschaffen, SLE ist seit kurzem auch mit einer Evaluierungs-Lizenz erhältlich, was erst den legalen Weitervertrieb von damit erstellten Appliances ermöglicht. Diese sollen dann übrigens in Folge - nach dem Erwerb einer Lizenz, versteht sich - auch ganz offiziell von Novell supportet werden.

Screenshot: Andreas Proschofsky

Die Templates geben sich dabei bewusst "zurückhaltend", das heißt, wer etwa die GNOME-Vorlage wählt, bekommt somit zunächst mal nur das absolute Minimum für ein entsprechendes Desktop-System ausgewählt. Ein deutlicher Unterschied zu den sonstigen Default-installationen von openSUSE, wo schon von Haus aus ein recht umfangreiches Softwareangebot auf die Platte wandert.

Minimal

Basierend auf diesem minimalistischen Ansatz lässt sich dann das eigene System zusammenbauen. Um dies zu erleichtern bietet SUSE Studio ein durchwegs gelungenes - weil einfach zu bedienendes und übersichtliches - Interface. Nach Kategorien sortiert, kann hier durch das Angebot gestöbert werden, wer will kann einzelne Pakete natürlich auch über eine Suchfunktion aufspüren. Beim Hinzufügen werden die jeweils nötigen Abhängigkeiten fein säuberlich aufgelistet, auch Hinweise darauf aus welchem Repository das Ganze stammt sowie eine UserInnen-Bewertung werden angezeigt.

Patterns

Zusätzlich gibt es die Möglichkeit "Muster" auszuwählen, durch die dann mehrere zusammengehörige Pakete in einem Rutsch auf die Platte wandern. Bei den bereits installierten "Mustern" werden dann auch Hinweise auf dazu passende Pakete gegeben, im Beispielfall GNOME wären das dann etwa auch die zugehörigen Spiele oder die Administrationstools.

Screenshot: Andreas Proschofsky

Dabei ist man jedoch in keinster Weise auf das Softwareangebot von openSUSE beschränkt. So lassen sich problemlos externe Repositorys einbinden, um so die dort angebotenen Pakete zu nutzen. SUSE Studio bietet hier bereits ein breite Auswahl, die nach Popularität gelistet ist.

Auswahl

Auf diese Weise ist es dann recht einfach eine Linux-Install-DVD zu basteln, die schon von Haus aus mit allen nötigen Multimedia-Codecs und proprietären Programmen ausgestattet ist. Oder auch ein System vorzukonfigurieren, das immer die aktuellsten Versionen von OpenOffice.org oder Mono bekommt.

Ausbau

Dabei ist man jedoch nicht auf eine vorgegebene Auswahl von SUSE Studio beschränkt, die BenutzerInnen können selbst weitere Repositorys hinzufügen. Auf diese Weise ist es dann auch möglich selbst entwickelte Software in die Distribution zu integrieren, wer kein eigenes Software Repository führen will, kann hierzu auch den openSUSE Build-Service nutzen.

Screenshot: Andreas Proschofsky

Damit ein erstelltes System gleich den eigenen Vorstellungen entspricht, gibt es im nächsten Schritt die Möglichkeit, einige grundlegende Parameter festzulegen. Dazu gehören etwa die Wahl der Default-Sprache oder der bevorzugten Tastaturbelegung. 

Netzwerk

Die Art der Netzwerkverbindung darf ebenso definiert werden, wie entschieden werden kann, ob eine Firewall auf dem erstellten System laufen soll oder nicht. Auch UserInnen-Zugänge lassen sich vorab einrichten, samt der Auswahl ob einer der Accounts beim Booten automatisch eingeloggt werden soll.

Autostart

Wer will, kann außerdem einzelne Programme zum Autostart hinzufügen, so dass sie bei jedem Einloggen selbsttätig aufgerufen werden. Falls die Ausgabe des erstellten Systems als virtuelle Maschine erfolgen soll, kann außerdem noch Speicher und Plattenplatz individuell festgelegt werden.

Screenshot: Andreas Proschofsky

Für den Server-Bereich hat man eine eigene Abteilung reserviert. Hier sollen einmal so ziemlich alle potentiell interessanten Services vorkonfigurierbar sein.

Potential

Bislang beschränkt sich das zwar noch auf eine MySQL-Einrichtung, das Potential zeigt sich dabei aber schon ganz gut: So kann etwa ein MySQL-Dump eingespielt und so von Haus aus mit dem System ausgeliefert werden. Auch Datenbank-UserInnen und -Berechtigungen lassen sich vorab einrichten.

Auswahl

Ein nettes Detail am Rande: Beginnt man mit der Konfiguration einer MySQL-Datenbank, ohne zuvor die Software in die Auswahl der eigenen Appliance aufgenommen zu haben, warnt SUSE Studio vor diesem Umstand und bietet MySQL zur Aufnahme an.

Ausblick

In Zukunft hat man in diesem Bereich noch deutlich mehr vor, wie Friedman versichert, so soll sich die hier gebotene Funktionalität über ein Plugin-System leicht erweitern lassen. Dabei denkt man auch darüber nach, dieses zu öffnen, so dass externe Anbieter einfach Plugins für die eigene Software erstellen können.

Screenshot: Andreas Proschofsky

Es folgt ein Punkt, der manchen etwas oberflächlich vorkommen mag, laut Entwicklungsleiter Friedman aber das meist angefragte Feature von Seiten der ISVs war: Die Anpassung des Looks der zu erstellenden Appliance.

Look

Entsprechen lassen sich an dieser Stelle Hintergrund und Logo frei definieren, neben diversen Default-Angeboten können zu diesem Zweck auch eigene Bilder hochgeladen werden. Die Einstellungen machen sich dann an mehreren Stellen im Linux-System bemerkbar, neben der Boot-Auswahl sind das etwa auch der Bootsplash und der Login-Screen.

Skript

Seit kurzem ist bei SUSE Studio zusätzlich eine Art Allround-Tool für weiterführende Aufgaben hinzugekommen: Wer will kann am Ende der Installation - oder auch bei jedem Boot - ein eigenes Skript ausführen lassen.

Screenshot: Andreas Proschofsky

Hat man die Konfiguration hinter sich gebracht, folgt der Bau der eigenen Appliance. Dies wird auf den Servern von SUSE Studio vorgenommen, im Test war unsere Beispiel-GNOME-Appliance innerhalb von gerade einmal ca. 5 Minuten vollständig fertig gebaut.

Optimierung

In die Optimierung der Build-Geschwindigkeit hat man laut Friedman einiges an Arbeit gesteckt, SUSE Studio sei auch in dieser Hinsicht bislang ein äußerst interessantes Projekt gewesen. Denn egal wie schnell die Server sind, gibt es doch einige grundlegende, begrenzende Faktoren, insofern hat man sich ein paar Tricks einfallen lassen.

Trickreich

So hat man immer einige gebräuchliche Softwarekombinationen gecachet auf den Servern liegen, so dass nicht alles von Grund auf neue zusammengestellt werden muss. Zusätzlich werden alle verfügbaren Repositorys automatisch auf die Novell-Server heruntergeladen, wodurch beim eigentlichen Build keinerlei Netzwerkverkehr mehr nötig ist.

Screenshot: Andreas Proschofsky

Derzeit ist die Ausgabe als Disk-Image, Live-CD/DVD und VMware-Image möglich, in Zukunft sollen hier noch weitere Formate folgen, etwa für andere Virtualisierungslösungen wie Xen, QEMU/KVM oder auch Microsofts Hyper-V. Nett auch hier wieder, dass SUSE Studio versucht "mitzudenken": Wählt man zum Beispiel die Ausgabe als VMware-Image wird die Installation der openvm-tools angeraten, bei Live-CDs trägt das Web-Service die Einrichtung des YAST-LiveCD-Installers an.

Platte

Allen BenutzerInnen stehen derzeit 15 GByte Platz für eigene Images zur Verfügung, SUSE Studio warnt zwar davor, dass diese bereits nach sieben Tagen wieder gelöscht werden, dies ist momentan aber ein Hinweis von eher theoretischer Natur, wie Friedman herausstreicht: "Derzeit löschen wir nur, wenn wir sonst keinen Platz mehr haben". Außerdem würden ja in so einem Fall ohnehin nur die Images gelöscht und nicht die Einstellungen, so reicht ein Rebuild, um wieder an die fertigen Appliances zu kommen.

Test Drive

Das absolute Killer-Feature von SUSE Studio versteckt sich neben dem Download-Button bei einer fertig berechneten Appliance. Es nennt sich "Test Drive" und erlaubt nicht weniger als einen Vorab-Testlauf des gerade erstellten Systems - und zwar direkt im Browser.

Screenshot: Andreas Proschofsky

Dazu wird ein neues Browser-Fenster geöffnet, das eine VNC-Verbindung zu den SUSE Studio-Servern öffnet. Das System bootet dann so wie man es von einem lokalen OS auch gewohnt ist, eine perfekte Möglichkeit um noch vor dem Download zu überprüfen, ob auch alles so geworden ist, wie man sich das vorgestellt hat - und gegebenenfalls weitere Anpassungen vorzunehmen.

Änderungen

Doch damit hören die Möglichkeiten von Test Drive noch lange nicht auf: So registriert SUSE Studio jede Änderung am Test-System, wer hier also beispielsweise eine Textdatei ablegt, kann diese anschließend über ein eigenes Interface fix zur Appliance hinzufügen.

Screenshot: Andreas Proschofsky

Auch zum Debuggen von Anwendungen ist dieses Feature äußerst nützlich. So lassen sich Änderungen an Dateien direkt im Browser als Diff darstellen und analysieren.

Interpretation

Wünschenswert wäre allerdings noch, dass die Änderungen von SUSE Studio auch "interpretiert" werden, also etwa zu Tasks wie "Applet xyz im Panel platziert" zusammengefasst werden. Geht zwar jetzt auch schon, dazu muss man allerdings schon ein gewisses Linux-Wissen besitzen, um die "richtigen" Dateien zu identifizieren.

Server

Doch damit noch nicht genug: Es ist auch möglich auf Server im "Test Drive" von außen zuzugreifen, so kann dann etwa ein installierter Apache schnell auf seine Funktionstüchtigkeit überprüft werden. Wer jetzt auf die Idee kommt, dies als billige Hosting-Lösung zu nutzen: "Test Drive" ist auf 30 Minuten beschränkt, auch kann die Test-Maschine keine Verbindungen nach außen aufnehmen, ist in dieser Hinsicht also nicht uneingeschränkt nutzbar.

Screenshot: Andreas Proschofsky

Auf der Server-Seite verwendet SUSE Studio derzeit virtuelle Maschinen auf KVM-Basis, um "Test Drive" zu ermöglichen. Zur Darstellung kommt - neben dem bereits erwähnten VNC - derzeit ein Java-Applet zum Einsatz. Ein Umstand, den man aber baldigst ändern will, statt dessen soll hier eine Flash-basierte Lösung zum Einsatz kommen, Java dauere alleine schon zum Starten zu lange, argumentiert Friedman im Gespräch die geplante Änderung.

Potential

Für die Zukunft sieht der Novell CTSO noch jede Menge Potential für "Test Drive", so wäre es durchaus denkbar, damit auch herauszufinden, welche Dateien / Programme nicht benutzt werden und so eine "Cleanup"-Funktion für die eigene Appliance anzubieten. Oder auch alle geänderten Dateien zu einem RPM zusammenzufassen, um schnell Softwarepakete zu erstellen.

Remote

Ebenfalls denkbar wäre der Zugriff per Nomad, der noch relativ jungen Next-Generation-Remote-Desktop-Lösung von openSUSE. Dadurch wäre zum Beispiel denkbar, Appliances direkt nach der Erstellung am lokalen Rechner "auszurollen".

Screenshot: Andreas Proschofsky

So präsentiert sich SUSE Studio schon in seinem derzeit noch recht frühen Stadium als äußerst vielversprechendes Projekt, mit dem sich schnell und unkompliziert eigene Appliances erstellen lassen. Eine Fähigkeit an der wohl gerade Firmen äußerst interessiert sein dürften, um mit wenig Aufwand eigene Linux-Umgebungen anbieten zu können.

Angepasst

Aber auch für Privatpersonen ist der Reiz daran, speziell ausgerichtete Linux-Varianten erstellen - und vor allem: mit anderen teilen - zu können, wohl nicht zu unterschätzen. Man darf durchaus gespannt sein, was der angekündigte Marktplatz in dieser Hinsicht noch an kreativem Potential offenbaren wird.

Linux-Vorteil

Nicht vergessen sollte man dabei, dass eine Lösung wie SUSE Studio überhaupt nur durch den Open-Source-Ansatz von Linux möglich wird.  "Mit Windows würde das alleine schon wegen der Lizenz nicht gehen" streicht Friedman die höhere Flexibilität der freien Softwarewelt heraus. (Andreas Proschofsky, derStandard.at, 08.03.2009)

Screenshot: Andreas Proschofsky