380 likes | 493 Vues
Cloud Computing à la Microsoft. Microsoft Windows Azure. Karim El Jed – netcreate OHG. Agenda. Was ist Cloud Computing? Anwendungsszenarien Windows Azure Platform Alternativen. Was ist Cloud Computing?. ?. Was ist Cloud Computing?. Was ist Cloud Computing?.
E N D
Cloud Computing à la Microsoft Microsoft Windows Azure Karim El Jed – netcreate OHG
Agenda • Was ist Cloud Computing? • Anwendungsszenarien • Windows Azure Platform • Alternativen
Was ist Cloud Computing? • Definition bei Wikipedia: „Cloud Computing umfasst On-Demand Infrastruktur (Rechner, Speicher, Netze) und On-Demand-Software (Betriebssysteme, Anwendungen, Middleware, Management- und Entwicklungs-Tools), die jeweils dynamisch an die Erfordernisse von Geschäftsprozessen angepasst werden. Dazu gehört auch die Fähigkeit, komplette Prozesse zu betreiben und zu managen.“
Cloud Computing • Vorteile • Teilweise erhebliche Kosteneinsparung • Bessere Kostenkontrolle • Einfaches Deployment • Hohe Skalierbarkeit • Hohe Zuverlässigkeit • Hohe Sicherheit • Keine Wartung & Updates • Flexibilität
Cloud Computing • Nachteile • Keine alleinige Kontrolle über die eigenen Daten • Rechtsicherheit bei der Datenspeicherung • Schnelle Internetverbindung notwendig • Kein Datenzugriff bei Internet-Störung • Abhängigkeit zum Anbieter
Windows Azure Data Center • MS Data Center in Chicago • ~220 Container • ~2.000 Server / Container • ~440.000 Server / Data Center *Alle Angaben ohne Gewähr*
Agenda • Was ist Cloud Computing? • Anwendungsszenarien • Windows Azure Platform • Alternativen
Anwendungsszenarien • Start-Ups: Beispiel Social Community • Problem: • Keine vorhersehbare Wachstumgeschwindigkeit • Fehlende Investoren für Hard- und Software • Nutzen: • Geringe Anfangskosten für Infrastruktur • Geringe Kosten für Betrieb und Wartung • Konzentration auf Kernaufgaben • Durch Skalierbarkeit schnelles Wachstum möglich
Anwendungsszenarien • Software-as-a-Service (SaaS) • Beispiel Online-Shop • Skalierbarkeit On-Demand zu Weihnachten • Storage Services • Auslagerung von großen Datenmengen • Daten sind von überall aus erreichbar • Langsamerer Zugriff, dafür aber • günstiger • skalierbarer • zuverlässiger
Agenda • Was ist Cloud Computing? • Anwendungsszenarien • Windows Azure Platform • Alternativen
Microsoft AzurePlatform • Platformas a Service (PaaS) • LaufzeitumgebungfürEntwickler • VerstecktzugrundeliegendeInfrastruktur • physikalische / virtuelleMaschinen • Storage • Netzwerk • Zugriff auf InfrastrukturnurüberSchnittstellen • Windows Server 2008 & Internet Information Services (IIS) 7 • ErmöglichtAnwendungen in .NET, PHP und Native Code • Wartungerfolgtdurch die PaaS-Plattformautomatisch
Microsoft AzurePlatform AppFabric
Windows Azure Application Storage Compute Fabric Config
Azure - Fabric • Fabric Controller • Steuert alle Ressourcen • Computer, Switches, Load Balancer, … • Repliziert auf 5-7 Maschinen • Kommuniziert mit Fabric Agents
Azure - Fabric • Fabric Controller Aufgaben • Monitoring aller laufenden Applikationen • Verteilung der Applikationen auf physikalische Rechner • XML-Konfigurations Datei der Anwendung • Patching der Windows Server 2008 Systeme
Azure – Compute Service • Azure Applikationen können mehrere Instanzen haben • 1 Instanz = 1 Virtuelle Maschine (VM) • 1 VM = 1 Web Role oder 1 Worker Role
Azure – Compute Service • Web Role Instance • Erreichbar über HTTP/HTTPS • ASP.NET, WCF, PHP, … • Keine feste Zuordnung Instance User HTTP / HTTPS Web Role Instance Web Role Instance IIS IIS Load Balancer Agent Agent
Azure – Compute Service • Worker Role Instance • Kein IIS • Nicht erreichbar von außen (Netzwerk) • Kann von sich aus Kontakt mit der Außenwelt aufnehmen • Kann über Queue mit Daten/Aufgaben versorgt werden • Vergleichbar mit Batch Job oder Windows Service Worker Role Instance Agent
Azure – Compute Service • Fabric Agent • Bietet der Web/Worker Instance eine simple API zur Interaktion mit der Fabric • Logging • Alerts • …
Azure – Storage • Speichern von Daten in • Blobs • bis zu 50 GB • Metadaten möglich • Tabellen • KEINE relationalen Tabellen, sondern Objekte mit Eigenschaften • Speicherung von mehreren Terrabytes möglich • Zugriff via ADO.NET Services oder LINQ möglich • Warteschlangen (Queues) • Kommunikation zwischen Web und Worker Role • Zugriff auf Daten per HTTP/HTTPS (REST) • Alle Daten werden 3-fach repliziert
SQL Azure • „SQL Server in thecloud“ • (Relationale) Tabellen • Indexe • Sichten • Trigger • … • Kosten fallen ebenfalls nur für den tatsächlichen „Verbrauch“ an • Kein Wartungsaufwand • Logdateien, Speicherplatz, … • Reporting Services und Analysis Services sind in Planung
AppFabric • Für Azure und Windows Server erhältlich • „Application Server“ • Erstellen, Skalieren und Managen von (Azure-) Anwendungen • Caching • Workflow Management • Service Management • (Momentane) Komponenten • Service Bus • Access Control
AppFabric – Service Bus • Verbinden von Windows Azure Anwendungen und SQL Azure Datenbanken mit bestehenden Anwendungen und Datenbanken • Überbrückung interner und externer Anwendungen • Komposition von Anwendungen
AppFabric – Access Control • Erstellung von Benutzerkonten , basierend auf existierenden Standard Identity Management Systemen , wie z.B. Active Directory • Management der Zugriffsrechte von Benutzern und Gruppen innerhalb der eigenen Anwendung • Wiederverwendung der Sicherheitseinstellungen auf dem Service Bus
Microsoft AzurePlatform AppFabric
Windows Azure - Preise • Compute: $0.12 / hour (~ $85 / month) • ~ 1,7 GHz, 2 GB Ram, Single-Core • Storage: $0.15 / GB stored / month • AbrechnungTagesgenau • Storage transactions: $0.01 / 10K • Read / Add / Update / Delete • Data transfers: $0.10 in / $0.15 out / GB • Asien: $0.30 in / $0.45 out / GB Quelle: http://www.microsoft.com/windowsazure/pricing/
Windows Azure – Pro & Kontra • Hängt vom jeweiligem Einsatzgebiet ab • Meine Top 3 • Pro • .NET • Gewohnte Entwicklungswerkzeuge & -Methoden • Auswahl des Standortes des Datencenters soll möglich sein • Kontra • Ständige Internetverbindung nötig • (Momentan) keine komplette Verlagerung der Anwendung In-House möglich • Abhängigkeit zu Microsoft
Agenda • Was ist Cloud Computing? • Anwendungsszenarien • Windows Azure Platform • Alternativen
Google App Engine • Platform as a Service (PaaS) • Eigene Webanwendungen in Java oder Python • Storage • Database Datastore APIs • Services • URL Fetch • Mail • Memcache • Image Manipulation
Amazon ElasticComputeCloud • Infrastructure as a Service (IaaS) • Erlaubt das Hochladeneigenervirtueller XEN Maschinen • Instanzierung und Managing über API • Storage • Simple Storage Service (S3) • WebservicebasierterDatenspeicher • SimpleDB • Simple Queue Service (SQS) • Webservice für Kommunikation zwischen Anwendungen/Komponenten
Quellen • Windows Azure • http://www.microsoft.com/windowsazure/ • David Chapell – IntroducingtheAzure Services Platform • http://download.microsoft.com/download/F/C/B/FCB07D64-7D1F-4776-8C65-602C266F71C7/Introducing_Azure_Services_Platform_v1.pdf • Google App Engine • http://code.google.com/intl/de-DE/appengine/ • Amazon ElasticComputeCloud • http://aws.amazon.com/ec2/ • Video - Was ist Cloud Computing? • http://www.youtube.com/watch?v=xJCOzUk76GQ
Vielen Dank Fragen?