Vorteile, Entwicklung, Test

Cloud Computing mit Windows Azure

22.09.2010 von Thomas Joos
Windows Azure erlaubt es Unternehmen, Webanwendungen einfach zu nutzen oder bereitzustellen. Es stehen zahlreiche Beispiele und Tools zur Verfügung, die den Einstieg in die Microsoft-Cloud erleichtern.

Das Thema Cloud Computing, also das Verlagern von Serverdiensten über das Internet auf virtuelle Server in Rechenzentren von Dienstleistern, wird bei vielen Unternehmen immer beliebter. Gründe hierfür sind vor allem Kosteneinsparungen bei gleichzeitiger Verbesserung der Hochverfügbarkeit und der Leistung der Server. Zudem lassen sich Cloud-Anwendungen wesentlich leichter skalieren und ausbauen als eigene Server.

Microsoft bietet Unternehmen mit Windows Azure die Möglichkeit, Daten zu Microsoft-Rechenzentren zu übertragen und Anwendungen online zu nutzen, die Microsoft und Partner zur Verfügung stellen. Windows Azure richtet sich vor allem an Softwareentwickler und Unternehmen, die Anwendungen weltweit hochverfügbar bereitstellen wollen.

Windows Azure Einsatzszenarien
Softwarehersteller stellt SAAS (Software as a Service) Anwendung bereit. (Quelle: Microsoft)
Windows Azure Einsatzszenarien
Softwarehersteller erweitert existierende Anwendung um Cloud Funktionalitäten (Quelle: Microsoft)
Windows Azure Einsatzszenarien
IT-Dienstleister baut Abteilungslösung für Mittelständler. (Quelle: Microsoft)
Windows Azure Einsatzszenarien
IT-Dienstleister baut eine integrierte Anwendung für Mittelständler. (Quelle: Microsoft)
Windows Azure Einsatzszenarien
Web-Agentur entwickelt Webpräsenz und Shop-System für großen Unternehmenskunden. (Quelle: Microsoft)
Windows Azure Einsatzszenarien
Web 2.0 Website / Startup. (Quelle: Microsoft)

Bei dieser Technologie liegen allerdings sämtliche Dateien und Datenbanken eines Unternehmens auf Datenbankservern in Rechenzentren von Microsoft beziehungsweise dessen Partnern. Die Kommunikation findet über das Internet statt, sodass eine verfügbare und schnelle Internetleitung für den Betrieb notwendig ist. Die Basis ist Windows Azure OS, ein Betriebssystem, das auf virtuelle Server in den Rechenzentren von Microsoft aufbaut. Auf dieser Basis setzen zusätzliche Dienste, wie zum Beispiel SQL Azure, auf. Partner von Microsoft bieten Lösungen und Anwendungen ebenfalls über die Windows-Azure-Plattform an.

Windows Azure und SQL Azure im Überblick

Die Azure-Technologie von Microsoft konzentriert sich aktuell hauptsächlich auf SQL Azure, also die Bereitstellung einer Online-Datenbank in Microsoft-Rechenzentren auf Basis von Windows Azure OS. Die Datenbank baut also auf Windows Azure OS auf, dem Grundstein dieser Technologie, die alle Online-Dienste von Azure nutzen. Da diese Rechenzentren weltweit zur Verfügung stehen, haben Unternehmen den Vorteil, von allen Niederlassungen aus auf die Daten in SQL Azure zugreifen zu können, und zwar performant und zu kalkulierbaren Kosten.

Die Datenbank stellt Microsoft dazu hoch verfügbar und extrem skalierbar zur Verfügung. Windows Azure gehört zu den Microsoft-Online-Services. Neben Azure stellt Microsoft an dieser Stelle auch Exchange Online, Office Live Meeting, SharePoint Online, Office Communications Online und Office Web Applications zur Verfügung. Diese Dienste gehören aber nicht direkt zu Windows Azure, sondern sind eigenständige Technologien.

Die Azure-Technik besteht aktuell aus dem Windows Azure OS und der Datenbank SQL Azure. Weitere Möglichkeiten bietet in diesem Zusammenhang die Windows Azure AppFabric, die es Entwicklern ermöglicht, zusätzliche Dienste auf Basis von Java, .NET, PHP, Ruby, Python und anderen Programmiersprachen einzubinden. Anwendungen in der AppFabric können mit anderen Anwendungen und SQL-Azure-Diensten kommunizieren und Daten austauschen.

Entwickeln für Azure

Entwickler können dazu mit Entwicklungs-Tools wie Visual Studio oder auch Eclipse arbeiten. Darüber hinaus bietet Microsoft über Microsoft Pinpoint, einen Online-Marktplatz für Azure-Anwendungen, die Möglichkeit, zusätzliche Dienste und Programme von Microsoft-Dienstleistern zu beziehen. Über diesen Weg lassen sich zusätzliche Anwendungen, zum Beispiel für Business Intelligence, im Unternehmen per Cloud bereitstellen. Diese Dienste baut Microsoft kontinuierlich aus und erweitert die Möglichkeiten in der Cloud.

Microsoft Pinpoint: Von diesem Marktplatz kann man Anwendungen für Windows Azure beziehen.

Der zentrale Bestandteil von Windows Azure ist aktuell sicherlich SQL Azure. Diese Datenbanktechnik baut auf dem Microsoft-SQL-Server auf und steht skalierbar und hoch verfügbar in den Rechenzentren bereit. Wie der normale SQL-Server, unterstützt auch SQL Azure vollständig Transact-SQL. Daher lassen sich bei der Entwicklung datenbankbasierter Anwendungen herkömmliche relationale Datenbankmodelle einbinden; eine Umschulung für Programmierer ist nicht notwendig.

Eingebunden: Verwalten der eigenen Datenbanken in der Weboberfläche für SQL Azure.

Über Microsoft SQL Azure Data Sync CTP können Unternehmen lokale Daten aus Datenbanken mit SQL Azure synchronisieren, und zwar in beide Richtungen. Auf diesem Weg lassen sich Anwendungen in Windows Azure, die auf SQL Azure arbeiten, auch offline nutzen, wenn zum Beispiel zeitweise keine Internetverbindung zur Verfügung steht.

Tiefergehende Informationen zur Einbindung dieser Technologie bietet Microsoft über ein eigenes Whitepaper, das sich hauptsächlich an Entwickler richtet. Microsoft bezeichnet Windows Azure als standardkonform und interoperabel. Internetprotokolle wie HTTP, XML, SOAP und REST gehören zu den unterstützten Funktionen. Damit unterstützt Azure standardisierte Schnittstellen. Wenn Sie sich in Windows Azure einlesen wollen, bietet sich auch das englischsprachige kostenlose eBook "The Windows Azure Platform: Articles from the Trenches, Volume One" an, das Sie als PDF herunterladen können. In diesem Buch erklären die Autoren in 20 Artikeln, wie Sie sich in Azure einarbeiten und Anwendungen entwickeln oder bereitstellen.

Tools und Anleitungen für Entwickler

Entwickler, die mit Visual Studio arbeiten, können mit den Windows-Azure-Tools für Microsoft Visual Studio Webanwendungen speziell für Windows Azure anpassen. Ebenfalls verfügbar ist das Windows-Azure-Software-Development-Kit.

Hilfreich: Bei Microsoft finden sich Tools und Anleitungen für die Nutzung von Windows Azure.

Dieses bietet Entwicklern APIs, Tools, Dokumentationen und Beispiele für Anwendungen, die in der Cloud auf Windows Azure laufen können. Eine Sammlung wichtiger Tools zum Starten finden Sie ebenfalls auf den Azure-Internetseiten von Microsoft. Hier erhalten Sie außerdem weitere Whitepaper, Beispielanwendungen und Informationen, zum größten Teil allerdings nur in englischer Sprache.

Noch mehr Beispiele zu Windows Azure finden sich in der Open-Source-Community Codeplex. Wer sich ausführlicher mit dem Thema auseinandersetzen will, kann sich ein Buch dazu bestellen, das auf etwa 350 Seiten das Thema einführend durchleuchtet. Microsoft unterstützt Entwickler auch mit einer mehrteiligen Webcast-Reihe bei der Entwicklung von Azure-Anwendungen und der Integration der Windows Azure Services. Diese enthalten verschiedene Möglichkeiten, Anwendungen in Azure zu integrieren.

In einem Rutsch: Über den Platfom Installer installieren Entwickler die für Azure und die Webentwicklung notwendigen Tolls.

Für die Portierung und Skalierung von Webanwendungen bietet Microsoft Hilfen in Form von Webcasts an. Außerdem stellt das Unternehmen ein englischsprachiges Windows-Azure-Platform-Training-Kit zum Download zur Verfügung. In diesem Training-Kit erhalten Sie Einführungen, Präsentationen, Videos und Demos zu Windows Azure, SQL Azure, Visual Studio 2010 und zur AppFabric.

Die Entwicklungsumgebung Visual Studio Web Developer Express sowie Tools für Windows Azure bietet Microsoft zum Download an. Aktuelle Informationen rund um Windows Azure erhalten Sie ebenfalls im MSDN.

Damit auch mehr europäische und deutsche Unternehmen auf Windows Azure setzen, baut Microsoft auch in Europa und Deutschland Rechenzentren und Teams aus. Aktuell sind die meisten Informationen, Tools und Hilfen zu Azure nur in Englisch verfügbar.

Mit Visual Studio 2010 zu Windows Azure

Grundsätzlich sind Anwendungen auf Basis von SQL Azure ähnlich aufgebaut wie ASP.NET-Anwendungen und verwenden die gleiche Architektur sowie die Programmiersprache C#. Es gibt Frontends für das Web und Backend-Rollen für die entsprechenden Dienste. Das zentrale Tool für Azure ist demnach Visual Studio 2010. Für die Entwicklung sollten Sie die bereits erwähnten Erweiterungen für Visual Studio 2010 herunterladen.

Anwendungsentwicklung: Erstellen einer neuen Applikation in der Cloud über Visual Studio.

In einem TechNet-Artikel beschreibt der Microsoft-Entwickler Jose Barreto, wie sich erste Anwendungen entwickeln lassen, die auf Windows Azure aufbauen. Hier erfahren Sie anhand von Beispielen, wie die Entwicklung abläuft. Der Beitrag zeigt, wie eine Anwendung entwickelt und in Windows Azure zur Verfügung gestellt wird.

Vorteile, Preise, Testmöglichkeiten

Der Vorteil von Windows Azure gegenüber herkömmlichen Serverlösungen ist, dass Unternehmen schnell Speicherplatz und Rechen-Power erhalten, ohne selbst in Hardware investieren zu müssen. Darüber hinaus ist hierdurch auch das Auslagern von Administrationstätigkeiten möglich, was im Bedarfsfall die Kosten gleichfalls senkt.

Microsoft verteilt die Daten auf mehrere Serverinstanzen; deshalb ist Microsoft Azure zudem hoch verfügbar. Da Microsoft diese Daten in eigenen Rechenzentren betreibt und Windows Azure ebenfalls aus Microsoft-Technologien besteht, arbeiten Hard- und Software optimal zusammen.

Testphase: MSDN-Abonnenten erhalten ein 18-monatiges Einführungsangebot.

Die Preise sind leider noch ein wenig undurchsichtig, da sie sich auch nach der Anzahl der Transaktionen richten. Der Vorteil besteht darin, dass diese Preise weltweit gültig und einheitlich sind, sodass international agierende Unternehmen eine einheitliche Preisbasis vorfinden. Generell müssen Kunden die Rechenleistung, den Speicherplatz und den Datenverkehr bezahlen. Hier bietet Microsoft auch stundenbasierte Tarife an; die Abrechnung erfolgt normalerweise auf Monatsbasis. Am besten lassen sich interessierte Unternehmen ein Angebot eines Microsoft-Partners unterbreiten.

Wer ein MSDN-Abonnement gebucht hat, darf Azure ebenfalls nutzen, und zwar im Rahmen eines bestimmten Kontingents sogar kostenlos. Mehr Informationen zu diesem Modell stellt Microsoft auf einer eigenen Informationsseite zur Verfügung. Es besteht aber auch die Möglichkeit, Windows Azure eine Woche kostenlos zu testen. Dazu ist lediglich eine Anmeldung per E-Mail notwendig. Entwickler können sich dazu auf der speziellen Internetseite per E-Mail anmelden.

Zusatzdienste nutzen - HP, Dell, Fujitsu und Co.

Auf Basis der Windows Azure Platform Appliance bieten Unternehmen wie Dell, HP und Fujitsu eigene Dienste und Hardware über die Windows-Azure-Plattform an. Ziel der Kooperation ist, dass sich Cloud-Dienste über Windows Azure nicht nur in den Rechenzentren von Microsoft betreiben lassen, sondern auch über Microsoft-Partner zur Verfügung stehen, die eigene Serverzentren zur Verfügung stellen.

Auf diesem Weg kann man auch eigene Clouds betreiben, was vor allem für sehr große Unternehmen interessant ist. So können Unternehmen wie auch öffentliche Institutionen eigene Server in der Cloud betreiben. Das geht zwar mit mehr Verantwortung für die Unternehmen einher, erlaubt aber einen direkteren Zugriff auf die Server.

Integrierte Plattform: Unternehmen sollen Windows Azure auf Basis der HP Converged Infrastructure im eigenen Rechenzentrum nutzen können.

Unternehmen, die Azure einsetzen wollen, können zum Beispiel auf Basis der HP Converged Infrastructure oder über ein Rechenzentrum von HP Dienstleistungen und Anwendungen in der Cloud nutzen. Dabei ist es möglich, dass HP die Windows-Azure-Plattform für Kunden zur Verfügung stellt. Diese besteht aus Netzwerklösungen und Servern von HP auf Basis der HP Converged Infrastructure. HP stellt auf dieser Basis auch mobile Rechenzentren in speziellen Frachtcontainern zur Verfügung.

Damit Unternehmen eigene Server in der Cloud zur Verfügung stellen können, bietet Microsoft mit dem neuen Service Pack 1 für Windows Server 2008 R2 und Windows 7 neue Dienste, welche die Virtualisierung von Servern deutlich verbessern. Da die meisten Server in Cloud-Strukturen virtualisiert sind, spielen die neuen SP1-Funktionen RemoteFX und Dynamic Memory eine wichtige Rolle. RemoteFX verbessert als eigenständiges Remote-Protokoll das Benutzererlebnis der Anwender, die über das Internet auf ihren Desktop zugreifen. Dieses Protokoll ist eine Erweiterung des Remote Desktop Protokolls (RDP). Die Technik hat das Unternehmen Calista entwickelt, das Microsoft für die Einbindung von RemoteFX gekauft hat.

Dynamic Memory kann den verfügbaren physischen Arbeitsspeicher von Hyper-V-Hosts zentral für alle installierten virtuellen Server verwalten. Das bedeutet, dass die Leistung eines Servers mit dieser Technologie deutlich verbessert werden kann, da ungenutzter RAM jetzt für andere virtuelle Server zur Verfügung steht. Das neue System-Center-Virtual-Machine-Manager-Self-Service-Portal bietet Tipps, wie sich Cloud-Services auf Windows-Servern optimal zur Verfügung stellen lassen. Außerdem hat Microsoft verschiedene Content-Anbieter an Bord geholt, die Inhalte für Cloud-Services zur Verfügung stellen, die Unternehmen in eigenen Anwendungen nutzen können. Aktuelle Anbieter sind die NASA, NAVTEQ, National Geographic und die Vereinten Nationen, die Daten, Bilder und Informationen zentral zur Verfügung stellen.

Anwendungen und Services verbreiten

Anbieter von Anwendungen und Services können ebenfalls Windows Azure nutzen, um ihre Dienstleistungen und Applikationen zu verbreiten. Dazu müssen Entwickler keine eigenen Serverfarmen betreiben, sondern können ihre entwickelten Anwendungen über Windows Azure zur Verfügung stellen.

Da mit Windows Azure auch Skalierbarkeit und Verfügbarkeit steigen, können Systemintegratoren ihren Kunden eine virtualisierte, leistungsfähige Umgebung zur Verfügung stellen, ohne diese selbst warten zu müssen.

In Windows Azure lassen sich leicht zusätzliche Server, CPUs und Arbeitsspeicher hinzubuchen. Die komplette Verwaltung liegt dabei beim Windows-Azure-Team. Die Server hat Microsoft aktuell auf verschiedene Rechenzentren weltweit verteilt, die extrem stark anwachsen. Durch diese hohe Leistung und Servicequalität können also auch kleinere Anbieter von Software und Diensten mit hoch verfügbare Lösungen aufwarten, die zudem weltweit verfügbar sind. (mje)