Categories
Literatur

Buch – Programming Amazon Web Services: S3, EC2, SQS, FPS, and SimpleDB

Titel: Programming Amazon Web Services: S3, EC2, SQS, FPS, and SimpleDB

Autor: James Murty

Beschreibung:
“Building on the success of its storefront and fulfillment services, Amazon now allows businesses to “rent” computing power, data storage and bandwidth on its vast network platform. This book demonstrates how developers working with small- to mid-sized companies can take advantage of Amazon Web Services (AWS) such as the Simple Storage Service (S3), Elastic Compute Cloud (EC2), Simple Queue Service (SQS), Flexible Payments Service (FPS), and SimpleDB to build web-scale business applications. With AWS, Amazon offers a new paradigm for IT infrastructure: use what you need, as you need it, and pay as you go. Programming Web Services explains how you can access Amazon’s open APIs to store and run applications, rather than spend precious time and resources building your own. With this book, you’ll learn all the technical details you need to: Store and retrieve any amount of data using application servers, unlimited data storage, and bandwidth with the Amazon S3 service Buy computing time using Amazon EC2’s interface to requisition machines, load them with an application environment, manage access permissions, and run your image using as many or few systems as needed Use Amazon’s web-scale messaging infrastructure to store messages as they travel between computers with Amazon SQS Leverage the Amazon FPS service to structure payment instructions and allow the movement of money between any two entities, humans or computers Create and store multiple data sets, query your data easily, and return the results using Amazon SimpleDB. Scale up or down at a moment’s notice, using these services to employ as much time and space as you need Whether you’re starting a new online business, need to ramp upexisting services, or require an offsite backup for your home, Programming Web Services gives you the background and the practical knowledge you need to start using AWS. Other books explain how to build web services. This book teaches businesses how to take make use of existing services from an established technology leader. ”

Bestellmöglichkeit: Amazon

Cover:

Categories
Videos

Video: Erste Schritte mit Amazon EC2

Dieses Video gibt einen praktischen Einblick in die Nutzung von Amazon EC2.

via YouTube

Categories
Services @de

Was ist AWS Import/Export?

Der Import/Export [1] Dienst der Amazon Web Services dient dazu, große Datenmengen auf einem schnelleren Weg in die Amazon Cloud zu transferieren bzw. diese hinaus zu bekommen, indem die Daten auf einem Datenträger auf postalischen Weg an Amazon verschickt werden. Dazu überträgt Amazon die Daten direkt vom gelieferten Datenträger über ihr internes Netzwerk in die Cloud. In einigen Fällen ist es kostengünstiger die Daten auf diesem Weg in die Amazon Cloud zu übertragen, als den Weg über das Internet zu wählen und dabei ggf. die Geschwindigkeit der Internetverbindung zu erhöhen.

Vorgehensweise

  • Vorbereiten eines Datenträgers mit den zu transferierenden Daten.
  • Eine Manifest Datei, die alle Informationen (Amazon S3 buckt, AWS Access Key ID, Rücksendeadresse) an Amazon verschicken.
  • Anschließend sendet Amazon eine E-Mail mit einem eindeutigen Kennzeichen und der AWS Versandadresse an die der Datenträger versendet werden muss.
  • Jetzt muss der Datenträger noch für die Identifizierung und Authorisierung vorbereitet werden, indem die Manifest-Datei und die Job-Id mit einer Digitalen Signatur verschlüsselt und auf den Datenträger hinterlegt werden.
  • Der Datenträger mird mit sämtlichen Zubehör an Amazon verschickt.


[2]

Wofür kann AWS Import/Export verwendet werden?

  • Datenmigration: Große Menge an Daten die erstmals in die Amazon Cloud transferiert werden sollen. AWS Import/Export ist in der Regel schneller als der Datentransfer über das Internet.
  • Externe Datensicherung: Vollständige oder Inkrementelle Backups können durch Amazon S3 zuverlässig und redundant gesichert werden.
  • Direkter Datenaustausch: Erhält man von seinen Geschäftspartnern die Daten regelmäßig auf Datenträgern, können diese auf direkten Weg zu Amazon versendet werden. Von dort werden die Daten dann in das eigene Amazon S3 bucket importiert.
  • Systemwiederherstellung: Für den Fall eines Systemausfalls und der notwendigen Wiederherstellung können die Daten mittels AWS Import/Export von Amazon S3 heruntergeladen, auf einem Datenträger gespeichert und anschließend in das eigene (lokale) System wieder importiert werden.

Quellen:

[1] AWS – Import/Export
[2] Graphik: AWS – Import/Export

Categories
Services @de

Decaf – Mobiles Infrastrukturmanagement für Amazon EC2

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.

Was ist Decaf?

  • Decaf ist eine auf Basis von Android funktionierende mobile Infrastrukturmanagementsoftware zur Verwaltung von Amazon EC2 Instanzen.

Welche Funktionen bietet Decaf?

  • Monitoring der Server inkl. Benachrichtigungen bei evtl. Ausfällen.
  • Kontinuierliche graphische Darstellung der aktuellen Zustände der Instanzen als Widget. Das beinhaltet die CPU-Auslastung, Netzwerk Aktivitäten und die Lese- und Schreibzugriffe der Festplatten.
  • Alle Managementfunktionen von Amazon EC2 stehen zur Verfügung, darunter z.B. Stoppen, Neustart und Monitoring der Instanzen oder das Hinzufügen von weiteren Volumes.
  • Zugriff auf alle Informationen von Amazon EC2, wie z.B. einer Gesamt Zusammenfassung bis zu Details der einzelnen Instanzen.

Zukünftige Funktionen?

  • Verwaltung von mehreren Amazon EC2 Accounts.
  • Entwicklung einer speziellen Schnittstelle für Kunden, die eine vielzahl an Instanzen zu verwalten haben.

Das Dashboard

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

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.

Ansicht einer Instanz

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.

Ansicht mehrerer Instanzen

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.

  • Grün = alles ist in Ordnung
  • Rot = es besteht ein Problem
  • Grau = die Instanz ist nicht verfügbar

Durch das Tippen auf eine Instanz erhält man detailliertere Informationen – siehe “Ansicht einer Instanz”.

Wunschliste

Folgende Wünsche zur Funktionserweiterung wurden an 9apps bisher von den Benutzern herangetragen, die sukzessive eingebaut werden:

  • Monitoring von Ports (ssh, http, mysql, smtp, etc.)
  • Verwaltung mehrerer Accounts
  • Verwaltung von Images und Snapshots
  • Integration von CloudWatch inkl. Autoscaling und Loadbalancing
  • Konfiguration der Diagramme bzgl. der Größenangaben (Widget und CloudWatch)
  • Einstellungen von Schwellwerten und Integration einer Alarmfunktion auf Basis der CloudWatch Daten
  • Integration von CloudFront
  • Integration mit ‘ConnectBot’
  • Anbindung weiterer Anbieter (möglicherweise über Plugins)
  • Ein Release für das iPhone ist ebenfalls geplant.

Weitere Informationen

Categories
Grundlagen Videos

Video: Was ist Cloud Computing?

Ein Video von Salesforce erklärt sehr schön und deutlich den Hintergrund von Cloud Computing.

http://www.youtube.com/watch?v=xJCOzUk76GQ

Categories
Services @de

Eucalyptus – Eine Open Source Infrastruktur für die eigene Cloud

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.

Architektur

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]

Eucalyptus und die Ubuntu Enterprise Cloud

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.

Vorteile von Eucalyptus

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

Categories
Literatur

Cloud Computing Paper

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.

Categories
Literatur

Buch – Cloud Computing, A Practical Approach

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:

Categories
Grundlagen

Infrastructure as a Service

Infrastructure as a Service (IaaS) ist die unterste Schicht des Cloud Computing Service-Models. Sie bildet die Grundlage und stellt die grundlegenden Dienste wie Speicherplatz und Rechenkapazität bereit. In diesem Zusammenhang kann auch von Hardware as a Service (HaaS) gesprochen werden, da die gesamte Infrastuktur – Server, Speicherplatz, aber auch Router und Switches – mittels Virtualisierung bereitgestellt und gemietet (i.d.R pay per use) werden. Die gesamte Infrastruktur ist so skaliert, dass sie in Zeiten von Spitzenlast dynamisch erweitert wird und somit unterschiedlichen Auslastungen angepasst werden kann. Bei IaaS ist der Drittanbieter lediglich für die Bereitstellung und Wartung der Hardware zuständig. Alle anderen benötigten Ressourcen wie z.B. das Betriebssystem, Anwendungen etc. obligen dem Unternehmen.

Infrastructure as a Service
Infrastructure as a Service [1]

[1] Microsoft Press
Cloud Computing mit der Microsoft Plattform
Microsoft Press PreView 1-2009