Service Computing Prof. Dr. Ramin Yahyapour IT & Medien Centrum 19. Januar 2010
Themenüberblick Cloud-Computing Everythnig as a Service OpenNebula Eucalyptus OCCI Amazon Web Services
Cloud
Cloud Hype in der Presse seit 2008 Vorteile einer Cloud Verringerung von Komplexität Erhöhung von Flexibilität in der IT Kostenreduktion Einfacher Zugriff auf Resourcen
Vergleich Cloud und Grid Computing Befindet sich an eher wenigen Orten in zentralisierten Datenzentren Nutzt vor allem virtualisierte Resourcen Pay-as-you-go business Modell Einfaches aufsetzen von virtuellen Maschinen Hauptsächlich von Wirtschaft und Industrie genutzt Grid Geographisch verteilt Bietet physikalische Resourcen Durch Teilnehmergruppe finanziert Schwierig zu nutzen und aufzusetzen Hauptsächlich für Forschung eingesetzt
Everything as a Service Infrastructure as a Service (IaaS) Platform as a Service (PaaS) Software as a Service (SaaS)
Infrastructure as a Service (IaaS) Abstrahiert Hardware zu Services Erlaubt Serverinstanzen zu starten ohne mit der Hardware in Kontakt zu kommen Eine Benutzerschnittstelle erlaubt dem Nutzer… Virtuelle Instanzen zu erstellen, zu konrtollieren und zu veraendern Die Anzahl der virtuellen Resourcen, die von virtuellen Instanzen genutzt werden zu ändern Virtuelle Netzwerkschnittstellen zu definieren und zu verändern
Platform as a Service (PaaS) Integrierte Laufzeitumgebung als Dienst Häufig integrierte Entwicklungsumgebung als Dienst Möglicherweise webbasierte Entwicklungsumgebungen Beispiel: Google App Engine Python 2.5.2 Java Virtual Machine Groovy, Scala, Jruby, Jython, Mit Einschränkungen kostenlos nutzbar
Software as a Service (SaaS) Software wird als Service angeboten Software nutzt die Infrastruktur des Dienstanbieters Als Schnittstelle wird der Webbrowser oder eine webbasierte API angeboten Beispiele: Google Docs Lotus Live Windows Live
OpenNebula Open-Source Framework Teil des Reservoir-Projekts Management von virtueller Infrastruktur (VMs, Speicher, Netzwerk) Aufbau einer privaten Cloud Unterstützt Hybrid Clouds Verbindung von privaten und öffentlichen Couds Die private Cloud kann ihre Schnittstellen freigeben und als öffentliche Cloud genutzt werden
OpenNebula — Grundlagen Bietet eine Abstraktionsschicht zwischen physikalischen Resourcen und Services Erlaubt die dynamische Ausführung von multi-tier Anwendungen auf einer verteilten Infrastruktur Infrastruktur besteht aus lokalen Datenzentren und aus Cloud-Resourcen Stellt Schnittstellen zum Verwalten von internen Resourcen und der eigenen Cloud bereit
OpenNebula — Architektur
OpenNebula — Architektur
OpenNebula — Architektur
OpenNebula — Funktionen Interne Schnittstellen für Administratoren Scheduler Virtualisierungsmanagement (Xen, KVM, VMWare) Imagemanagement Netzwerkmanagement Servicemangement Sicherheit
OpenNebula — Vorteile Verwaltung von Infrastruktur Einfache und dynamische Anpassung von Resourcen bei steigender Nachfrage Zentrale Verwaltung von verteilten Resourcen Bessere Ausnutzung von Resourcen Spitzenlasten können auf öffentlich Clouds ausgelagert werden Nutzung der Infrastruktur Verfügbarkeit von heterogenen Anforderungen Schnelle Allokation und Skalierbarkeit von Diensten Systemintegration Lässt sich gut mit existierenden Systemen integrieren Unterstützt beliebige Arten von Clouds
OpenNebula — Use Case
Eucalyptus Eucalyptus == Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems Spin-Off der University of California, Santa Barbara Robuste Infrastructure as a Service (IaaS) Lösung Implementierung einer Cloud auf Compute-Clustern OpenSource und kommerzielle Lösungen verfügbar
Eucalyptus Kompatibel mit den Amazon Web Services APIs (EC2, S3, EBS) Amazons Kommandozeilen-Tools funktionieren ohne Modifikation mit Eucalyptus Einsatz als Software-Overlay Installation und Deployment anhand der Rocks Linux cluster management Werkzeuge Gesicherte Kommunikation interner Prozesse mittels SOAP and WS-Security Grundlegende Verwaltungswerkzeuge Eine Cloud kann mehrere Cluster umfassen
Eucalyptus — Architektur
Open Cloud Computing Interface (OCCI) Gruppe im Open Grid Forum (OGF) Liefert eine Spezifikation zur Fernverwaltung von Cloud-Infrastrukturen Bietet eine hohe Abstraktion, um den Lebenszyklus einer virtuellen Maschine zu verwalten Implementiert durch OpenNebula
OCCI — Motivation
OCCI — Architektur
OCCI — RESTful Interface
Amazon Web Services — AWS Compute-Services von Amazon Kommunikation über HTTP, REST, SOAP Schnittstellen für Entwickler Ausschnitt der Dienste Amazon Elastic Compute Cloud (EC2) Amazon SimpleDB Amazon Simple Storage Service (Amazon S3) Amazon CloudFront Amazon Simple Queue Service (Amazon SQS) Amazon Elastic MapReduce Amazon Relational Database Service (Amazon RDS)
Elastic Compute Cloud (EC2) Bestandteil von AWS Allokiert virtuelle Maschinen bei Amazon Server können dynamisch erstellt, gestartet und beendet werden Abrechnung erfolgt auf Nutzungsbasis Drei Basismodelle für VMs verfügbar Small: 1,7GB RAM, 1 virtueller Core, 160GB Storage, 32 Bit Large: 7,5 GB RAM, 2 virtuelle Cores, 850GB Storage, 64 Bit Extra Large: 15GB RAM, 4 virtuelle Cores, 1690GB Storage, 64 Bit Zusatzangebote sind verfügbar (z.B. High-CPU)
Elastic Compute Cloud (EC2) Teil der Amazon Web Services (AWS) Bietet Rechenleistung mit Abrechnung auf Nutzungsbasis Erlaubt das Aufsetzen von virtuellen Maschinen Nutzt XEN für die Virtualisierung Bietet Linux, Solaris und Windows Server 2003 Bietet keinen persistenten Speicher Daten sind nicht sicher Amazons Simple Storage Service (S3) kann für Datensicherung genutzt werden
EC2 — Pricing Standard On-Demand Instances Linux/UNIX Usage Windows Usage Small (Default) $0.085 per hour $0.12 per hour Large $0.34 per hour $0.48 per hour Extra Large $0.68 per hour $0.96 per hour Standard Reserved Instances 1 yr Term 3 yr Term Usage Small (Default) $227.50 $350 $0.03 per hour Large $910 $1400 $0.12 per hour Extra Large $1820 $2800 $0.24 per hour
Simple Storage Service — S3 Datenbankservice mit simplem Interface Beliebige Objekte bis 5GB Größe und 2KB Metadaten ablegbar Daten werden in Körbe (Buckets) eingeteilt Zugriff mittels REST-style HTTP oder SOAP Objekte können mittels HTTP GET und BitTorrent heruntergeladen werden Der gesamte Service beinhaltet ca. 64 Mrd. Objekte (August 2009)