SmartOS als Virtualisierungsplattform

Paulus NR, 123RF

Clever und smart

SmartOS bringt das Beste von Linux und Solaris zusammen, um eine Virtualisierungsplattform mit ZFS und KVM zu realisieren.
Drahtlose Netzwerke sind überall: Zu Hause, im Café und in der Firma. Im Gegensatz zu Kabelnetzen verliert der Admin bei WLANs allerdings schnell die ... (mehr)

Viele Administratoren und Unix-Freunde bedauern es, dass mit dem Verkauf von Sun an Oracle auch der Geist begraben wurde, der einmal in der Welt von Solaris und Sparc herrschte. Ein bisschen davon lebt in der Firma Joyent weiter, wenn man dem ehemaligen Sun-Chef Scott McNealy glauben darf, der auf Twitter mitteilte "Great to see Sun spirit lives on."

Ein Grund dafür ist, dass einige ehemalige Sun-Programmierer nun bei Joyent arbeiten und dort ein Betriebssystem entwickeln, das auf Solaris basiert: SmartOS [1] ist die Grundlage für das Cloud-Angebot, mit dem Joyent in Konkurrenz zu Amazon treten möchte, auch wenn die Firma davon noch ein gutes Stück entfernt ist.

Der Geist von Sun

Die Firma Sun hat bekanntlich im Jahr 2005, wohl unter dem Eindruck der immer stärker werdenden Konkurrenz durch Linux, den Quellcode von Solaris unter dem Namen OpenSolaris veröffentlicht. Die Freude darüber währte aber nur einige Jahre, denn Oracle machte den Schritt bald nach der Übernahme wieder rückgängig. In der Zwischenzeit hat sich aber recht schnell eine kleine Community um OpenSolaris entwickelt, darunter auch einige Firmen wie Nexenta, die das nun freie System als Basis ihrer Produkte verwendeten.

Nach der Ankündigung durch Oracle, Solaris künftig wieder hinter verschlossenen Türen weiterzuentwickeln, gründete Nexenta zusammen mit anderen das Illumos-Projekt, das auf einem Fork des damals freien Solaris-Kernel beruht. Der Illumos-Kernel wurde zur Basis für diverse freie Solaris-Ableger, etwa OpenIndiana, Illumian, EON, OmniOS und eben SmartOS.

Das Besondere an SmartOS ist, dass Joyent selbst viel Aufwand in die Entwicklung gesteckt hat, um das System als möglichst flexible Basis für die eigene Cloud verwenden zu können. Um diese Flexibilität zu gewährleisten, hat Joyent in Person von Max Bruning den Linux-Hypervisor KVM auf den Solaris-Kernel portiert. Dieses Projekt nahm etwa ein halbes Jahr in Anspruch, dann lief KVM auf SmartOS und konnte somit alle Gastsysteme betreiben, die auch mit KVM funktionieren.

KVM für Solaris

Vor dem KVM-Port gab es in SmartOS schon die von Solaris stammenden Zones, die Betriebssystem-Virtualisierung mit Containern und wenig Ballast bieten. Allerdings ist man hierbei normalweise auf das Betriebssystem des Hosts beschränkt, auch wenn es in Solaris bereits Branded Zones mit Linux gab. Volle Virtualisierung mit KVM bietet jedenfalls mehr Optionen, etwa die, auch diverse Microsoft-Systeme als Gastsystem zu betreiben.

Ein weiterer Vorteil von SmartOS besteht darin, dass es komplette Unterstützung für das Tracing-Framework DTrace bietet, mit dem sich Kernel und Userspace-Programme ohne großen Overhead zur Laufzeit untersuchen lassen ( Abbildung 1 ). Zwar gibt es auch für Linux vergleichbare Tools wie Kprobes und neuerdings auch einen DTrace-Port, aber beide stecken verglichen mit DTrace noch in den Kinderschuhen.

Abbildung 1: Ein mit DTrace erstellter Flame Graph, der den Call Stack von MySQL visualisiert.

Joyent hat auf der Grundlage von DTrace umfangreiche Programme geschrieben, mit denen Kunden die eigene Cloud im Detail analysieren können. Dabei muss sich der Anwender nicht mehr mit DTrace-Skripts beschäftigen, sondern bekommt diverse grafische Darstellungen präsentiert, die ihm einen Eindruck von Auslastung und Engpässen verschaffen.

Auch das ZFS-Dateisystem hat in dem Virtualisierungskonzept von SmartOS einen besonderen Platz. Das System profitiert nicht nur von den allgemeinen Fähigkeiten des Solaris-Dateisystems, etwa der Möglichkeit, RAID-Systeme zu realisieren und sie nach Belieben zu erweitern. Auch die virtuellen Maschinen machen von ZFS-Features Gebrauch, weil die Dateisysteme von VMs nur Snapshots der VM-Templates sind und somit Speicherplatz sparen.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023