Windows auf Wolke sieben

Windows auf Wolke sieben

21. November 2008 - Mit der Azure-Plattform steigt Microsoft auf Basis etablierter Technologien wie Windows Server und .NET in den Cloud-Computing-Markt ein.
Artikel erschienen in IT Magazine 2008/21

Das Verschieben von Anwendungen aus der hauseigenen Infrastruktur «in die Cloud» verspricht einige Vorteile. Dazu gehören die niedrigeren Investitionskosten, die man beim Aufbau eines eigenen Data Center zu tätigen hätte, das Outsourcing von lästigen Notwendigkeiten wie Backup, Ausfallsicherheit oder Skalierbarkeit an den Serviceanbieter oder die universellen Nutzungsmöglichkeiten der ausgelagerten Dienste von verschiedenen Geräten und Anwendungen via Internet. Dementsprechend verwundert es nicht, dass gewichtige Anbieter wie Amazon, Google oder IBM damit angefangen haben, entsprechende Cloud-Services anzubieten und laufend damit beschäftigt sind, ihre Infrastrukturen auszubauen und Angebote zu formulieren, über die Firmen ihre Anwendungen in ein hochskalierbares Data Center auslagern können.


Punkto Cloud Computing blieb es um Microsoft lange Zeit ruhig und man musste befürchten, dass der Softwareriese erneut einen wichtigen Trend verschlafen könnte. Dass dem nicht so ist, haben die Redmonder Ende Oktober an ihrer Entwicklerkonferenz PDC 08 gezeigt und die Azure Services Platform angekündigt. Azure ist in zwei Schichten aufgegliedert. Auf der untersten Ebene befindet sich Windows Azure, das die eigentlichen Betriebssystemdienste zum Ausführen von Anwendungen und Speichern von Daten innerhalb eines hochverfügbaren und skalierbaren Rechenzentrums zur Verfügung stellt. Auf der zweiten Ebene befinden sich Anwendungsservices für Aufgaben wie Identity Management, Workflow, Datenmanagement oder Synchronisation. Die verschiedenen Azure-Dienste lassen sich sowohl von Anwendungen, welche in der Cloud ausgeführt werden, als auch von lokal betriebenen Applikationen nutzen.


Windows Azure

Die eigentliche Basis von Microsofts Cloud-Computing-Plattform bildet Windows Azure. Vereinfacht ausgedrückt, handelt es sich dabei um ein Cloud-Betriebssystem, auf dem sich Anwendungen direkt im Internet betreiben lassen. Der Betrieb von Windows Azure und den darauf aufsetzenden Diensten und Anwendungen werden über die Data Centers gewährleistet, die der Softwarekonzern derzeit rund um den Globus aufbaut.



Anwendungen die auf Windows Azure ausgeführt werden, werden typischerweise auf mehrere Betriebssystem-Instanzen aufgeteilt. Jede dieser Instanzen läuft in einer eigenen Virtual Machine, in der ein 64-Bit-Windows- Server 2008 zur Verfügung gestellt wird. Für die Virtualisierung kommt eine speziell für den Cloud-Dienst zugeschnittene Hypervisor-Technologie (nicht Hyper-V) zum Einsatz. Über einen sogenannten Fabric Controller wird unter anderem das Load Balancing zwischen einzelnen Instanzen, die Verfügbarkeit bei Ausfall von Komponenten oder das Management von Ressourcen sichergestellt.



Auf der aktuellen Vorabversion von Azure lassen sich nur Anwendungen ausführen, welche für ASP.NET oder das .NET Framework geschrieben wurden. Zu einem späteren Zeitpunkt sollen auch Applikationen in Native-Code und PHP-Anwendungen ausgeführt werden können.
Um den Lernaufwand für Azure-Entwickler möglichst gering zu halten, will Microsoft darauf achten, dass auf möglichst viele bekannte Technologien und Werkzeuge zurückgegriffen werden kann. So kommt als Entwicklungswerkzeug Visual Studio 2008 zum Einsatz, das sich mit dem derzeitig verfügbaren Azure-SDK um entsprechende Azure-Projekt-Vorlagen erweitern lässt. Bei den Programmiersprachen kann grundsätzlich jede .NET-Sprache zum Einsatz kommen. Empfohlen wird seitens Microsoft allerdings C#. .NET-Anwendungen für Azure können auf Basis von Technologien wie beispielsweise ASP.NET oder der Windows Communication Foundation (WCF) geschrieben werden.



Erwähnenswert ist, dass Windows Azure nicht nur für Umsetzung reiner Webanwendungen, sondern auch für Programme gedacht ist, welche als Hintergrundprozess ausgeführt werden können. Die Entwicklung einer Azure-Anwendung mit Visual Studio 2008 fühlt sich bereits heute sehr ähnlich an wie die Erstellung einer gewöhnlichen .NET-Applikation. Trotzdem wird man aufgrund einiger technischer Unterschiede in den seltensten Fällen eine bestehende .NET-Anwendung ohne Anpassungsaufwand direkt in die Azure-Cloud stellen können. So ist etwa die Art und Weise, wie auf Daten zugegriffen wird, in den beiden Welten unterschiedlich gelöst. Wie bei den unterstützten Sprachen gibt sich Microsoft auch bei den Werkzeugen offen. So steht beispielsweise einer Integration von Azure-Tools in die Eclipse-Umgebung gemäss Redmond nichts im Wege.



Neben einer Plattform zum Ausführen von Anwendungen stellt Windows Azure auch einen Storage-Service bereit, auf dem Anwendungen – unabhängig davon, ob sie in der Cloud oder lokal ausgeführt werden – Daten speichern können. Der Storage Service von Azure – nicht zu verwechseln mit den unten beschriebenen SQL Data Services – basiert nicht auf einer relationalen Datenbank und wird auch nicht über die Abfragesprache SQL angesteuert. Um eine möglichst hohe Performance und Skalierbarkeit zu erreichen, kommt hier statt dessen eine einfachere Storage-Technologie zum Einsatz, bei der Daten in Form von Blobs (Binary Large Objects), Queues (für die Kommunikation zwischen Azure-Applika­tionen) oder Tabellen (für einfach strukturierte Daten) gespeichert werden können. Der Zugriff auf die Daten geschieht via REST, eine Web-Service-Schnittstellentechnologie, die in vergangener Zeit rasant an Popularität gewonnen hat und das Ansteuern von Webdiensten über simple HTTP-Aufrufe ermöglicht.

 
Seite 1 von 4

Neuen Kommentar erfassen

Anti-Spam-Frage Aus welcher Stadt stammten die Bremer Stadtmusikanten?
Antwort
Name
E-Mail
GOLD SPONSOREN
SPONSOREN & PARTNER