Kategorien
Services

Die 11 besten Open Source Cloud Computing Projekte 2009

Auf Basis von John Willis’s Cloud Computing Awards 2009 – „The Cloudies“, hat Mark Hinkle seine Top 11 Open Source Cloud Computing Projekte 2009 ausgewählt. Da ich Open Source und Cloud Computing für unzertrennlich halte, stelle ich die Projekte – Chef, collectd, Eucalyptus, OpenNebula, openQRM, Puppet, RabbitMQ, Zenoss, Bitnami, ECP und Ubuntu Enterprise Cloud jeweils kurz vor.

Chef

Bei Chef handelt es sich um ein Integrations-Framework für das Konfigurationsmanagement aller Arten von IT Infrastrukturen, aber speziell für die Bereitstellung von Cloud Umgebungen. Dazu wird mittels eines Quellcodes beschrieben, wie jeder Teil der Infrastruktur aufgebaut werden soll. Diese Infrastrukturbeschreibung wird anschließend einem Server zugeordnet. Das Ergebnis ist eine voll automatisierte Infrastruktur.

Webseite: http://wiki.opscode.com/display/chef/Home

collectd

collectd ist ein Daemon, der Statistiken der System-Performance sammelt und sie in RRD-Dateien speichert. Der Daemon verfügt über eine Plugin Architektur, die es erlaubt Informationen von einer Vielzahl von Diensten und Servern wie Apache, memcache und Linux-VServer zu sammeln. collectd ist damit die Ideale Erweiterung für bereits vorhandene System Management-Tools.

Webseite: http://collectd.org

Eucalyptus

Eucalyptus steht für „Elastic Utility Computing Architecture Linking Your Programs To Useful Systems“ und dient zum Erstellen einer Cloud Computing Infrastruktur auf Cluster Systeme. Die aktuelle Schnittstelle ist mit den Schnittstellen von Amazon EC2, S3 und EBS kompatible. Die Infrastruktur ist allerdings dafür gedacht, mehrere Client-Schnittstellen unterstützen. Eucalyptus basiert auf gängigen Linux-Tools und grundlegenden Web-Service-Technologien, die eine einfache Installation und Wartung ermöglichen.

Ich habe Eucalyptus bereits vor kurzem ausführlich vorgestellt. Der Artikel kann HIER nachgelesen werden.

Webseite: http://open.eucalyptus.com

OpenNebula

Mit OpenNebula kann jegliche Art von Cloud Umgebung aufgebaut werden. Darüber hinaus können damit virtuelle Infrastrukturen in einem Rechenzentrum oder einem Cluster verwaltet werden, oder eine lokale Infrastruktur mit einer Public Cloud Infratruktur verbunden und kombiniert werden, um damit hoch skalierbare Hosting Umgebungen zu entwickeln. OpenNebula unterstützt ebenfalls Public Clouds, indem Schnittstellen zur Verfügung stehen mit denen virtuelle Machinen, Speichersysteme und das Netzwerk verwaltet werden können.

Webseite: http://www.opennebula.org

openQRM

openQRM ist eine Open Source Lösung zur Verwaltung und dem automatisierten und skalierbaren Betrieb von Rechenzentren- und Cloud-Computing-Plattformen. Die Administration der physikalischen Server und der virtuellen Maschinen erfolgt dabei in einer übergreifenden zentralen Managementkonsole. Mit einer Snapshot-Funktion können Serversysteme dupliziert und Backup/Restore, sowie Server-Versionierung und eine dynamische Anpassung des Speicherplatzes vorgenommen werden.

Webseite: http://www.openqrm.com

Puppet

Puppet ist ein Model-Driven Open Source-Framework für den automatisierten Aufbau und die Konfiguration von Servern. Mit Puppet können administrative Aufgaben wie z.B. das Hinzufügen von Benutzern, die Installation von Software oder die Aktualisierung der Serverkonfiguration auf vielen unterschiedlichen Arten von Systemen vorgenommen werden. Der Clou hierbei ist allerdings, dass immer derselbe Code verwendet werden kann, obgleich die Systeme auf völlig unterschiedlichen Betriebssystemen laufen.

Webseite: http://reductivelabs.com/products/puppet

RabbitMQ

RabbitMQ is ein Enterprise Messaging System welches auf dem AMQP Standard aufsetzt. AMQP ist ein Standard, mit dem Middleware Systeme, untereinander Nachrichten austauschen können.

Webseite: http://www.rabbitmq.com

Zenoss

Zenoss dient zur Überwachung der Amazon Web Services und vielen weiteren Arten von Cloud Computing Umgebungen und virtuellen Infrastrukturen.

Webseite: http://community.zenoss.org/index.jspa

Bitnami

Bitnami vereinfacht die Bereitstellung von Web Anwendungen, sowohl virtuell als auch in einer Cloud. Jeder BitNami Stack beinhaltet eine Anwendung, die mit jeder von ihr benötigten Software so ausgestattet ist um vollständig ausgeführt zu werden. BitNami Stacks sind kostenlos als gewöhnliche Installationsroutinen, virtuelle Machine Images und Cloud Templates erhältlich. Systeme die z.B. BitNami Anwendungen verwenden sind u.a. Drupal, Joomla!, WordPress, SugarCRM, Alfresco, Redmine und Subversion.

Webseite: http://www.bitnami.org

Enomaly’s Elastic Computing Platform (ECP)

ECP ist eine programmierbare virtuelle Cloud Infrastruktur für kleine, mittlere und große Unternehmen. Es unterstützt beim Design, Bereitstellen und Verwalten von virtuellen Anwendungen innerhalb einer Cloud. Weitere Funktionen sind die automatische Skalierung von virtuellen Maschinen, Load Balancing, Systemanalysse, sowie die Konfiguration und Optimierung der Cloud Kapazitäten.

Webseite: http://src.enomaly.com

Ubuntu Enterprise Cloud

Die Ubuntu Enterprise Cloud (UEC) ist in der Ubuntu Server Edition enthalten und beinhaltet eine Vielzahl an Open Source Projekten wie z.B. Eucalyptus. Anwendern steht damit die Möglichkeit offen eine eigene Private Cloud aufzusetzen.

Ein Tutorial zum Einrichten einer eigenen Private Cloud mit der Ubuntu Enterprise Cloud habe ich gestern HIER veröffentlicht.

Webseite: http://www.ubuntu.com/cloud

Quelle

Mark Hinkle
John Willis

Kategorien
Videos

Video: Erste Schritte mit Microsoft Windows Azure.

Das Video gibt einen kurzen Einblick in die Microsoft Windows Azure Plattform.

via YouTube

Kategorien
Literatur

Buch – Cloud Computing Best Practice Specialist Guide for Storage Management and Platform as a service (PaaS)

Titel: Cloud Computing Best Practice Specialist Guide for Storage Management and Platform as a service (PaaS): Understanding and Applying PaaS Solutions

Autor: Ivanka Menken, Gerard Blokdijk

Beschreibung:
„Platform as a service (PaaS) is the delivery of a computing platform and solution stack as a service. It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers, providing all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely available from the Internet – with no software downloads or installation for developers, IT managers or end-users.
PaaS offerings include workflow facilities for application design, application development, testing, deployment and hosting as well as application services such as team collaboration, web service integration and marshalling, database integration, security, scalability, storage, persistence, state management, application versioning, application instrumentation and developer community facilitation. These services are provisioned as an integrated solution over the web.

The primary goal of this book is to provide the quality education and support materials needed to enable the understanding and application of PaaS Platform and Storage Management in a wide range of contexts.

The PaaS Platform and Storage Management Certification Scheme has been created to support the IT Professional who needs to be a ’niche generalist‘, especially in a rapidly changing area like PaaS Platform and Storage Management.

This book Covers:

  • Platform As A Service: How to Build applications in days or weeks not months.
  • PaaS Development: How to Develop On-Demand Apps
  • Cloud Platform for ISVs: How to Create and Sell SaaS Applications
  • Storage Management: Manage Storage Virtualization and Reduce Costs
  • Backup and Recovery: How to Improve Backup & Recovery in Your Virtual Environment

Filled with thought provoking questions to challenge your thinking and understanding, this book is your Real World Guide to PaaS Platform and Storage Management Skills, with Key information and real world examples organized around the actual day-to-day tasks and challenges you’ll face in the field of IT Management. Practice what you’ve learned with challenging PaaS Platform and Storage Management Specialist exam style questions.

Bestellmöglichkeit: Amazon

Cover:

Kategorien
Literatur

Buch – Development with the Force.com Platform: Building Business Applications in the Cloud

Titel: Buch – Development with the Force.com Platform: Building Business Applications in the Cloud

Autor: Jason Ouellette

Beschreibung:
„Using the Force.com platform, enterprise developers can build and deploy powerful applications far more rapidly than traditional J2EE, Microsoft .NET, or LAMP technology stacks permit. With a free subscription to the Force.com platform, developers can build apps that solve virtually any enterprise challenge with remarkable value, scalability, and reliability.

This is the first book that brings together all the practical, technical guidance you need to make the most of Force.com in your own custom enterprise applications. Leading Force.com developer Jason Ouellette helps you identify suitable uses for Force.com and provides all the insights and sample code needed to rapidly prototype, deploy, and integrate with production-quality Force.com applications.

Ouellette provides realistic code examples at every step, emphasizing maintainability, flexibility, and interoperability throughout. Writing for developers, architects, and analysts, he shows how to

  • Create custom enterprise apps on Force.com in days or weeks, not months or years
  • Leverage Force.com’s extensive capabilities for storing, managing, and securing data
  • Quickly create sophisticated business logic with the Apex programming language
  • Use Visualforce to construct custom user interfaces
  • Establish automated or semiautomated workflows
  • Implement Ajax behaviors without writing JavaScript code or learning new JavaScript libraries
  • Integrate Force.com-based data and processes with other applications, inside and outside the platform
  • Display reports as state-of-the-art dashboards
  • Integrate Force.com applications with existing Single Sign-On systems

Bestellmöglichkeit: Amazon

Cover:

Kategorien
Services

Die Google App Engine

Die Google App Engine [1] ist das Platform as a Service Angebot von Google und
bietet Softwareentwicklern die Entwicklung und das Hosting ihrer Anwendungen auf der
Infrastruktur von Google an. Der Service ist bis zu einem bestimmten Grad kostenlos.
Folgende Richtlinien müssen eingehalten werden, um den Dienst kostenlos nutzen zu
dürfen:

  • Seitenaufruf einer Anwendung: max. 1.300.00 mal pro Tag und max. 7.400 mal pro
    Minute
  • Pro Anwender dürfen max. 10 Applikationen erstellt werden.
  • Max. Versand von E-Mails über die entsprechende API: 2.000 pro Tag
  • Ein-/ und ausgehender Datentransfer max. 1 GB am Tag und max. 56 MB pro Minute
  • Pro Tag darf eine Applikation max. 6,5 CPU-Stunden nutzen

Die Entwicklungsumgebung

Die Google App Engine wurde bereitgestellt um Anwendungen auch während hoher Last oder während der Verarbeitung von vielen Daten zuverlässig ausführen zu lassen. Dazu unterstütz die Google App Engine folgende Funktionen:

  • Dynamische Webdienste inkl. der gänigigen Web-Technologien
  • Persistenter Speicher inkl. der Möglichkeit für Abfragen, Sortierungen und Transaktionen
  • Automatische Skalierung und Loadbalancing
  • APIs für die Authorisierung der Benutzer und die Nutzung der Google E-Mail Accounts
  • Eine Entwicklungsumgebung für lokale System für die Simulation der Google App Engine
  • Warteschlangen für die Steuerung von Aufgaben die eine hohe Performance benötigten
  • Aufgabenverwaltung für die Steuerung von Events zu bestimmten Zeitpunkten
  • Die Anwendungen werden in einer Sandbox ausgeführt. Dadurch hat die Anwendung niemals direkten Zugriff auf das darunterliegende Betriebssystem.
  • Für die Entwicklung stehen mit der Java JRE 6, sowie Python 2.5.2. zwei Laufzeitumgebungen zu Verfügung.
  • Für das Speichern der Anwendungen wird von der App Engine eine verteilte Datenhaltung verwendet, wobei der verteilte Speicher mit der Menge der Daten wächst.

App Engine Services

Die Google App Engine bietet folgende APIs zur Arbeit und der Verwaltung der Applikationen:

  • URL Fetch: Mit dem URL-Fetch Service können Anwendungen auf andere Ressourcen wie Web Services oder Daten über das Internet zugreifen. Dabei wird dieselbe Google Infrastuktur verwendet, wie sie auch von bekannten Google Produkten genutzt wird.
  • Mail: Mittels der App Engine Mail API sind Anwendungen in der Lage direkt E-Mails zu versenden.
  • Memcache: Mittels Memcache kann auf Daten zugegriffen werden, die nicht im persistenten Speicher abgelegt werden. Durch einen schnellen in-Memory Key-Value Cache ist eine Anwendung in der Lage mehreren Instanzen parallel nur temporär vorhandene Daten performant bereitzustellen.
  • Image Manipulation: Mittels der Image Manipulation API sind Anwendungen in der Lage Bilder zu verändern. Bei Bildern im JPEG oder PNG Format können folgende Manipulation durchgeführt werden:
    • Anpassen der Größe
    • Zuschneiden/ Beschneiden
    • Drehen
    • Spiegeln

Geplante Tasks und Warteschlangen

Anwendungen können so gesteuert werden, dass sie hoch performante Aufgaben dann erledigen, wenn die Belastung durch Anfragen nicht so hoch ist, z.B. zu einer vorher definierten Uhrzeit oder Tag. Des Weiteren besteht die Möglichkeit eine Anwendung in eine Warteschleife zu legen oder sie im Hintergrund auszuführen.

Quellen:

[1] Google App Engine

Kategorien
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

Kategorien
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.

Kategorien
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:

Kategorien
Grundlagen

Platform as a Service

Platform as a Service (PaaS) ist die mittlere Schicht des Cloud Computing Service-Models und geht einen Schritt weiter als IaaS. Sie ist dafür zuständig eine transparente Entwicklungsumgebung bereitzustellen. Dabei stellt der Drittanbieter eine Plattform zur Verfügung auf der (Web)-Anwendungen entwickelt, getestet und gehostet werden können. Die Anwendungen werden anschließend auf der Infrastruktur des Anbieters ausgeführt und nutzen dessen Ressourcen. Der vollständige Lebenszyklus einer Anwendung kann darüber vollständig verwaltet werden. Über APIs können die Dienste auf der Plattform des jeweiligen Anbieters angesprochen werden. Der Vorteil besteht darin, dass vor allem kleine Unternehmen ihre Entwicklungsinfrastruktur auf ein Minimum beschränken können. Sie benötigen lediglich einen Desktop-PC, einen Web-Browser, evtl. eine lokale IDE, eine Internetverbindung und ihr Wissen, um Anwendungen zu entwickeln. Der Rest obligt dem Drittanbieter, der für die Infrastruktur (Betriebssystem, Webserver, Entwicklungsumgebung etc.) verantwortlich ist. Auch hier erfolgt die Abrechnung mit dem Prinzip per pay use.

Platform as a Service
Platform as a Service [1]

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