Dieses Video gibt einen praktischen Einblick in die Nutzung von Amazon EC2.
via YouTube
Dieses Video gibt einen praktischen Einblick in die Nutzung von Amazon EC2.
via YouTube
Das Video zeigt das Innere eines Google Cloud Rechenzentrums.
http://www.youtube.com/watch?v=4SkVT-nNga0
via YouTube
Jeder Administrator oder Entwickler kennt das Problem. Man(n) sitzt gemütlich mit der Frau/ Freundin im Restaurant und schwelgt mit seinen Gedanken gerade in Wolke Sieben. “Funktionieren meine Instanzen noch? Wie ist die aktuelle Performance”. 😉
Genau dafür hat das Unternehmen 9apps mit seiner Anwendung Decaf erstmalig eine mobile Infrastrukturmanagementsoftware für Amazon EC2 Instanzen auf Basis von Android entwickelt. Die Funktionen und Einsatzmöglichkeiten der Software möchte ich hier nun kurz vorstellen.
Mit dem Dashboard kann auf alle Daten des jeweiligen Accounts zugegriffen werden. Dazu gehören u.a. Informationen wie Details über alle Instanzen, Amazon Machine Images (AMIs), Snapshots, Elastic IPs, sowie Security Groups und die Key Pairs.
Das Widget stellt alle Informationen in Echtzeit dar und aktualisiert sich selbständig, wodurch es unverzüglich informiert wenn etwas unerwartetes passiert. Die Diagramme des Widgets geben Auskunft über die Entwicklung und Änderungen der durchschnittlichen CPU-Leistung, der gesamten Lese- und Schreib-Aktivitäten der Festplatten, sowie des ein- und ausgehenden Netzwerktraffics innerhalb der letzten 24 Stunden.
Der Verwaltungsbereich bietet die Möglichkeit zum Starten, Beenden und Neustarten einer Instanz. Alle von EC2 bekannten Informationen können hierüber abgefragt und überwacht werden.
Mittels der Ansicht aller Instanzen erhält man einen Gesamtüberblick über den Zustand sämtlicher Instanzen eines Accounts. Anhand der grünen, roten und grauen Kaffeebohne wird der Status dargestellt.
Durch das Tippen auf eine Instanz erhält man detailliertere Informationen – siehe “Ansicht einer Instanz”.
Folgende Wünsche zur Funktionserweiterung wurden an 9apps bisher von den Benutzern herangetragen, die sukzessive eingebaut werden:
Ein Video von Salesforce erklärt sehr schön und deutlich den Hintergrund von Cloud Computing.
http://www.youtube.com/watch?v=xJCOzUk76GQ
Trotz ihrer relativ leistungsschwachen Hardware werden an Mobiltelefonen/ Smartphones mittlerweile dieselben Ansprüche gestellt wie an gewöhnliche Desktops PCs. Eine mögliche Lösung kommt aus Intels Forschungsabteilung von den Wissenschaftlern Byung-Gon Chun und Petros Maniatis. Bei der sogenannten Clone Cloud [1] wird eine exakte Kopie des Smartphones in der Cloud abgebildet. Alle für das Smartphone zu rechenintensiven Aufgaben werden dann von diesem Clone in der Cloud übernommen.
Clone Cloud Architecture [2]
Für die Kommunikation mit dem Clone innerhalb der Cloud Computing Umgebung wird eine schnelle mobile Internetverbindung (UMTS/ 3G) benötigt. Ein erster Prototyp wurde von Chun und Maniatis bereits auf das Android G1 portiert und übertrug ohne Probleme die rechenintensiven Aufgaben zu dem Clone in die Cloud.
Das Prinzip ist mit dem von Web basierten Anwendungen zu Vergleichen, die ebenfalls auf entfernten Servern und nicht auf dem Client lokal ausgeführt werden. Der Unterschied besteht darin, dass bei der Clone Cloud eine exakte 1:1 Kopie von der gesamten Telefonsoftware erstellt und auf einem entferntem Server abgelegt wird. Muss das Telefon nun komplexe und rechenintensive Aufgaben durchführen, werden Teilaufgaben (im Hintergrund) in die Cloud übertragen. Zu Beginn wird zusätzlich berechnet wie lange der Transfer mittels der aktuell verfügbaren Mobilfunkverbindung dauert und wie viel Akkuleistung dafür benötigt wird.
Clone Cloud Model [2]
Chun und Maniatis sehen als einen Vorteil der Clone Cloud die höheren Akkulaufzeiten, da die CPU des Mobiltelefons nicht mehr so stark beansprucht wird. Neben der besseren Effizienz soll Clone Cloud ebenfalls die Leistungsfähigkeit der Mobiltelefone steigern. Erste Tests mit einer speziell für Clone Cloud entwickelten Gesichtserkennungssoftware zeigten, dass die Analyse eines Photos auf einem Standard Android Mobiltelefon ca. 100 Sekunden Prozessorzeit benötigten. Wurde die Analyse hingegen mit dem Clone des Mobiltelefons auf einem Desktop PC ausgeführt, war der Vorgang nach 1 Sekunde beendet. Da Clone Cloud in einer Cloud Computing Umgebung betrieben wird, nutzt es dessen Ideen und Eigenschaften und kann somit zur Laufzeit den benötigten Speicher und die Rechenleistung beliebig skalieren.
Ein weiterer Anwendungsvorschlag kommt von dem NEC Wissenschaftler Ya-Yunn Su. Durch den Wandel der Mobiltelefone zu kleinen Allzweck-Computern erben diese auch die Sicherheitsprobleme, wie Viren und Würmer, von den Desktop PCs. Das Scannen des gesamten Dateisystems benötigt viel Rechenleistung, zu viel für Mobiltelefone. Dieser Vorgang kann mittels der Clone Cloud im Hintergrund bzw. auf dem Clone (auf dem entfernten Server) durchgeführt werden, sogar dann wenn das Telefon ausgeschaltet ist.
[1] CloneCloud Website
[2] CloneCloud Paper
Beim Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems (Eucalyptus)[1][2] handelt es sich um eine Open Source Software Infrastruktur zum Aufbau von skalierbaren Utility Computing bzw. Cloud Computing Umgebungen für spezielle Clustersysteme oder einfachen miteinander verbundenen Arbeitsplatzrechnern.
Eucalyptus wurde als ein Forschungsprojekt am Computer Science department an der University of California Santa Barbara entwickelt und wird mittlerweile von der Eucalyptus Systems Inc. vermarktet. Die Software wird aber weiterhin als Open Source Projekt gepflegt und weiterentwickelt. Die Eucalyptus Systems Inc. bietet darüber hinaus lediglich weitere Dienstleitungen und Produkte sowie einen professionellen Support rund um Eucalyptus an.
Folgende Funktionen stellt Eucalyptus bereit:
– Kompatibilität mit den Schnittstellen zu Amazon EC2 und S3 (SOAP und REST).
– Unterstützung aller Virtual Machines die auf einem Xen Hypervisor oder einer KVM ausgeführt werden.
– Administrationstools für die System- und Benutzerverwaltung
– Die Möglichkeit mehrere Cluster für eine Cloud zu konfigurieren, wobei jeder einzelne Cluster über eine private interne IP-Adresse verfügt.
Eucalyptus besteht aus fünf zusammenarbeitenden Hauptkomponenten um den angeforderten Cloud Service bereit zu stellen. Die Kommunikation zwischen den Komponenten erfolgt über gesicherte SOAP Nachrichten mittels WS-Security.
Cloud Controller (CLC)
Der Cloud Controller dient innerhalb einer Eucalyptus Cloud als Hauptkomponente für die Verwaltung des gesamten Systems und stellt den Administratoren und Benutzern einen zentralen Zugriffspunkt bereit. Die Kommunikation aller Clients mit dem Eucalyptus System erfolgt ausschließlich nur über den Cloud Controller anhand der auf SOAP oder REST basierenden API. Der Cloud Controller ist dafür zuständig, alle Anfragen zu der richtigen Komponente weiterzuleiten, diese zu sammeln und die Antwort der Komponente anschließend wieder zu dem Client zurück zu senden. Der Cloud Controller ist somit die öffentliche Schnittstelle einer Eucalyptus Cloud.
Cluster Controller (CC)
Der Cluster Controller ist innerhalb des Eucalyptus Systems für die Verwaltung des virtuellen Netzwerks zuständig. Der Cloud Controller erhält alle Anfragen auf Basis seiner SOAP oder REST Schnittstellen. Der Cloud Controller erhält alle Informationen über die vorhandenen Node Controllers des Eucalyptus Systems und ist für die Kontrolle des Lebenszyklus jedes einzelnen verantwortlich. Er leitet alle Anfragen an die Node Controller mit verfügbaren Ressourcen weiter um damit virtuelle Instanzen zu starten.
Node Controller (NC)
Ein Node Controller steuert das Betriebssystem und den zugehörigen Hypervisor eines Rechners (Node) im Eucalyptus System. Auf jeder physikalischen Maschine die eine durch den Cluster Controller instantiierte virtuelle Instanz auf Grund einer Anfrage beherbergt, muss eine Instanz eines Node Controller vorhanden sein.
Walrus (W)
Walrus ist für die Zugriffsverwaltung auf den Speicherdienst innerhalb eines Eucalyptus Systems zuständig. Walrus erhält die Anfragen über seine SOAP oder REST Schnittstelle.
Storage Controller (SC)
Der Storage Controller verwaltet den Speicherdienst innerhalb eines Eucalyptus Systems und verfügt über eine Schnittstelle zu Amazon’s S3 Dienst. Der Storage Controller arbeit in Verbindung mit Walrus und wird für die Speicherung und den Zugriff auf die Images der Virtual Machines, die Kernel Images, die RAM Disk Images und die Daten der Benutzer verwendet. Die Images der Virtual Machines können rein privat oder öffentlich zugänglich gemacht werden und können dabei komprimiert und verschlüsselt gespeichert werden. Die Images werden lediglich entschlüsselt, wenn ein Node eine neue virtuelle Instanz starten muss und dazu einen Zugriff auf das Image benötigt.
Ein Eucalyptus System vereint und verwaltet Ressourcen von Single-Cluster als auch Multi-Cluster Systemen. Dabei besteht ein Cluster aus einer Gruppe von Rechnern, die alle mit dem selben LAN verbunden sind. Zu jedem Cluster kann wiederum einer aber auch mehrere Node Controller gehören, die für die Verwaltung der Instantiierung und Beendigung der virtuellen Instanzen verantwortlich sind.
Wie in Abbildung 1 illustriert, besteht ein Single-Cluster aus mindestens zwei Maschinen. Auf dem einen werden der Cluster Controller, der Storage Controller und der Cloud Controller ausgeführt, auf dem anderen der Node Controller. Diese Art der Konfiguration ist vor allem für Experimente und schnelle Konfigurationen geeignet. Die dargestellte Konfiguration könnte ebenfalls auf einer einzigen Maschine implementiert werden. Allerdings ist dafür eine äußerst leistungsstarke Hardware notwendig!
Abbildung 1: Topologie einer Single-Cluster Eucalyptus Installation [2]
Wie in Abbildung 2 dargestellt, kann bei einem Multi-Cluster jede Komponente (CC, SC, NC, und CLC) auf einer separaten Maschine ausgeführt werden. Dies sollte die bevorzugte Art und Weise sein das Eucalyptus System zu konfigurieren, wenn damit ernsthaft gearbeitet werden soll. Mit einem Multi-Cluster kann zudem die Performance erhöht werden, indem einem Controller die passende Maschine zugewiesen wird. Zum Beispiel sollte der Cloud Controller auf einer Maschine mit einer schnellen CPU ausgeführt werden. Im Allgemeinen bringt die Entscheidung für einen Multi-Cluster eine höhere Verfügbarkeit, sowie eine bessere Lastverteilung und eine optimierte Verteilung der Ressourcen über alle Cluster. Das Clusterkonzept ist vergleichbar mit dem Konzept der Verfügbarkeitszonen der Amazon EC2. Dabei werden die Ressourcen über mehrere Verfügbarkeitszonen hinweg verteilt, damit ein Fehler in einer Zone nicht die Anwendung beeinträchtigt.
Abbildung 2: Topologie einer Multi-Cluster Eucalyptus Installation [2]
Folgende Hardwarevoraussetzungen müssen erfüllt sein, um darauf einen CC, CLC, Walrus oder SC auszuführen. [2]
Folgende Hardwarevoraussetzungen müssen erfüllt sein, um darauf einen NC auszuführen. [2]
Bei der Ubuntu Enterprise Cloud (UEC) handelt es sich um eine Open Source Initiative von Ubuntu, um auf eine einfachere Art und Weise skalierbare Cloud Infrastrukturen auf Basis von Eucalyptus bereitzustellen und diese zu konfigurieren.
Mit der Ubuntu Enterprise Cloud können Public Clouds erstellt werden, welche Amazon’s EC2 infrastructure nutzen. Es können damit aber genau so gut Private Clouds entwickelt werden, die auf der eigenen Infrastruktur im eigenen Rechenzentrum hinter der eigenen Firewall gehostet werden.
Bei Eucalyptus handelt es sich um eine Umgebung für Cloud Services, mit der Public Clouds auf Amazon’s EC2 Infrastruktur bzw. Private Clouds im hauseigenen Rechenzentrum erstellt werden können. Die grundlegenden Vorteile sollen hier noch einmal kurz aufgeführt werden:
Open Source und Entwicklung
Eucalyptus wurde geschaffen, um die Kommunikation und Forschung von Cloud Computing Plattformen zu fördern. Der Quellcode ist frei verfügbar, was es ermöglicht die Plattform so zu erweitern, damit sie den eigenen Anforderungen entspricht. Eucalyptus wird zunehmend weiterentwickelt. Darüber hinaus ist die Aufnahme und Integration von Funktionswünschen und Verbesserungsvorschlägen sehr schnell.
Community
Eucalyptus verfügt über eine große Community die gerne bereit ist einander zu helfen. Über die Foren kann schnell Kontakt zu anderen Benutzern aufgenommen und Hilfe bezogen werden.
Public Cloud
Eucalyptus funktioniert einwandfrei auf Amazon’s EC2 Framework und kann damit als Public Cloud eingesetzt werden.
Private Cloud
Eucalyptus kann auf der eigenen Infrastruktur im eigenen Rechenzentrum hinter der eigenen Firewall als Private Cloud eingesetzt werden. Dadurch ist die Kontrolle bzgl. der Sicherheit und der gesamten Umgebung in der eigenen Hand.
Portabilität
Auf Grund der Kompatibilität von Eucalyptus mit Amazon’s EC2 API sowie der Flexibilität von Eucalyptus, können Anwendungen ohne großen Aufwand von einer Cloud in die andere migriert werden. Darüber hinaus besteht die Möglichkeit des Aufbaus von Hybrid Clouds, indem eine Private Cloud mit einer Public Cloud erweitert bzw. kombiniert wird.
Qualitativ durch Tests
Durch den Einsatz von Eucalyptus in Ubuntu’s Enterprise Cloud findet tagtäglich ein weltweiter realer Test auf Basis von mehr als tausend Server-Instanzen statt.
Kommerzieller Support
Neben den Foren der Eucalyptus Community kann natürlich auch auf einen kommerziellen Support zurückgegriffen werden.
Quellen:
[1] Eucalyptus
[2] IBM developerWorks
Unter http://clouduser.de/publikationen kann ein ausführliches Paper zum Thema Cloud Computing eingesehen und heruntergeladen werden. Das Paper behandelt alle grundlegenden Aspekte rund um das Thema Cloud Computing und beinhaltet ein praktisches Beispiel, wie Cloud Computing im Unternehmen einzusetzen wäre. Zudem wird u.a. vor dem Hintergrund der Datensicherheit das Cloud Computing kritisch betrachtet.
Das Paper kann HIER direkt heruntergeladen werden.
Titel: Cloud Computing, A Practical Approach
Autor: Toby Velte, Anthony Velte, Robert Elsenpeter
Beschreibung:
“Cloud Computing: A Practical Approach provides a comprehensive look at the emerging paradigm of Internet-based enterprise applications and services. This accessible book offers a broad introduction to cloud computing, reviews a wide variety of currently available solutions, and discusses the cost savings and organizational and operational benefits. You’ll find details on essential topics, such as hardware, platforms, standards, migration, security, and storage. You’ll also learn what other organizations are doing and where they’re headed with cloud computing. If your company is considering the move from a traditional network infrastructure to a cutting-edge cloud solution, you need this strategic guide.
– Costs, benefits, security issues, regulatory concerns, and limitations
– Service providers, including Google, Microsoft, Amazon, Yahoo, IBM, EMC/VMware, Salesforce.com, and others
– Hardware, infrastructure, clients, platforms, applications, services, and storage
– Standards, including HTTP, HTML, DHTML, XMPP, SSL, and OpenID
– Web services, such as REST, SOAP, and JSON
– Platform as a Service (PaaS), Software as a Service (SaaS), and Software plus Services (S+S)
– Custom application development environments, frameworks, strategies, and solutions
– Local clouds, thin clients, and virtualization
– Migration, best practices, and emerging standards”
Bestellmöglichkeit: Amazon
Cover:
Titel: Cloud Computing: Web-Based Applications That Change the Way You Work and Collaborate Online
Autor: Michael Miller
Beschreibung:
“Computing as you know it has changed. No longer are you tied to using expensive programs stored on your computer. No longer will you be able to only access your data from one computer. No longer will you be tied to doing work only from your work computer or playing only from your personal computer.
Enter cloud computing–an exciting new way to work with programs and data, collaborate with friends and family, share ideas with coworkers and friends, and most of all, be more productive! The “cloud” consists of thousands of computers and servers, all linked and accessible to you via the Internet.
With cloud computing, everything you do is now web-based instead of being desktop-based; you can access all your programs and documents from any computer that’s connected to the Internet. Whether you want to share photographs with your family, coordinate volunteers for a community organization, or manage a multi-faceted project in a large organization, cloud computing can help you do it more easily than ever before. Trust us. If you need to collaborate, cloud computing is the way to do it.
– Learn what cloud computing is, how it works, who should use it, and why it’s the wave of the future.
– Explore the practical benefits of cloud computing, from saving money on expensive programs to accessing your documents ANYWHERE.
– See just how easy it is to manage work and personal schedules, share documents with coworkers and friends, edit digital photos, and much more!
-Learn how to use web-based applications to collaborate on reports and presentations, share online calendars and to-do lists, manage large projects, and edit and store digital photographs.”
Bestellmöglichkeit: Amazon
Cover:
Titel: Cloud Application Architectures: Building Applications and Infrastructure in the Cloud
Autor: George Reese
Beschreibung:
“If you’re involved in planning IT infrastructure as a network or system architect, system administrator, or developer, this book will help you adapt your skills to work with these highly scalable, highly redundant infrastructure services.
While analysts hotly debate the advantages and risks of cloud computing, IT staff and programmers are left to determine whether and how to put their applications into these virtualized services. Cloud Application Architectures provides answers — and critical guidance — on issues of cost, availability, performance, scaling, privacy, and security.
With Cloud Application Architectures, you will:
– Understand the differences between traditional deployment and cloud computing
– Determine whether moving existing applications to the cloud makes technical and business sense
– Analyze and compare the long-term costs of cloud services, traditional hosting, and owning dedicated servers
– Learn how to build a transactional web application for the cloud or migrate one to it
– Understand how the cloud helps you better prepare for disaster recovery
– Change your perspective on application scaling
– To provide realistic examples of the book’s principles in action, the author delves into some of the choices and operations available on Amazon Web Services, and includes high-level summaries of several of the other services available on the market today.
Cloud Application Architectures provides best practices that apply to every available cloud service. Learn how to make the transition to the cloud and prepare your web applications to succeed.”
Bestellmöglichkeit: Amazon
Cover: