cloud computing technologien · cloud computing: definition (2/2) viele unterschiedliche...
TRANSCRIPT
Cloud Computing Technologien
Maxim Schnjakin
16. April 2013
Agenda
■ Cloud Computing Technologien – Worum geht’s?
■ Seminarthemen – Was soll gemacht werden?
■ Organisation – Wie soll’s ablaufen?
1
2
„Definition“ of Cloud Computing
■ Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction
– The NIST definition of cloud computing
3
Cloud Computing: Definition (2/2)
Viele unterschiedliche Definitionen für Cloud Computing,aber einige Gemeinsamkeiten lassen sich bei allen finden: ■ Pay-per-Use Geschäftsmodell
□ Keine Verbindlichkeit für den Nutzer
□ Verbuchung als variable Kosten
■ Elastische Kapazitäten: Ressourcen (Rechenleistung, Speicherplatz, ...) können beliebig skaliert werden
■ Selbstbedienungs-Schnittstellen (Webservice Interfaces)
■ IT-Ressourcen werden abstrahiert / virtualisiert
4
Typen von Clouds (1/2)
Es gibt Public Clouds, Private Clouds und hybride Clouds:
5
Typen von Clouds (2/2)
Public Cloud
■ Öffentlich zugänglich, „Selbstbedienungs“-Geschäftsmodell, Pay-per-Use
■ Zugriff über
□ Webservice APIs (SOAP oder REST)
□ Management Portal (Web Interface)
Private Cloud
■ Emulation einer Public Cloud auf privaten Ressourcen
■ Vorteile der Cloud (Elasitizität, Hardwareausnutzung, ...) bei Vermeidung bestimmter Nachteile (z.B. Compliance, Sicherheit)
Hybride Cloud = Private Cloud + Public Cloud
6
Architekturvarianten
Service Schichten
■ Software as a Service (SaaS)
■ Plattform as a Service (PaaS)
■ Infrastructure as a Service (IaaS)
■ Basistechnologie: Hypervisor/Virtualisierung
7
Infrastructure-as-a-Service (1/3)
Bereitstellung von Hardware-äquivalenten Ressourcen ■ Rechenleistung
□ „Buchung“ von virtuellen Maschinen für einen Zeitraum □ Unterschiedliche Kosten je nach verfügbaren CPUs und RAM □ Bereitstellung der VMs aus vorkonfigurierten Festplatten-
Images □ Instanz: laufende virtuelle Maschine eines speziellen Images □ Mehr Rechenleistung à mehr Instanzen
■ Speicherplatz □ Speichern einer beliebigen Datenmenge □ Abrechnung: belegter Speicher + Traffic (Lesen/Schreiben) □ Speicherung von Files meist in „Buckets“ (flache Struktur) □ Zugriff über Webservice Interface
8
Infrastructure-as-a-Service (2/3)
Bekannteste Vertreter: Amazon Web Services (AWS) ■ Amazon hatte bereits früh starke Diskrepanzen zwischen
Spitzenlast und normalem Tagesgeschäft (> Faktor 10) ■ Bei reiner In-Premise Lösung:
□ 90% ungenutzte Computing Ressourcen außerhalb von Spitzenlast-Zeiten oder
□ Hohe Überlast zu Spitzenzeiten à Umsatzeinbußen, noch schlimmer: Imageverlust!
■ Logische Konsequenz: Amazon wurde zum Vorreiter für Entwicklung und Bereitstellung von Cloud Computing Diensten
■ EC2 (Elastic Computing Cloud) und S3 (Simple Storage Service) sind nur die bekanntesten Dienste von Amazon
9
Infrastructure-as-a-Service (3/3)
Amazon Web Services (AWS) ■ EC2: Elastic Computing Cloud
□ Mieten von virtuellen Maschinen □ Erfolgsgeschichte: Animoto (Webanwendung, generiert Filme
aus Fotos und Musik) è Skalierte innerhalb weniger Tage von 50 EC2-Instanzen wegen großer Nachfrage auf 3.500 Instanzen (unmöglich mit In-Premise Rechenzentren!)
□ Wettbewerber: GoGrid, Slicehost, Mosso Cloud Servers, ... ■ S3: Simple Storage Service
□ Speicherung von Dateien (bis 5 TB Größe) in Buckets □ Bekannte Nutzer: SmugMug (Foto-Sharing), Dropbox, Ubuntu
One, Tumblr (Bilder) □ Wettbewerber: Nirvanix, Microsoft Azure Storage Service, ...
10
Platform-as-a-Service
Platform meint eine Laufzeitumgebung für (Web-)Anwendungen ■ Kein bzw. geringer administrativer Aufwand für Entwickler
■ Kein Kontakt mit zugrundeliegender Software oder Hardware
■ Rechenleistung skaliert je nach Bedarf der Anwendung
■ Unterstützung des Software Lifecycles
Bekannteste Vertreter:
■ Google AppEngine
□ Bietet Python-Stack und Java-Stack
□ Realtime Auto-Scaling (wenn Google APIs genutzt werden)
■ Microsoft Azure Services
□ Bietet .NET-Stack (C#, VB.NET, ASP.NET)
■ Force.com: Entwicklung von Erweiterungen für Salesforce CRM
11
Software-as-a-Service
Bereitstellung ganzer Anwendungen ■ Software mieten statt kaufen
(hieß früher: ASP – Application Services Providing)
■ Anwendungen laufen komplett in der Cloud (beim Anbieter)
■ Zugriff meist über Browser
Bekannte Vertreter:
■ GoogleDocs (Office-Paket)
■ GoogleMail (Mail-Client)
■ Salesforce.com (Customer Relationship Management, CRM)
■ Open-Xchange (Groupware)
■ Adobe Connect Pro (Web-Conferencing)
■ Signavio (Business Process Modelling, HPI-Spinoff)
12
Private Clouds / Do It Yourself
Es gibt eine ganze Reihe an Betriebssystemen und Softwarepaketen für den Betrieb privater Clouds, z.B.
■ OpenNebula (Open Source)
■ Eucalyptus (Open Source)
■ VMware vSphere (kommerziell)
■ Microsoft Hyper-V Cloud (kommerziell)
Systeme unterstützen in der Regel:
■ Bereitstellung von IaaS auf einem internen Hardware-Cluster
■ Heterogene Systemlandschaften (Linux- und Windows-Dienste)
■ Webservice Interfaces für Management und Ressourcennutzung
■ Hybride Cloud-Modelle durch Anbindung von Diensten wie EC2
Agenda
■ Cloud Computing Technologien – Worum geht’s?
■ Seminarthemen – Was soll gemacht werden?
■ Organisation – Wie soll’s ablaufen?
13 13
Themen Technologien für Cloud Speicher Dienste
■ Thema 1: Interaktion mit Public Storage Services □ Allgemeines
□ Features: Konsistenzmodelle, verwendete Standards, Besonderheiten
□ Eine mögliche Vereinheitlichung?
■ Thema 2: Bestimmung des Standpunktes der Daten / der Rechenmaschinen in der Cloud (Iaas / Paas)
□ Allgemeine Grundlagen
□ Traceroot, TCP-Header, Einbeziehung der lokalen Cloud-Infrastruktur (S3-EC2)
□ Wo laufen Applikationen bei PaaS Anbietern (z.B. Google)
18 18
3 Personen
2 Personen
Themen Beschreibung von Diensten Infrastructure Dashboard
■ Thema 3: Analyse vorhandener Erasure Bibliotheken für Cloud-RAID □ Eigenschaften der Algorithmen, Voraussetzungen
□ Welche Bibliotheken gibt es (Open Source bzw. kommerzielle)?
□ Untersuchung: Performance, vorhandene Implementierung
■ Thema 4: Mobile Dashboard für Cloud Frameworks □ Cloud Frameworks auf IaaS-Schicht bieten Programmierschnittstellen
□ Idee: Middleware für einheitlichen Zugriff auf überschneidende Featuresets von Cloud Frameworks, bspw. OpenStack, OpenNebula, Eucalyptus,...
□ Use Case: mobile Dashboard (z.B. iPad) für Monitoring und manuelle Reaktion auf Notfälle
18 18
1-2 Personen
1-2 Personen
Agenda
■ Cloud Computing Technologien – Worum geht’s?
■ Seminarthemen – Was soll gemacht werden?
■ Organisation – Wie soll’s ablaufen?
15 15
Organisation
Termine
■ Dienstags, 15:15 – 16:45 Uhr, Raum A-2.2
■ 3 ECTS Credit Points
Bewertung
■ Anwesenheitspflicht
■ Zwischenpräsentation der ersten Recherche und Ideen
■ Finale Präsentation
■ Schriftliche Ausarbeitung
□ 10 Seiten (IEEE)
□ Abgabe zwei Wochen nach dem finalen Vortrag
16 16
Bewertungskriterien sind vielfältig
■ Inhalt
□ Hintergrund: Recherche von Standards, state of the art
□ Eigenleistung: Strukturierung
■ Darstellung
□ Vortrag: Vorbereitung, Vortragsstil, Fokus auf wesentliche Punkte
□ Ausarbeitung: Klare, strukturierte Darstellung, Lesbarkeit
18 18