Skip to content

SANs

Meiner Erfahrung nach werden im Enterprise Umfeld technische Infrastruktur Entscheidungen oftmals via Policy geregelt. Wenn dann neue Anwendungen installiert werden, so müssen diese sich in die vorhandene Landschaft einfügen - ohne gross eine Risikobewertung durchgeführt zu haben. Typische Kandidaten für diese Vorgaben sind OS (unkritisch solange Erfahrungen damit vorliegen), Cluster, Netzwerk/Firewalls und Storage. Gerade beim Storage ist das Vertrauen in ein Enterprise SAN grenzenlos (muss es auch sein, war ja teuer). Performance Engpässe werden nie auf der SAN Seite gesucht und Ausfälle werden nicht erwartet (als SPoF darf das SAN einfach nicht ausfallen). Dabei gibt es ja auch alternative Ansätze. Lokales Storage (mit Sharding, Replikation), NAS oder auch die Auslagerung gewisser Daten in eine Storage Cloud. Auf jeden Fall sollte man sich überlegen: was passiert wenn mein SAN ausfällt, und wie schnell kann ich es wieder ans Laufen bringen. In einem Artikel den ich auf Highscalability.com gefunden habe bespricht David Marks die Risiken eines SAN Infrastruktur für Web 2.0 Installationen, bei denen Skalierbarkeit und Verfügbarkeit natürlich oberste Prio haben: Should I get a SAN to scale my site architecture (You Can Change It Later Blog).

AWS Cloud SLAs

Amazon wurde gefeiert als sie SLAs für Ihre Cloud Offerings angeboten haben. Das bezieht sich insbesondere auf die Amazon Web Services Dienste S3 (Storage Cloud), EC2 (Compute Cloud), ECB (Elastic Block Storage) und die Host Lösungen für Queueing (SQS) und Datenbank (SimpleDB). Betrachtet man sich allerdings die SLAs, so muss man sagen diese sind ziemlich nutzlos in einem kommerziellen Umfeld (um traditionalle Bedenken zu zerstreuen): Die neuen EC2 SLA definieren, dass ein Kunde 10% der Gebühren für die letzten 365 Tage zurückerstattet bekommt, wenn die Verfügbarkeit unter 99.5% fällt. Dabei wird die Zurückerstattung nur für zukünftige Gebühren gut geschrieben. Die Zurückerstattung ist auf 10% gedeckelt. Strafen/Schadensersatz werden keine zugestanden. Und zu allem Übel ist die Definition der Verfügbarkeit noch so, dass der Kunde sich selbst darum kümmern muss ausgefallene Instanzen neu zu starten, und nur wenn dies nicht gelingt gilt der Service als ausgefallen. D.h. wenn eine Amazon Instanz alle Stunde ausfällt und der Startup einer neuen Instanz 5mins dauert, so gelten diese 5 Minuten nicht als Ausfall. Bei den S3 SLA werden Gutschriften für erfolglose Requests gezählt. 10% bei unter 99.9% und 25% bei unter 99%. Dabei kann Amazon aber weder Requests zählen die nicht angekommen sind, noch steht Amazon mit Strafen/Schadensersatz für Datenverlust ein. Gleiches gilt für EBS, hier gibt es keine SLA, die typische jährliche Fehlerrate (AFR - Anual Failure Rate) wird mit 0.1% - 0.5% angegeben (Lokale Harddisks haben angeblich 4%). Natürlich wird AWS durch diese SLA unter Druck gesetzt einen guten Service zu erbringen. Von daher haben diese schon einen Effekt. Der Kunde muss darauf aber vertrauen und das Risiko eines Schadens komplett selbst tragen. Eine reduzierte Amazon Rechnung wird Ihn da kaum trösten. Cloud Computing definiert nicht nur die Technologie neu, sondern auch die Ökonomie des Outsourcings: statt ewig Langer Vertragsverhandlungen, umfangreichen SLA Monitorings, Schuldzuweisungen und umfangreiche Konventionalstrafen (die zu Aufschlägen beim Betreiber führen um sein Risiko abzusichern) wird auf ein Kooperatives Vorgehen gesetzt, das von Vertrauen geprägt ist. Deswegen haben es auch die Großen Anbieter in dem Markt einfacher akzeptiert zu werden. Die technischen Vorkehrungen die ein Betreiber trifft werden stärker betrachtet als seine Vertraglichen Zusagen. Zusätzlich ist die Lösung durch den Kunden schon stärker auf Ausfall ausgelegt. (Diesen Artikel nehme ich zum Anlass eine neue Cloud Kategorie hier im Blog einzuführen)

SLES11b3: XEN does not work [a huge number of bug reports]

Der Titel dieses Artikels ist eine Zeile aus den SLES11 Beta3 Release Notes. Dieser Artikel soll aber kein Suse bashing sein, sondern vielmehr will ich etwas Frust über den desolaten Zustand der Xen Unterstützung im Linux Kernel herauslassen. Dabei ist der Hypervisor (erwartungsgemäß wegen der Simplizität) nicht das Problem, sondern die Paravirtualisierung der Guests und Support von aktuellen Linux Kernels für die Dom0 Host Domain. Sogar Microsoft Hyper-V (Windows 2008 Server) und Sun xVM Server (Solaris) haben bessere Xen-komptible Hosts zu bieten als mit einem aktuellen mainstream Linux Kernel erreichbar ist. Fedora/Redhat die bisher viele Forward-Port Arbeiten an den Xen Patches in aktuelle Kernels gemacht haben planen ein Fedora 10 Release mit einem Hauptkernel (Linux 2.6.27 / Xen 3.3.0) der sowohl Bare-Metal als auch DomU Installationen unterstützt (durch die Verwendung des paravirt_ops Frameworks). Also ein sogenannter Unified Kernel. Das klingt zwar gut, aber gleichzeitig wird es keinen Kernel geben der als Dom0 (Host) eingesetzt werden kann. Hier verweist das Fedora Projekt auf F8 oder KVM mit dem Xen-in-KVM Emulator Xenner. Dieser setzt aber Hardware Unterstützung voraus. Bei Debian gibt es einen vergleichbaren Unified Kernel, und recht aktuell (Bug#495895) gibt es jetzt in Debian unstable dank Sebastian Blank wieder einen Dom0 Kernel auf Basis der Suse Patches. Suse selbst hat aber in der SLES11 Beta (wie man am Titel sehen kann) noch einige Probleme in diesem Bereich. Ich denke auch bei Debian hat das noch niemand wirklich ausgiebig getestet. Bleiben die kommerziellen Xen Server 5 (Citrix) Installationen wenn man einen Bastel-freien Linux basierenden Hypervisor betreiben möchte. Bei Oracle gibt es die Xen 3.1 basierte OracleVM die aber eine zentrale Management Console empfiehlt und Redhat liebäugelt nach RHEL 5 mit einer eigenen Virtualisierungslösung auf Basis von KVM (verständlich nach dem Kauf von Qumranet). Ich bin ganz Froh zu sehen dass Suse hier den Dom0 Support wieder nutzbar macht, und Debian ist ganz unerwartet einer der fast-followers.

Java 6u10 ist da (und 6u7 für Itanium)

In einer Panik-artigen Aktion hat Sun einige neue Features gesammelt und als Update für Java 6 im Project Update-N oder Update 10 zusammengefasst. Darunter fallen Verbesserungen für die Installation (Inkrementeller Download), Beschleunigung von Grafik und Swing und ein neues Java Plugin (für Applets). Am 15. Oktober fand dann die FCS statt, das Java SE 6 Update 10 ist jetzt zum Download verfügbar. Ich bin mal gespannt wie viele Probleme dieses mal auftreten werden in existierenden Anwendungen. Interessant ist auch, dass Sun nach Jahren wieder (Anfang Oktober) ein JDK für Itanium anbietet. Die 64bit JVM wird für Linux und Windows angeboten. Im Bereich Tooling (VisualVM, JavaDB) und Plugin (Applet) sowie im Bereich Multi Media (Linux Alsa Sound) existieren allerdings starke Einschränkungen. Eignet sich so nur für den Server Einsatz. HP dürfte mit seiner JRE für IA64 aber deutlichen Optimierungsvorsprung haben. Update: InfoQ hat einen interessanten engl. Artikel.

Gillmor und der Open Source Markt

Steve Gillmor ist ein ZDNet editor und hat seinen eigenen Podcast "The Gillmor Gang". In der "Special Edition" hat Steve "Jonathan Schwarz" den CEO von Sun Microsystems zu gast. Als großer Pony Tail Verfechter freue ich mich natürlich schon sehr endlich Einblick in den Source Code zu bekommen. Man sehen was die unheimlich cleveren Ingenöre bei Sun so alles daraus machen werden: Via Ben Rockwood (Cuddletech).

Microsoft Entwicklungen

Microsoft hatte mit dem Visual Studio schon immer ein starkes Toolset für Entwickler. Im Rahmen der Parallel Extensions for .Net oder der neuen Generation von VS (Oslo) wird noch mehr Wert auf DSL und Parallelität gesetzt. Genau die Punkte die aktuell die Entwicklergemeinde bewegen. Bleibt auf der Präsentationsseite nur noch das Thema RIA/Browser. Hier ist Microsoft mit Silverlight angetreten. Der Akzeptanz hinderlich sind aber noch Faktoren wie Offenheit oder Plattform (Linux) support. Bisher gab es ja nur die Silverlight Portierung Moonlight (auf Mono Basis). Für Silverlight 2 kündigt Microsoft jetzt aber Unterstützung für Windows, Linux und Mac (Internet Explorer, Fire Fox und Safari) an. Daneben vermeldet auch die Eclipse Foundation eine Beteiligung von Microsoft (via Soyatec): die Entwicklung von Silverlight auf Basis von Eclipse Tools soll möglich werden. Nur mit dieser Öffnung kann sich Silverlight gegen Flash oder Applets etablieren. Für das Java Lager (das immer noch mit JavaFX und Update 10 keine wirklichen Lösungen liefern kann) wird die Luft nun sehr dünn. Update: der Artikel war nicht als Java vs. .Net gedacht, aber zu dem Thema bin ich grade über einen Artikel (engl.) gestolpert.

Hyper-V Server

Beim Virtual PC Guy Blog gibt es Screenshots der Installation und "Gui" des neusten "Betriebsystems" von Microsoft: Screenshot CLI Hyper-C Config Tool Aber Spass beiseite, der Hyper-V Server 2008 ist die kostenlos von Microsoft bereitgestellt Hypervisor Platform auf Basis von Windows Server 2008. Hyper-V Server wird mit einem minimalen Environment geliefert (genannt Server Core: ohne Explorer GUI oder Startleiste). Es ist auch nicht möglich Anwendungen zu installieren. Eine vergleichbare Installation kann auch mit einem Windows Server 2008 gemacht werden: Hyper-V sitzt auch dort unter dem Betriebssystem. Allerdings sind in der Server Version Lizenzen für 1 (Standard), 4 (Enterprise) oder unbegrenzt (Datacenter) viele virtualisierte Windows Server 2008 Instanzen enthalten. Auf einem Hyper-V Server (der nur auf 64bit Hardware (max 4 Sockets, 32GB) mit Hardware Virtualisierung läuft) können diverse (Microsoft) Betriebssysteme betrieben werden. Die Emulation der Legacy Devices ist (im Gegensatz zum MS Virtual Server) nicht optimiert, Guests sollten also Device Treiber in einsetzen die von der Virtualisierung wissen ("erleuchted sind"). Für Linux bietet Microsoft die Linux Integration Components for Hyper-V (Beta) als Paket an, SLES 10 (32bit oder x64) ist damit auf Hyper-V Server zertifiziert (allerdings nur mit einer virtuellen CPU). Dabei werden Xen enabled Kernels eingesetzt.