Glide OS

Mit eyeOS habe ich vor kurzem bereits einen Cloud Desktop vorgestellt. Heute folgt mit Glide OS nun der Zweite.

Wie bei eyeOS handelt es sich bei Glide OS in der aktuellen Version 4.0 um ein webbasiertes Betriebssystem, dass unabhängig von der Hardware und dem darauf ausgeführten "klassischen" Betriebssystem ausgeführt werden kann und auf das mit einem Standard Webbrowser zugegriffen wird. Der Zugriff kann dabei von einem gewöhnlichen PC (http://desktop.glidesociety.com/default.aspx) oder einem Smartphone (http://www.glidemobile.com/browser_index.aspx) stattfinden.

Zu folgenden Systemen ist Glide OS derzeit kompatibel:

  • Windows
  • Mac OS X
  • Linux
  • Solaris
  • Android
  • BlackBerry
  • iPhone
  • Palm Pre
  • Symbian
  • Windows Mobile

Für Android und Blackberry stehen zusätzlich proprietäre Anwendungen bereit, für iPhone/iPod Touch, sowie Palm und Symbian sollen welche folgen.

Für die Webbrowser Firefox, Internet Explorer und Chrome stehen darüber hinaus spezielle Plugins zur Verfügung.

Die Architektur von Glide OS basiert auf einem Mix aus C++, HTML, JavaScript (AJAX) und Flash Applikationen. Mit dem Glide Sync App können Daten zwischen dem Glide OS Desktop und dem lokalen PC ausgetauscht werden. Dabei werden die Daten zentral auf einem Glide OS Server gespeichert. Neben einem Programm zur Bildbearbeitung sind weitere Apps wie z.B. eine Office Suite (wobei ich eine Textverarbeitung nicht gefunden habe), ein E-Mail Client oder ein Kalender vorhanden. weitere Anwendungen inkl. Screenshots sind weiter unten zu sehen.

Glide OS ist ein zwei Versionen verfügbar. Die kostenlose bietet 30 GB Speicherplatz und kann von bis zu 6 unterschiedlichen Benutzern verwendet werden. Die Premium Variante kostet entweder $4.95 monatlich oder $49.95 pro Jahr. Das beinhaltet dann 250 GB Speicherplatz und 25 unterschiedliche Benutzer.

Screenshots & Anwendungen

Der Anmeldedialog

Der Startbildschirm nach der Anmeldung

Unter "Settings" können benutzerspezifische Einstellungen vorgenommen werden.

Mit "Draw" steht ein rudimentäres Malprogramm ähnlich Microsoft Paint zur Verfügung.

Mit dem "Address Book" können die Kontakte verwaltet werden.

Hinter "Stickies" verbergen sich Notizzettel für den Desktop.

Für die Synchronisation mit dem lokalen PC wird für jedes Betriebssystem eine spezielle Anwendung benötigt.

Mit dem "Calculator" steht auch ein wissenschaftlicher Taschenrechner bereit.

Beim Versuch den Text in der Textverarbeitung "Write" zu vergrößern, wurde meine Eingabe immer wieder gelöscht, daher nur fett!

Ein Blick auf den "Calender".

Die Präsentationsanwendung "Present".

Das Bildbearbeitungsprogramm "Photo Edit".

Mittels "Customize" kann das Aussehen des Desktops angepasst werden.

Quelle



Peecho's Printcloud – Printing as a Service

Mit der Printcloud bietet das Unternehmen Peecho aus den Niederlanden einen Cloud Service, mit der ein einheitlicher Zugang zu allen Druckumgebungen auf der ganzen Welt ermöglicht wird. Es reicht dafür aus, lediglich eine eigene Benutzerschnittstelle zu erstellen. Der Rest wird von der Printcloud auf Basis von pay-per-use und ohne eine erforderliche Menge abgewickelt. Der gesamte Prozess vom Auftragseingang über die Verarbeitung bis hin zur Produktion und dem Versand von personalisierten Produkten wird von der Printcloud übernommen.

Was bietet die Printcloud?

  • Grafik-Design
    Vollständige Unterstützung von Adobe Indesign IDML. Weltweit kann jeder Graphikdesigner für ein Unternehmen, dass die Printcloud nutzt, Produkte entwerfen.
  • Einfache Konnektivität
    Mit Hilfe der REST API kann sich jede Anwendung (z.B. eine Webseite, eine mobile Anwendung, eine Desktop Anwendung oder ein Gadget eines Sozialen Netzwerks) mit der Printcloud verbinden.
  • Software
    Programme stehen für das iPhone und Adobe Flex zur Verfügung.
  • Skalierbarkeit
    Auf Grund von Cloud Computing Technologien können die Kapazitäten in wenigen Minuten erhöht werden, wodurch kein Engpass entsteht.
  • Weltweite Produktion
    Auf Basis von Druckstandards wie JDF und JMT kommuniziert die Printcloud mit einem weltweiten Netzwerk von Druckumgebungen, um das endgültig gedruckte Produkt so nah wie möglich am Ziel der Auslieferung zu produzieren und dadurch die Versandkosten zu minimieren.
  • Faire Abbrechung
    Es müssen keine langfristigen Verträge eingegangen werden was ebenfalls bedeutet, dass Terminierungsentgelte, Vorab-Investitionen oder Einrichtungskosten entstehen. Die Abbrechnung erfolgt vollständig auf einer pay per use Basis. Es wird also tatsächlich nur das bezahlt, was genutzt wird.

Funktionen

  • Produktkatalog
    Es steht ein Produktkatalog für Anwendungen/ Produkte von Kunden bereit, die schnell erstellt werden können.
  • Produktvorlagen
    Schnelle Erstellung von Produktvorlagen durch die Nutzung von Adobe InDesign IDML.
  • Einkaufswagen
    Es können mehrere Produkte in einer Bestellung zusammengefasst werden.
  • Abbrechnung
    Die Rechnungsstellung an die Endkunden kann von der Printcloud ebenfalls übernommen werden.
  • Gutschein-Codes
    Für werden mobile Zahlungen oder Marketing-Kampagnen können Gutschein-Codes erstellt werden.
  • Status-Updates
    Der Status des gesamten Prozessverlaufs kann zu jederzeit mittels einer eigens entwickelten Anwendung oder via der Webseite der Printcloud dem Endkunden angezeigt werden.

  • REST API
    Zur Kommunikation steht eine REST API zur Verfügung.
  • iPhone
    Hilfe bei der Entwicklung einer iPhone Anwendung für eigene Produkte mittels der Printcloud Open Source iPhone Anwendung.
  • Adobe Flex
    Vollständige Unterstützung von Adobe Flex.
  • Skalierbarkeit
    Hohe Skalierbarkeit und Verfügbarkeit durch Cloud Computing Technologien.
  • Weltweite Produktion
    Mit der Printcloud kann jede Druckumgebung auf der ganzen Welt angesprochen werden.

Technik

Die Printcloud Plattform basiert vollständig auf der Architektur der Amazon Web Service.

  • Simple Storage Service
    Alle Daten werden in Amazons Cloudspeicher Simple Storage Service (S3), wodurch eine unbegrenzte Menge an Daten verwaltet und gespeichert werden kann und von überall aus verfügbar ist.
  • Elastic Compute Cloud
    Das Versprechen der Skalierbarkeit realisiert die Printcloud durch den Einsatz von Amazons Elastic Compute Cloud (EC2), mit der je nach Bedarf die Systeme erweitert oder verkleinert werden können und damit saisonale Lastspitzen abgefangen werden können.
  • Simple Queue Service
    Mit dem Amazon Simple Queue Service (SQS) werden die einzelnen Prozesse der Printcloud separiert, wodurch kein neuer Auftrag den gesamten Prozess stören kann.
  • Relational Database Service
    Mit dem Relational Database Service (RDS) steht der Printcloud eine skalierbare Datenbank in der Cloud zur Verfügung.
  • Cloudfront
    Mit Amazon CloudFront werden die benötigten Daten eines Druckauftrags der am nächsten gelegenen Druckumgebung des Auslieferungsorts bereitgestellt.

Für Druckereien

Die Printcloud stellt Anwendungen von Drittanbietern (Händlern) eine REST API für die Kommunikation bereit. Der gesamte Prozess vom Auftragseingang über die Verarbeitung bis hin zur Produktion und dem Versand von personalisierten Produkten wird von der Printcloud für den Händler übernommen.

Aus der Sicht einer Druckerei arbeitet Peecho als eine Art Broker für die eigenen Produkte. Dazu steht ein einziger Einstiegspunkt zur Verfügung, wodurch Peecho's Partner ihren Kunden jegliche Art von Produkt anbieten können. Diese Produkte können in verschiedenen Produktionsstätten auf der ganzen Welt hergestellt werden.

Die Infrastruktur basiert vollständig auf den Amazon Web Services, wobei Technologien wie Elastic Load Balancing und Auto-Scaling genutzt werden, um innerhalb von wenigen Minuten die Skalierung der Systeme vorzunehmen.

Der (Kommunikations)-Prozess zwischen einem Partner und der Printcloud funktioniert wie folgt:

Die Ausgabe der Printcloud für 2D Drucker basiert auf den folgenden Elementen:

  • Job Ticket in JMF (Job Messaging Format) und JDF (Job Definition Format).
  • Produktbeschreibung als Adobe Indesign IDML (InDesign Markup Language).

Die Bestellungen werden dabei nicht direkt zu den Druckereien geschickt, um diese nicht zu überlasten. Vielmehr basiert der gesamte Vorgang auf dem Pull Mechanismus, wodurch die Druckereien die Möglichkeiten haben, die Arbeitslast selber zu bestimmen und können die Aufträge in ihren Produktionsfluss integrieren.

  • Erster Schritt: Ein Jobticket beziehen
    Jeder Job wird einer Druckerei in einer eigenen Amazon SQS Job Ticket Queue abgelegt. Diese können z.B. mittels SOAP abgefragt werden. Das Job Ticket basiert auf einer kleinen XML Datei, in der ein Zeiger auf die Produktionsdatei und die Produkbeschreibung zeigt. Mit der JDF Datei kann die Druckerei entscheiden, wann und wie das Produkt gedruckt werden soll.

    Ist das Ticket von der Druckerei heruntergeladen worden, wird der Status des Tickets auf "Queue" gesetzt, was gleichermaßen bedeutet, dass der Auftrag in Produktion ist.

  • Zweiter Schritt: Das Produkt erhalten
    Jedes Job Ticket zeigt zusätzlich auf einer Produktdatei, die in Amazon S3 gespeichert ist. Auf diesen Service kann mit SOAP oder REST mittels eines Schlüssels oder direkt mit einer URL zugegriffen werden. Abhängig von der Job Beschreibung kann die Druckerei die Produktdatei herunterladen, wenn sie bereit sind zu produzieren.
  • Dritter Schritt: Produzieren, Versenden und auf "versendet" setzen
    Jetzt kann die Druckerei die IDML Datei in ein für sie passendes Format übersetzen, wie z.B. PDF oder PPML. Die Druckerei produziert das Produkt und versendet es an die Empfänger. Anschließend wird der Status des Job Tickets auf "versendet" gesetzt.

    Für die ersten Schritte wird eine Open Source Beispielanwendung bereitgestellt, die Job Tickets und Produkt Dateien aus der Printcloud in einen bestimmten Ordner herunterlädt.

Quelle

  • PRINTCLOUD by Peecho



Was ist Cluster Computing?

Handelte es sich bei Supercomputern zu Beginn noch um Systeme mit spezieller Technologie, werden heute in der Regel gängige Servertechnologien eingesetzt. Dabei werden viele einzelne, in der Regel kostengünstige Server zu einem so genannten Servercluster vernetzt, um über die Rechenleistung eines Supercomputers zu verfügen.

Die Grundlagen des Cluster Computing legte Gene Amdahl als Computerarchitekt bei IBM. In seinem 1967 veröffentlichten Paper zum Thema ’Parallel Processing’ stellte er folgende These auf, die auch als Amdahl’s Law bezeichnet wird und als Basis für Multiprozessor sowie Clustercomputer gilt.

Das Gesetz besagt, ’... wie sich der nicht parallelisierbare Anteil eines Programms auf die Gesamtrechenzeit auswirkt ...’. Genauer bedeutet dies, dass die Geschwindigkeitszunahme in erster Linie durch den sequentiellen Anteil des Algorithmus beschränkt wird. Das ist darauf zurückzuführen, dass sich die Ausführungszeit nicht durch Parallelisierung verkleinern lässt.

Die ersten Ideen einen Computercluster aufzubauen stammen aus den Zeiten, in denen auch die ersten Computernetzwerke aufgebaut wurden. Der Grundgedanke zum Aufbau solcher Netzwerke bestand darin, Ressourcen in Form von Computersystemen untereinander zu verbinden und damit einen quasi Computercluster aufzubauen. Durch die Einführung der Paket vermittelnden Netzwerke im Jahre 1962 durch die Firma RAND, wurde auf dieser Grundlage 1969 das ARPANET Projekt gegründet. Dieses gilt als das erste Commodity-Netzwerk auf Basis eines Computercluster, in dem vier unterschiedliche Computercenter miteinander verbunden wurden. Jedes dieser vier Computercenter war für sich selbst wieder ein Computercluster, die aber nur autonom arbeiteten. Aus dem ARPANET wurde später das Internet, weshalb das Internet auch als die ’Mutter’ aller Computercluster gilt, aus dem Grund, das quasi alle Computerressourcen inkl. aller bereits bestehenden Cluster zusammengeschlossen werden können.

Ein Computercluster beschreibt also eine meist große Anzahl von einzelnen miteinander vernetzten Computern, die dazu verwendet werden einzelne Teilaufgaben, die zu einer Gesamtaufgabe gehören, parallel zu verarbeiten. Von außen betrachtet wirkt ein Computercluster wie ein einzelnes System. Die jeweiligen Knoten sind dabei untereinander über ein schnelles Netzwerk verbunden. Durch den Aufbau solcher Serverfarmen wird die Rechenkapazität und Verfügbarkeit deutlich gegenüber eines einzigen Computers erhöht. Vor allem die Ausfallsicherheit eines solchen Computercluster ist ein entscheidender Vorteil gegenüber einem einzelnen Computersystem. Fällt innerhalb eines Clusterverbunds ein einzelnes System aus, hat das keinen direkten Einfluss auf alle anderen beteiligten Systeme innerhalb des Clusters. Es wird damit also eine Redundanz erzielt. Computercluster können am besten für die Verarbeitung von Batch-Jobs eingesetzt werden, bei denen viele parallele Teilberechnungen durchgeführt werden. Handelt es sich bei der Verarbeitung jedoch um Teilaufgaben, die im hohen Maße synchronisiert werden müssen, sind Computercluster dafür nicht geeignet, da der Kommunikationsoverhead zwischen den einzelnen Systemen den Performancegewinn, der durch die parallele Verarbeitung entsteht, wieder relativiert.

Der erste kommerziell zu erwerbende Computercluster (ARCnet) wurde im Jahr 1977 von der Firma Datapoint vorgestellt. Mit dem so genannten VAXCluster für ihr
VAX-System hatte die Firma DEC im Jahr 1983 den ersten richtigen Erfolg im Bereich des kommerziellen Clustercomputing.

Arten von Computer Cluster

Das Ziel des Cluster Computing ist die Bereitstellung einer sehr hohen Rechenleistung bzw. einer besonders ausfallsicheren Rechnerumgebung. Von diesen Zielen ausgehend werden verschiedene Arten von Computercluster und dadurch auch deren Einsatzfeld definiert.

Bei Clustersystemen wird grundsätzlich zwischen homogenen und heterogenen Clustern unterschieden. Homogene Cluster zeichnen sich dadurch aus, dass die jeweiligen Computer, die dem Cluster angehören, alle das gleiche Betriebssystem und die gleiche Hardware einsetzen. Computer, die zu einem heterogenen Cluster gehören, dürfen über unterschiedliche Betriebssysteme und Hardware verfügen.

Heutzutage werden drei Arten von Computercluster unterschieden und eingesetzt:

  • Hochverfügbarkeit Cluster
    Hochverfügbarkeit Cluster werden verwendet die Verfügbarkeit zu steigern und für eine bessere Ausfallsicherheit zu sorgen. Aus diesem Grund darf die gesamte Hardware als auch die Software eines solchen Cluster in keinerWeise über einen Single-Point-of-Failure verfügen, da die Definition und der Zweck diesem widersprechen würde. Im Fehlerfall werden die Dienste von dem defekten Host des Cluster auf einen anderen Host automatisch übertragen. Einsatzgebiete solcher Clustersysteme sind Bereiche, in denen eine Ausfallzeit maximal einige Minuten pro Jahr erlaubt. Eine besondere Art von Hochverfügbarkeit Cluster sind die so genannten ’stretched Cluster’. In diesem Fall werden einzelne Hosts eines Cluster räumlich getrennt in verschiedene weit voneinander entfernte Rechenzentren untergebracht. Kommt es in einem der Rechenzentren zu einem nicht vorhersagbaren Problem, können die Hosts des anderen Rechenzentrums vollständig die Aufgaben übernehmen.
  • Load-Balancing Cluster
    Load-Balancing Cluster werden dazu verwendet eine Lastverteilung auf mehrere Computer zu ermöglichen. Aus der Benutzersicht steht ihm nur eine zentrale Einheit gegenüber, die aber logisch gesehen aus mehreren vernetzten Systeme besteht. Um die Leistung des gesamten Cluster zu erhöhen, werden nicht die einzelnen Hosts für sich aufgerüstet, sondern ein zusätzlicher Host dem Cluster hinzugefügt. Einsatzbereiche sind Umgebungen, in denen die Anforderungen an die Rechenleistung extrem hoch sind.
  • High Performance Computing Cluster
    High Performance Computing Cluster werden überwiegend dazu verwendet Berechnungsverfahren durchzuführen, wobei die Berechnungen auf mehrere Hosts verteilt werden. Hierbei werden zwei unterschiedliche Arten der Aufgabenverteilung unterschieden. Eine Möglichkeit besteht darin, die Aufgaben in unterschiedliche Pakete zu verteilen, die dann parallel auf mehreren Hosts ausgeführt werden. Die andere Variante wäre, die Aufgaben auf die einzelnen Hosts direkt zu verteilen. Einsatzgebiete der High Performance Computing Cluster liegen überwiegend in den wissenschaftlichen Bereichen, aber auch die Serverfarmen für das Rendern von 3D-Computergrafiken und Computeranimationen gehören zu dieser Art von Cluster.


Was sind Supercomputer?

Supercomputer sind Hochleistungsrechner die auf eine sehr hohe Verarbeitungsleistung ausgerichtet sind. Sie verfügen über ein Array von Prozessoren, die auf eine gemeinsame Peripherie und einen gemeinsamen Hauptspeicher zugreifen können. Die Aufgaben werden parallel auf mehrere Prozessoren verteilt und anschließend ebenfalls mit hoher Parallelität abgearbeitet. Da das Array dabei aus mehreren tausend Prozessoren bestehen kann, wird damit die Arbeitsgeschwindigkeit erhöht. Die Rechnerarchitektur eines Supercomputers ist dabei speziell für eine bestimmte Anwendung angepasst, um die höchstmögliche Verarbeitungsgeschwindigkeit zu erreichen.

In den 1970er wurden die ersten Supercomputer von der Firma Cray (benannt nach dem Unternehmensgründer Seymour Cray) hergestellt. Der erste Supercomputer bekam den Namen Cray-1 und verfügte über 250 MegaFLOPS.

Welche Ziele werden mit Supercomputern verfolgt?

Der Wunsch aufwendige Abbildungen der Realwelt (Simulationen) und immer genauere Vorhersagen und aussagekräftige Gesamtergebnisse zu liefern ist in der Vergangenheit drastisch gewachsen. Hinzu kommt, dass Simulationen immer realitätsnaher werden und die beiläufigen Neben- und Randbedingungen zunehmen. Damit u.a. solche umfangreichen und hochparametrigen numerischen Probleme schnell gelöst werden können und immer mehr komplexere Zusammenhänge mit einbezogen werden können, sind Systeme mit extrem schneller und hoher Rechenleistung erforderlich. Für die Lösungen solcher Problemstellungen kommen Supercomputer zum Einsatz. Typischerweise werden Supercomputer heute in den folgenden Bereichen eingesetzt.

  • In der Klimaforschung zur Wettervorhersage.
  • Für die Auswertung hochauflösender bewegter Bilder in Echtzeit.
  • Für den Einsatz in Verteidigungssystemen als Zentrale Einheit.
  • In der Festkörperphysik.
  • In der Weltraumforschung.
  • Zur Berechnung von Filmsequenzen.
  • In den Bereichen der Simulations- und Crashtechnik.

Wie zu erkennen ist, handelt es sich in den Beispielen um Bereiche, in denen komplexe Systeme oder Teilsysteme untereinander stark verbunden sind. Diese Abhängigkeiten führen dazu, das Veränderungen in einem Teilsystem sich in der Regel auch parallel auf alle weiteren vorhanden Systeme auswirken, was eine hohe Rechenleistungen voraussetzt.



Mac OS X Cloud Server von Go Daddy

Gute Nachrichten für alle Mac OS Fans unter uns. Der US-Amerikanische Web-Hosting Anbieter Go Daddy hat kürzlich sein Cloud Server Portfolio um Apples Mac OS X Server erweitert.

Bei den Angeboten handelt es sich um Virtual Private Server (VPS, 1 HE Rack) auf Basis der Virtualisierungstechnologien von Parallels. Auf dem Hypervisor können Kunden Apples Xserve (Mac OS) ausführen und haben dadurch Zugriff auf weitere Apple Produkte wie E-Mail Services, eine Kontaktverwaltung, iCal Server, einen Verzeichnisdienst, Wiki Server, Webhosting Lösungen und einen iChat Server, womit ein gesamtes Unternehmen miteinander kollaborieren kann. Weiterhin können iPhones vollständig integriert werden und die Kompatibilität zu lokalen Mac und Windows Betriebssystemen ist garantiert.

Die Angebote unterteilen sich in die vier Kategorien Economy, Deluxe, Premium und Ultimate. Diese sind wie folgt definiert:

Economy

  • Arbeitsspeicher: 2GB
  • Speicherplatz: 60GB
  • Bandbreite: 1TB pro Monat
  • Ausgelegt auf bis zu 10 Benutzer
  • Preis: 99,99 USD pro Monat

Deluxe

  • Arbeitsspeicher: 4GB
  • Speicherplatz: 120GB
  • Bandbreite: 2TB pro Monat
  • Ausgelegt von 11 bis 25 Benutzer
  • Preis: 179,99 USD pro Monat

Premium

  • Arbeitsspeicher: 8GB
  • Speicherplatz: 240GB
  • Bandbreite: 3TB pro Monat
  • Ausgelegt von 26 bis 50 Benutzer
  • Preis: 299,99 USD pro Monat

Ultimate

  • Arbeitsspeicher: 16GB
  • Speicherplatz: 480GB
  • Bandbreite: 4TB pro Monat
  • Ausgelegt auf mehr als 50 Benutzer
  • Preis: 549,99 USD pro Monat

Quelle



cloudControl

Der Slogan "Wir lieben Webentwickler!" ist einigen sicherlich in abgewandelter Form von einer großen Lebensmittelkette bekannt! ;) Dennoch ist die Adaptierung gut gelungen, denn mit cloudControl stellt der gleichnamige deutsche Anbieter aus Potsdam Webentwicklern eine Plattform zur Verfügung, auf der Webanwendungen auf Basis von PHP, Java, Python und Ruby entwickelt und gehostet werden können.

Die Infrastruktur der Plattform ist so ausgelegt, dass der Entwickler sich letzendlich nur um die Anwendungen kümmern muss, den Rest übernimmt cloudControl. Dafür sorgt ein speziell für die Anforderungen angepasstes Linux inkl. einem vollständigen Softwarestack. Für eine hohe Skalierbarkeit und das Abfangen von Lastspitzen oder Fehlern sorgt die Verteilung der jeweiligen Anwendung über mehrere Nodes, bekannt von den Availability Zones der Amazon Web Services. Mithilfe einer Versionskontrolle und der Möglichkeit Zugriffsrechte individuell zu vergeben, können Teams zur selben Zeit an unterschiedlichen Versionsständen arbeiten.

Die Abbrechnung soll sich aus einer Grundgebühr + dem tatsächlichen Mehrverbrauch der Ressourcen zusammensetzen.

cloudControls Arbeitsablauf für Webentwickler

Die cloudControl Dokumentation

Sehr lobenswert und ganz im Sinne der Open Cloud Initiative stellt cloudControl eine umfangreiche Dokumentation bereit, mit der Webentwickler alle Informationen zur Verfügung haben, um mit der cloudControl Plattform zu arbeiten. Die Dokumentation besteht derzeit aus den folgenden Teilen.

  • cctrlapp
    Bei cctrlapp handelt es sich um einen der Kommandozeilenbefehle von cloudControl. Mit dem Befehl können sämtliche Methoden der cloudControl API angesprochen werden.
  • cctrluser
    cctrluser ist ein weiterer Kommandozeilenbefehl, mit dem die API von cloudControl genutzt werden kann um Benutzer zu verwalten.
  • MySQL Datenbank Dokumentation
    Für jede Webanwendung steht eine eigene MySQL Datenbank. Auf Basis einer Master-Master Replikation werden sämtliche Datenbanken auf unterschiedliche Nodes verteilt. Mittels eines MySQL-Proxys wird die Anfrage einer Anwendung zu dem Node weitergeleitet, auf dem sich die zugehörige Datenbank der Anwendung befindet. Daher ist es für eine Anwendung nicht notwendig zu wissen, auf exakt welchem Node die Datenbank gerade abgelegt ist.
  • Bazaar Versionskontrollsystem
    Als Versionskontrollsystem setzt cloudControl auf Bazaar. Dabei handelt es sich um ein verteiltes Versionskontrollsystem ähnlich Git oder Mercurial. Die Entscheidung viel auf Bazaar, da hiermit alle drei großen Betriebssysteme (Windows, Mac OS X und Linux) unterstützt werden können und zudem eine Vielzahl an Plugins bietet. Die Plugins bieten den Vorteil auch Versionen von CVS, SVN, Git und Mercurial in die Repositories von Bazaar zu übernehmen. Damit bietet cloudControl Webentwickler die freie Wahl des Versionskontrollsystems.
  • Zugriff auf statische Dateien
    cloudControl erstellt von jeder Anwendung ein Read-Only Image, um das Deployment aus dem Versionskontrollsystem schnell auf weitere Nodes zu verteilen. Für das Schreiben von Dateien zur Laufzeit wird das erzeugte Read-Only Image transparent mit einem verteilten Dateisystem verbunden. Innerhalb dieses Dateisystems befinden sich dann alle Dateien die zur Laufzeit geschrieben oder verändert wurden und stehen jedem Node zur Verfügung, auf dem die Webanwendung verteilt wurde.
  • Frequently Asked Questions
    Die cloudControl FAQ bietet aktuell ausführliche Antworten zu folgenden Fragen.

    • Was ist eine Cloud Hosting Plattform?
    • Kann ich die cloudControl Plattform testen?
    • Welche Programmiersprachen unterstützt cloudControl?
    • Wird MySQL als Datenbank angeboten?
    • Wird eine nicht relationale Datenbank unterstützt?
    • Wie Überprüfe ich ob meine Anwendung kompatibel ist?
    • Wie funktioniert die Abrechnung?

Tutorial für Webentwickler

Mit einem Tutorial verfeinfacht cloudControl Webentwicklern den Einstieg in die Plattform und zeigt auf, wie die Arbeitsumgebung schnell eingerichtet werden kann. Hier ein paar kurze Auszüge.

  • Auswahl des Betriebssystem
    Das Tutorial startet mit einer schrittweisen Anleitung für die Installation und Konfiguration einer Windows, Mac OS X oder Linux Umgebung. Dazu gehören das überprüfen der Abhängigkeiten, die Installation von 'control', Das Anlegen eines Benutzer-Accounts und das Erzeugen eines SSH Keys.
  • Die erste Anwendung
    Nach dem Einrichten der jeweiligen Umgebung zeigt das Tutorial, wie eine erste Anwendung angelegt wird. Dazu gehören das Schreiben der Anwendung mit anschließenden Erstellen innerhalb von cloudControl, gefolgt vom pushen in das Versionskontrollsystem und abschließenden Deployment.
  • Weitere Schritte
    Für die weiteren Schritte verweist das Tutorial auf die von mir oben bereits beschriebene Dokumentation.

Weitere Informationen

Quelle




CloudLinux

Mit CloudLinux hat der gleichnamige Hersteller eine Linux-Distribution vorgestellt, die speziell für Webhosting Anbieter und Rechenzentren gedacht ist. Das Betriebssystem basiert auf der proprietären Lightweight Virtual Environments (LVE) Technologie, und beinhaltet eine Apache LVE-Version. Mit dieser Technologie werden die Hardware Ressourcen des gesamten Systems so aufgeteilt, dass sie speziell zu einzelnen gehosteten Webseiten zugewiesen werden können. Damit soll verhindert werden, dass eine einzelne Webseite den kompletten Server beeinträchtigen kann.

In diesem Artikel werden die Hintergründe und Funktionen von CloudLinux beschrieben.

Hintergrund

CloudLinux ist ein auf Linux basierendes Betriebssystem, welches kommerziell unterstützt wird und mit den bekanntesten RPM basierten Linux Distributionen kompatibel ist. Es richtig sich an Shared Hosting Anbieter und Rechenzentren und soll durch eine höhere Effizienz und Stabilität eine rentableren Betrieb bieten.

Vorteile für Shared Hosting Anbieter

  • Erhöhen der Anzahl der Konten pro Server.
  • Reduzierung der Hardware-, Strom-, Raum-und Verwaltungskosten.
  • Schutz des gesamten Server vor der Überlast durch eine einzelne Webseite.
  • Durch eine höhere Sicherheit werden die Ausfallzeiten minimiert und wodurch weniger Verwaltungs- und Supportzeiten benötigt werden.
  • 24/7 Unterstützung

Vorteile für Rechenzentren

  • Kommerzieller Support und ein gewartetes Betriebssystem
  • Spezielle für das Web optimierte Distribution
  • Vollständige Unterstützung mittels Ticketing System
  • Integration in bestehende Monitoringsysteme

Lightweight Virtual Environments (LVE)

Mit der Lightweight Virtual Environments (LVE) Isolationstechnologie erhöht CloudLinux die Server-Dichte und verbessert die Stabilität und Zuverlässigkeit. LVE verspricht ein verbessertes Ressourcenmanagement, indem die Ressourcen die einer Webseite zur Verfügung stehen limitiert werden. Damit kann eine einzelne Webseite nicht den gesamten Server ausbremsen. Weiterhin stehen Methoden zur Verfügung, mit denen die Benutzer identifiziert werden könne, die aktuell die meisten Server Ressourcen nutzen. Die einzelnen Webseiten sind voneinander isoliert, wodurch z.B. ein Hackerangriff die anderen auf dem Server gehosteten Webseiten nicht beeinträchtigt.

Vergleich: Standard OS vs. CloudLinux

Standard OS

  • Mehrere Webseiten pro Server.
  • Jede Webseite benötigt Ressourcen.
  • Eine einzelne Webseite kann den gesamten Server überlasten.
  • Hacker kann durch den Angriff einer Webseite alle auf dem Server vorhandenen Webseiten attackieren bzw. lahmlegen.

CloudLinux

  • Isolation der Ressourcen mittels der LVE Technologie.
  • LVE limitiert den Ressourcenzugriff einer einzelnen Webseite, dadurch werden die anderen Webseiten vor Ressourcenengpässen geschützt.
  • Eine einzelne Webseite kann den Server nicht überlasten.
  • Ein Server kann mehr Webseiten beherbergen.
  • Verbesserung der Server Performance.

Vergleich: Open Source Anbieter vs. CloudLinux

Quelle



Cloudcat – Ein Enterprise Tomcat in der Cloud

MuleSoft hat mit Cloudcat kürzlich einen Tomcat-Webserver vorgestellt, der als Service in der Cloud von Amazon oder GoGrid betrieben werden kann. Dieser Artikel stellt Cloudcat und seine Funktionen vor.

Cloudcat stellt Softwareentwicklern und Softwaretestern ein virtuelles 32-bit und 64-bit Image für Amazon EC2 (AMI) bzw. GoGrid (GSI) bereit, mit denen Web-Anwendungen innerhalb der Cloud erstellt und getestet werden können. Cloudcat beinhaltet einen für Linux (Redhat/GoGrid und Ubuntu/EC2) komplett vorkonfigurierten Apache Tomcat sowie einen MySQL Server.

Unterschiede zwischen Amazon EC2 und GoGrid

Cloudcat bietet neben dem Tomcat und MySQL Server weitere Funktionen, die nachfolgend beschrieben werden.

Administrationskonsole für Tomcat

Mit der Browser basierten Administrationskonsole können sämtliche Tomcat Instanzen von einer zentralen Stelle aus überwacht und verwaltet werden, dazu gehören auch das Erkennen der installierten Server und die Erstellung logischer Server-Gruppen. Die Konsole dient zur Bereitstellung, der Überwachung der Performance und und der Diagnose der Tomcat Applicationen. Weiterhin können damit alle Tomcat Instanzen konfiguriert und ferngesteuert werden.

Detaillierte Funktionen der Administrationskonsole:

  • Überblick über alle Tomcat Instanzen und die Laufzeitumgebung der Anwendungen
  • Fernzugriff auf die Tomcat Instanzen zum Starten und Stoppen der Anwendungen
  • Zentralisierte Verwaltung aller Anwendungen und Versionen
  • Vollständiges Audit der Serveraktivitäten und Auswertung der Serverlogs
  • Userverwaltung inkl. Sicherheitsmodell

Tomcat Konfigurationsmanagement

Mit Cloudcat können Konfigurationsprofile erstellt werden. Dabei handelt es sich um eine Reihe von Konfigurationsdateien die in einem Schritt auf mehrere Tomcat Instanzen angewendet werden können. Das sorgt für eine konsistente Konfiguration über mehrere Instanzen hinweg. Darüber hinaus können die Umgebungsvariablen (wie z.B. JAVA_OPTS, CATALINA_BASE, etc.) auf jeden einzelnen Tomcat Server angeschaut und modifiziert werden.

Bearbeiten der Konfigurationsdateien auf einem Tomcat Server.

Erstellen eines Konfigurationsprofiles für mehrere Server.

Neustart von einem oder mehreren Tomcat Servern.

Detaillierte Funktionen des Konfigurationsmanagement:

  • Betrachten und Ändern der Tomcat Konfiguration und Umgebungseinstellungen.
  • Erstellen von Konfigurationsprofilen für komplexe Anwendungen.
  • Neustart der Tomcat Instanzen per Fernzugriff.

Anwendungsbereitstellung auf dem Tomcat

Mit Cloudcat können Anwendungen schnell innerhalb der Tomcat Umgebung bereitgestellt werden. Weiterhin steht ein Versionsmanagement zur Verfügung, mit dem mehrere Versionen einer Anwendung verwaltet werden können.

Detaillierte Funktionen der Anwendungsbereitstellung:

  • Deployment einer war-Datei vom Cloudcat Repository für einen Server oder eine Gruppe von Server.
  • Erstellen von Paketen für das Deployment von mehreren war-Datein für einen Server oder eine Gruppe von Server.
  • Echtzeitstatus und historischer Überblick der Deployments aller Anwendungen.
  • Möglichkeiten zum Roll-Back von bereits durchgeführten Deployments.

Tomcat Überwachung und Diagnose

Cloudcat verfügt über eine Vielzahl von Möglichkeiten zur Diagnose und Überwachung der Performance von Web Anwendungen innerhalb des Tomcats.

Detaillierte Funktionen zur Überwachung und Diagnose:

  • Überblick über alle wichtigen Informationen des Systems, wie die aktuelle Speicherauslastung, Informationen zum Betriebssystem oder Systemeinstellungen.
  • Echtzeitstatistiken der Anwendungen, wie der aktuelle Status, Aktivitäten, Einsatz der Datenbanken oder Anzahl der Zugriffe pro Session.
  • Zugriff und Auswertung der Serverlogs per Fernzugriff.
  • Überblick zu Informationen des Systemverhaltens in Echtzeit. Dazu gehören u.a. die aktuell laufenden Threads oder der Status der Konnektoren.
  • Überwachung des Serverstatus, dazu gehören Tests bzgl. der Datenquellen, Arbeitsspeicher, Dateierstellung und Test der Anwendungen.

Quelle



Die Open Cloud Initiative

Die Open Cloud Initiative (OCI) wurde im März 2009 gegründet. Es handelt sich dabei um eine Community, die das Ziel hat, eine "Open Cloud" zu fördern, also Cloud Computing und den Open Source Gedanken miteinander zu verschmelzen.

Cloud Computing Benutzer können davon ausgehen, dass Angebote die mit dem "Open Cloud" Logo gekennzeichnet sind, auch tatsächlich "offen" sind. Das bedeutet, dass sie die Freiheit besitzen auf ihre eigenen Daten in einem offenen Format mittels einer offenen Schnittstelle zuzugreifen.

Offen heißt in diesem Zusammenhang, dass z.B. die Schnittstellen nicht in einem anbieterspezifischen proprietären Format vorliegen.

Wer steht hinter der Open Cloud Initiative (OCI)?

Neben dem Gründer Sam Johnston gehören bekannte Größen der IT Branche zu der Initiative, darunter Joi Ito, Bruce Perens, Sam Ruby, Simon Wardley und Mike Linksvayer.

Die Open Cloud Principles (OCP)

Interoperabilität (die Möglichkeit Informationen zu nutzen und auszutauschen) ist eine absolute Notwendigkeit für den uneingeschränkten Wettbewerb zwischen den Anbietern und für die freie Wahl eines Anbieters durch den Benutzer.

Benutzer müssen in der Lage sein, das System eines Anbieters ohne Barrieren zu nutzen und dieses System ebenfalls wieder ohne Barrieren zu verlassen, unabhängig davon, wer sie sind (Diskriminierung) und welche Art von System sie selber einsetzen (Technologieneutralität).

Vergleiche dazu auch RFC 2119.

Principles

  1. 1. Offene APIs: Die Kernfunktionen müssen eine offene Standard API verwenden.
  2. 2. Offene Formate: Die Daten der Benutzer müssen in einem offenen Standardformat vorliegen.
  3. 3. Open Source: Die System-Software sollte so lizensiert sein, dass sie der Open Source Definition entspricht oder keinem Urheberrecht unterliegt.
  4. 4. Offene Daten: die Benutzerdaten sollten so lizensiert sein, dass sie der Open Knowledge Definition entsprechen.

Quelle



Installation einer Private Cloud mit OpenNebula

Dieser Artikel beschreibt das Einrichten einer Private Cloud mit OpenNebula auf Ubuntu. Die Infrastruktur besteht dabei aus drei physikalischen Maschinen. Einem Front-End und zwei Nodes, auf denen die virtuellen Maschinen ausgeführt werden. Auf den Nodes muss zusätzlich eine Bridge konfiguriert werden, damit die virtuellen Maschinen das lokale Netzwerk erreichen können. Für das Einrichten der Brigde siehe den Bereich Bridging.

Installation

Auf dem System für das Front-End installieren wir OpenNebula mit folgendem Befehl:

sudo apt-get install opennebula

Für jeden Node installieren wir den OpenNebula-Node:

sudo apt-get install opennebula-node

Um später die SSH Schlüssel zu kopieren, benötigt der oneadmin (wird von OpenNebula erstellt) ein Passwort. Dazu führen wir auf jeder Maschine folgenden Befehl aus:

sudo passwd oneadmin

Nachfolgend müssen die Namen für node01 und node02 entsprechend der eigenen Installation angepasst werden.

Nun kopieren wir den SSH Schlüssel des oneadmin auf jeden Node und in die Datei authorized_keys des Front-Ends.

sudo scp /var/lib/one/.ssh/id_rsa.pub oneadmin@node01:/var/lib/one/.ssh/authorized_keys
sudo scp /var/lib/one/.ssh/id_rsa.pub oneadmin@node02:/var/lib/one/.ssh/authorized_keys
sudo sh -c "cat /var/lib/one/.ssh/id_rsa.pub >> /var/lib/one/.ssh/authorized_keys"

Der SSH Schlüssel jedes Nodes muss in die Liste der bekannten Hosts unter /etc/ssh/ssh_known_hosts auf dem Front-End hinzugefügt werden. Nun muss die SSH Session beendet werden und der SSH Schlüssel von ~/.ssh/known_hosts nach /etc/ssh/ssh_known_hosts kopiert werden.

sudo sh -c "ssh-keygen -f .ssh/known_hosts -F node01 1>> /etc/ssh/ssh_known_hosts"
sudo sh -c "ssh-keygen -f .ssh/known_hosts -F node02 1>> /etc/ssh/ssh_known_hosts"

Diese Schritte erlauben dem oneadmin SCP ohne ein Passwort oder manuellen Eingriff zu nutzen, um eine Image auf den Nodes bereitzustellen.

Auf dem Front-End muss ein Verzeichnis zum Speichern der Images für die virtuellen Maschinen erstellt und dem oneadmin Zugriff auf das Verzeichnis gegeben werden.

sudo mkdir /var/lib/one/images
sudo chown oneadmin /var/lib/one/images/

Nun kann eine virtuelle Maschine in das Verzeichnis /var/lib/one/images kopiert werden.

Eine virtuelle Maschine auf Basis von Ubuntu kann mit dem vmbuilder erstellt werden, siehe dazu JeOS and vmbuilder.

Konfiguration

Der OpenNebula Cluster kann nun konfiguriert werden. Weiterhin können virtuelle Maschinen dem Cluster hinzugefügt werden.

Auf dem Front-End geben wir dazu folgenden Befehl ein:

onehost create node01 im_kvm vmm_kvm tm_ssh
onehost create node02 im_kvm vmm_kvm tm_ssh

Als nächstes erstellen wir eine Template-Datei mit dem Namen vnet01.template für das virtuelle Netzwerk:

NAME = "LAN"
TYPE = RANGED
BRIDGE = br0
NETWORK_SIZE = C
NETWORK_ADDRESS = 192.168.0.0

Die NETWORK_ADDRESS sollte dem eigenen lokalen Netzwerk entsprechen.

Mit dem onevnet Befehl fügen wir das virtuelle Netzwerk OpenNebula hinzu:

onevnet create vnet01.template

Jetzt erstellen wir eine Template-Datei für eine virtuelle Maschine mit dem Namen vm01.template:

NAME = vm01

CPU = 0.5
MEMORY = 512

OS = [ BOOT = hd ]

DISK = [
source = "/var/lib/one/images/vm01.qcow2",
target = "hda",
readonly = "no" ]

NIC = [ NETWORK="LAN" ]

GRAPHICS = [type="vnc",listen="127.0.0.1",port="-1"]

Mit dem Befehl onevm starten wir die virtuelle Maschine:

onevm submit vm01.template

Mit dem Befehl onevm list können wir weitere Informationen über die gestarteten virtuellen Maschinen abfragen. Mit dem Befehl onevm show vm01 erhalten wir detaillierte Informationen zu einer bestimmten virtuellen Maschine.

Quelle



Eigenschaften einer Cloud Platform

Ich habe bisher einige Cloud Computing Plattformen, darunter openQRM, OpenNebula oder OpenECP vorgestellt und ein paar weitere werden noch folgen. Daher erläutere ich in diesem Artikel die grundsätzlichen Eigenschaften die eine Cloud Plattform (meiner Meinung nach) hat bzw. haben sollte.

1. Zunächst sollten ausreichend virtualisierte Serverressourcen zur Verfügung stehen. Weiterhin müssen, (vor allem dann) wenn sich mehrere Kunden auf einem System befinden, jedem Kunden diese virtualisierten Serverressourcen garantiert werden und die einzelnen virtuellen Instanzen isoliert und damit vollständig von einander getrennt betrieben werden.

2. Zum Bereitstellen von umfangreichen Enterprise-Class-Services wie z.B. hohe Verfügbarkeit, Systemwiederherstellungen nach Datenverlusten, automatische Skalierung während Lastspitzen und Ressourcenoptimierungen muss eine große (unbegrenzte) Menge an virtualisierten Serverressourcen vorhanden sein.

3. Für ein zustandsbehaftetes Lifecycle Management, wozu Snapshots, schnelles Cloning (duplizieren) und eine dynamische Versorgung mit Ressourcen über große Server Infrastrukturen gehören, wird ein virtualisierter Cloud Speicher benötigt.

4. Für die Anpassung der virtuellen Topologie - durch das Hinzufügen weiterer Netzwerkfunktionen für Sicherheit, Routing, Load Balancing, Application Firewalls, Protokol Optimierung, etc. in den OSI Schichten 3 bis 7 - und die Möglichkeit die jeweiligen (Teil)-Netzwerke auf Multi-Kunden Systemen zu isolieren und Ressourcen zu garantieren, werden virtuelle Netzwerk Ressourcen benötigt.

5. Es müssen umfangreiche und offene APIs zur Kontrolle sämtlicher Ressourcen vorhanden sein, damit Cloud Computing Anbieter ihren Kunden die vollständige Kontrolle über deren privaten virtuellen Rechenzentren anbieten können.

6. Die Cloud Plattform muss für allen gängigen Virtualisierungs-Plattformen vollständige Kompatibilität bieten und jede virtuelle Maschine unterstützen, um u.a. einen Vendor Lock-in zu vermeiden. Des Weiteren müssen Funktionen für die Migration von virtuellen Maschinen zwischen unterschiedlichen Virtualisierungs-Technologien (P2V, V2P und V2V) vorhanden sein.

7. Zu guter letzt sollte die Cloud Plattform auf Open Source basieren, um eine größtmögliche Kompatibilität zu allen möglichen Clouds aufzuweisen und um einfach adaptiert und angenommen zu werden.



OpenECP

Sam Johnston hat mit OpenECP (Open Elastic Computing Platform) einen Fork von Enomalys ECP entwickelt und veröffentlicht, den ich in diesem Artikel vorstelle.

Bei OpenECP handelt es sich um einen Open Source Fork von Enomaly's Elastic Computing Platform (ECP), welche im November 2009 kommerzialisiert wurde. Der Fork beinhaltetdabei die vollständige ECP und behebt darüber hinaus einige schwerwiegende Sicherheitslücken.

OpenECP ist eine Web basierte Management Plattform für Linux basierte Hypervisor, einschließlich KVM und Xen und kann dafür genutzt werden um Public und Privat Cloud Computing Umgebungen aufzubauen.

OpenECP soll immer frei verfügbar sein, weshalb es unter die Affero General Public License v3 gestellt wurde.

Funktionen

  • Unterstützung von Xen, KVM, Qemu, OpenVZ und Amazon EC2
  • Unterstützung von mehreren OpenECP Server
  • REST Web Service API
  • Ein Dashboard zur Auswertung und Steuerung (Last-Ausgleich)
  • Automatisiertes Deployment von virtuellen Maschinen

Screenshots

OpenECP Cluster Manager

OpenECP Repository

OpenECP User Manager

Quelle

Vielen Dank auch an Andre Westbunk



Enomaly's Elastic Computing Platform

Enomaly’s Elastic Computing Platform (ECP) dient Internet Carriern, Hosting-Providern und deren Kunden dazu, die Stärken von Cloud Computing, wie Flexibilität und Kosteneinsparungen zu nutzen. Mit ECP können vollständige Cloud Computing Plattformen verwaltet und Infrastrukturen on-Demand bereitgestellt werden. Weitere Möglichkeiten bestehen in der dynamischen Versorgung mit Ressourcen und der Skalierung nach Bedarf.

Enomaly's Elastic Computing Platform bietet folgende Funktionen:

Unbegrenzte Skalierbarkeit
Mit der ECP Architektur können große Cloud Plattformen über mehrere Rechenzentren in unterschiedlichen geographischen Regionen hinweg aufgebaut werden.

Eigene Konfigurationsmöglichkeiten für die optimale Anpassung an das Unternehmen
Unternehmen können, unterstützt durch eine Echtzeit-Überwachung, sowie umfangreichen Befehls- und Kontrollmöglichkeiten, ihre Cloud Infrastrukturen bzgl. Lastspitzen entsprechend anpassen.

Sicherheit trotz mehrerer unterschiedlicher Nutzer auf einer Plattform
Auf Basis von sehr fein granular einstellbaren Zugriffskontrollen kann ein Benutzer den Zugriff auf die Cloud Plattform (für Multi-User) so einstellen, dass nur die jeweils eigenen Ressourcen eingesehen und verwaltet werden können. Darüber hinaus kann ein Anbieter eine unbegrenzte Anzahl von VLANs für jeden Kunden erstellen und damit das Netzwerk zwischen mehreren Kunden so aufteilen und die Teilnetzwerke so isolieren, dass jedem Kunden innerhalb der Cloud die Privatsphäre seiner Daten garantiert wird. Ein Quota System schützt die Cloud gegen den Missbrauch.

Automatisierte Versorgung mit Ressourcen
ECP verfügt über eine Regelbasis zur automatischen Versorgung mit Ressourcen und kann damit den optimalen Standort einer virtuellen Anwendung bestimmen. Dazu stellt ECP sicher, dass ein Node einem optimalen physikalischen als auch virtuellen Standort zugeordnet ist. Weiterhin ist ECP in der Lage, ein offline Image einer virtuellen Maschine zu ändern, um den Speicherplatz, die Vernetzung, den Zustand des Clusters, etc. für schnelle Deployments und Off-Site Migrationen vorzunehmen.

Integration in vorhandene Infrastrukturen
ECP verfügt über eine API, mit der Benutzer die Verwaltung ihrer Cloud Infrastruktur automatisieren können, um z.B. externe SLAs oder andere Systeme für die Verwaltung zu integrieren. Darüber hinaus stellt ECP eine Back-Office API bereit, mit der weitere Systeme zur Ressourcenversorgung und Abbrechnung von (anderen) Anbietern integriert und administrative Aufgaben automatisiert werden können.

Integration von ECP im Rechenzentrum

Quelle



Die Xen Cloud Platform

In diesem Artikel stelle ich die Xen Cloud Platform (XCP) vor, die im August 2009 erstmals veröffentlicht wurde. Dabei handelt es sich um eine Initiative, mit der eine vollständige Open Source Lösung auf Basis einer von der Industrie unterstützenden API für Cloud Anbieter zur Verfügung stehen soll. Mit einer XCP Infrastruktur sollen andere Open Source Projekte wie z.B. Eucalyptus, Convirture, OpenNebula, OpenXenCenter, Xen VNC Proxy, und Nimbus in der Lage sein den Xen Hypervisor besser nutzen zu können, in dem die neue API speziell auf das Cloud Computing ausgerichtet ist.

Die Xen Cloud Platform versteht sich als eine Kombination der Eigenschaften der Xen Virtualisierung Platform (Mobilität, Offenheit, Isolation und der Möglichkeit mehrere Instanzen parallelen auszuführen) mit neuen und verbesserten Speicher-, Sicherheits- und Netzwerk- Virtualisierungstechnologien. Damit soll eine Vielzahl von virtuellen Infrastruktur Cloud Services angeboten werden können. Darüber hinaus werden Anforderungen bzgl. der Sicherheit, Verfügbarkeit, Performance und Isolation von Hybrid Clouds erfüllt.

Aktuelle Funktionen

  • Xen 3.4.1
  • Linux 2.6.27 Kernel
  • Windows PV Treiber, Microsoft Zertifiziert
  • XAPI Enterprise-class Management Tool Stack
    • Lebenszyklus einer virtuellen Maschine: Live Snapshots, Checkpoint, Migration
    • Ressourcen Pools: Sichere Neuverteilung (Live), Autokonfiguration, DR
    • Host Konfiguration: Flexibles Speichermanagement, Netzwerkbetrieb, Power Management
    • Verfolgen von Ereignissen: Fortschritt, Benachrichtigung
    • Sichere Kommunikation durch SSL
    • Möglichkeit für Upgrades und Patching
    • Überwachung und Benachrichtung bzgl. der Perfomance in Echtzeit
  • Unterstützung von Single-Root I/O Virtualization
  • Installation des Host per CD-ROM und Netzwerk
  • Vollständige "xe" Kommandozeile und Web Service API
  • Openvswitch
  • Fehlertoleranz (Marathon FT products)
  • VNC Console Proxy und Web Front-End
  • Unabhängiges Front-End

Roadmap für XCP 1.0

  • VSwitch Integration
    Mehrere Nutzer einer Netzwerkinfrastruktur; Übernahme der Firewall- und Routingregeln von migrierten virtuellen Maschinen; Flexible Überwachung des Datenverkehrs von virtuellen Ports
  • Netchannel 2 Integration
    Verbesserung der Skalierbarkeit der Xen Vernetzung auf größeren Systemen; Beschleunigung des Datenverkehrs zwischen virtuellen Maschinen
  • Single-Root I/O Virtualization (SR-IVO) Vernetzung
    Xen unterstützt bereits SR-IVO Netzwerkkarten, allerdings müssen diese noch manuell konfiguriert werden.
  • Starten der Gast Systeme von SR-IOV Host-Bus-Adapters (HBAs)
  • Libvirt bindings
  • Native Unterstützung für das Open Virtualization Format (OVF)
  • DMTF (Distributed Management Task Force) Standards für Virtualisierung und Cloud
  • Intelligente Fehlerbehebung um die Auswirkungen von Hardware-Fehlern zu minimieren
  • Unterstützung von Web-basierten Management mehrere Nutzer für unterschiedliche Anbieter wie z.B. Eucalyptus, Enomaly oder OpenNebula
  • Verbesserung der Skalierbarkeit des Managements für die Verwaltung von mehr als 1.000 Xen-Hosts
  • Zusammenschluss von günstigen lokalen Speicher durch die Integration von DRDB und Parallax
  • Oracle Cluster File System 2 (ocfs2) Integration

Quelle

Xen Cloud Platform



ChromeOS in der VirtualBox

In diesem Artikel zeige ich heute, wie man Googles ChromeOS mit der Virtual Box ausführen kann.

Voraussetzungen

In Kürze

Zunächst laden wir uns das ChromeOS VMWare Image herunter, das auch für die VirtualBox genutzt werden kann. Anschließend erstellen wir eine virtuelle Machine für den Typ Linux/Ubuntu und weisen ihr das VMWare Image zu. Ist die virtuelle Machine gestartet, können wir uns mit einem vorhandenen Google Account an ChromeOS anmelden. Achtung!!! Das Tastaturlayout ist auf Englisch voreingestellt.

In Bildern

Nach der Installation starten wir die VirtualBox.

Anschließen öffnen wir den Manager für virtuelle Maschinen über Datei >> Manager für virtuelle Maschinen. Hier fügen wir das ChromeOS VMWare Image als Festplatte hinzu.

Jetzt erstellen wir eine neue virtuelle Maschine, indem wir den blauen Punkt auswählen, geben der virtuellen Maschine einen Namen, hier ChromeOS und wählen als Betriebssystem Linux und Version Ubuntu.

Im nächsten Schritt weisen wir der virtuellen Maschine den für sie verfügbaren Arbeitsspeicher zu, hier 384 MB.

Nun weisen wir der virtuellen Maschine die Festplatte zu, die wir oben über den Manager für virtuelle Maschinen angelegt haben.

VirtualBox zeigt uns am Ende eine Zusammenfassung.

Mit einem Klick auf den grünen Pfeil wird die virtuelle Maschine mit dem ChromeOS gestartet.

Nun können wir uns mit unserem Google Benutzernamen und Passwort bei ChromeOS anmelden.



Erste Schritte mit Amazon EC2 – Windows

Dieses Tutorial beschreibt das Einrichten einer virtuellen Instanz mit einem Windows Server 2008 AMI (Amazon Machine Image) auf Basis der Amazon Elastic Compute Cloud (Amazon EC2). Dazu gehören die vollständige Einrichtung der Instanz und der anschließende Zugriff per Remote Desktop Verbindung von einem Windows 7 Computer.

Voraussetzungen

  • Amazon Web Service Account
  • Amazon EC2 ist für den Account bereits aktiviert
  • RDP Client

Auswahl, Einrichten und Starten der Instanz

Zuerst öffnen wir die Webseite der Amazon Web Services und melden uns dort an.

Anschließend starten wir die AWS Management Console für EC2.

Hier klicken wir auf Launch Instance.

Ein weiteres Fenster öffnet sich, in dem bereits fertig vor-konfigurierte Amazon Machine Images (AMIs) von Amazon angezeigt werden. Hier wählen wir das erste AMI - Getting Started on Microsoft Windows Server 2008 (AMI Id: ami-a4698bcd)

Nun wählen wir folgende Konfiguration:

  • Number of Instances: 1
  • Availability Zone: No Preference
  • Instance Type: Small (m1.small 1.7 GB)

Als erweiterte Konfiguration wählen wir:

  • Kernel ID: Use Default
  • RAM Disk ID: Use Default
  • Monitoring: Nein

Anschließend erstellen wir ein Schlüsselpaar, hier mit dem Namen clouduser_key und speichern es auf unserem Rechner.

Im nächsten Schritt konfigurieren wir die Firewall, indem wir für unsere AMI eine Security Group erstellen. Die Standardvorgabe ist der externe Zugriff auf die Ports 3389 (RDP), MS SQL Server (1433) und 80 (HTTP). Die Freigaben für den Port 80 und 1433 habe ich entfernt, da wir sie in diesem Fall nicht benötigen. Wir geben der Security Group einen Namen, hier Security_Group_2 und eine Beschreibung, hier RDP_Only und wählen continue.

Danach erhalten wir eine Zusammenfassung unserer Konfiguration, wo wir mittels Launch unsere Instanz starten.

Über Your instances are now launching kommen wir zur Console zurück.

Dort sehen wir, dass unsere soeben erstellte Instanz aktiv ist und wir uns nun mit ihr verbinden können. Dazu notieren wir uns zunächst den Namen in der Spalte Public DNS.

Verbinden mit der Instanz

Um uns mit der Instanz zu verbinden öffnen wir zunächst die Datei mit unserem erstellten Private Key und kopieren den gesamten Inhalt inkl. der Kommentare -----BEGIN RSA PRIVATE KEY----- und -----END RSA PRIVATE KEY-----.

Nun gehen wir zurück zur AWS Management Console, klicken mit der rechten Maustaste auf die Instanz und wählen Get Windows Password

In das Feld Private Key* fügen wir den privaten Schlüssel inkl. der Kommentare -----BEGIN RSA PRIVATE KEY----- und -----END RSA PRIVATE KEY----- ein.

Nach dem Klick auf Decrypt Password wird uns der Benutzername und das Passwort für die Anmeldung an unserer Instanz angezeigt.

Jetzt öffnen wir die Remote Desktop Verbindung und tragen dort den Public DNS Namen ein.

Nach dem Klick auf Verbinden geben wir den Benutzernamen und das Passwort, das wir oben erhalten haben, ein.

Die Verbindung wird hergestellt.

Nun müssen wir noch das Zertifikat unserer Instanz akzeptieren.

Wir sind mit unserer Instanz verbunden.

Beenden der Instanz

Um die Instanz wieder zu beenden gehen wir zurück zu der AWS Management Console klicken mit der rechten Maustaste auf die Instanz und wählen Terminate.

Nach dem Bestätigen wird die Instanz beendet.

In der AWS Management Console ist am gelben Punkt zu sehen, dass die Instanz beendet wird. Das benötigt ein wenig Zeit.



Erste Schritte mit Amazon EC2 – Linux

Dieses Tutorial beschreibt das Einrichten einer virtuellen Instanz mit einem Fedora Linux AMI (Amazon Machine Image) auf Basis der Amazon Elastic Compute Cloud (Amazon EC2). Dazu gehören die vollständige Einrichtung der Instanz und der anschließende Zugriff per SSH von einem Windows 7 Computer.

Voraussetzungen

Auswahl, Einrichten und Starten der Instanz

Zuerst öffnen wir die Webseite der Amazon Web Services und melden uns dort an.

Anschließend starten wir die AWS Management Console für EC2.

Hier klicken wir auf Launch Instance.

Ein weiteres Fenster öffnet sich, in dem bereits fertig vor-konfigurierte Amazon Machine Images (AMIs) von Amazon angezeigt werden. Hier wählen wir das erste AMI - Getting Started on Fedora Core 8 (AMI Id: ami-b232d0db)

Nun wählen wir folgende Konfiguration:

  • Number of Instances: 1
  • Availability Zone: No Preference
  • Instance Type: Small (m1.small 1.7 GB)

Als erweiterte Konfiguration wählen wir:

  • Kernel ID: Use Default
  • RAM Disk ID: Use Default
  • Monitoring: Nein

Anschließend erstellen wir ein Schlüsselpaar, hier mit dem Namen clouduser_key und speichern es auf unserem Rechner.

Im nächsten Schritt konfigurieren wir die Firewall, indem wir für unsere AMI eine Security Group erstellen. Die Standardvorgabe ist der externe Zugriff auf die Ports 22 (SSH) und 80 (HTTP). Die Freigabe für den Port 80 habe ich entfernt, da wir sie in diesem Fall nicht benötigen. Wir geben der Security Group einen Namen, hier Security_Group_1 und eine Beschreibung, hier SSH_Only und wählen continue.

Danach erhalten wir eine Zusammenfassung unserer Konfiguration, wo wir mittels Launch unsere Instanz starten.

Über Your instances are now launching kommen wir zur Console zurück.

Dort sehen wir, dass unsere soeben erstellte Instanz aktiv ist und wir uns nun mit ihr verbinden können. Dazu notieren wir uns zunächst den Namen in der Spalte Public DNS.

Verbinden mit der Instanz

Um uns mit der Instanz zu verbinden starten wir zunächst PuTTYgen und laden uns über Load den privaten Schlüssel den wir uns oben erstellt haben.

Wenn dieser geladen ist, klicken wir auf Save private Key und ignorieren das Fenster mit der Passphrase!

Jetzt öffnen wir unseren PuTTY SSH Client und tragen den Public DNS Namen in das Feld Host Name. Der Port 22 (SSH) ist der Standardwert.

Wir navigieren im PuTTY SSH Client auf der linken Seite zu dem Punkt SSH >> Auth. Dort laden wir bei dem Punkt Authentication parameters unseren oben mit PuTTYgen erzeugten privaten Schlüssel.

Nach einem klick auf Open wird eine Verbindung zu unserer Instanz hergestellt.

Dort melden wir uns mit dem Benutzer root an. Nun können wir mit unserer erstellten Linux Instanz arbeiten.

Beenden der Instanz

Um die Instanz wieder zu beenden gehen wir zurück zu der AWS Management Console klicken mit der rechten Maustaste auf die Instanz und wählen Terminate.

Nach dem Bestätigen wird die Instanz beendet.

In der AWS Management Console ist am gelben Punkt zu sehen, dass die Instanz beendet wird. Das benötigt ein wenig Zeit.



CloudCamp

Das CloudCamp ist eine sogenannte Unconference, also eine Veranstaltung die von ihren Teilnehmern lebt und organisiert wird. Das CloudCamp dient dazu, um "Early Adopters" von Cloud Computing Technologien die Möglichkeit zu geben, Erfahrungen und Ideen miteinander auszutauschen. In offenen Diskussionen kann jeder seine Gedanken über die Weiterentwicklungsmöglichkeiten des Cloud Computing der Teilnehmerschaft - die aus Endanwendern, IT-Profis und Anbietern besteht - frei mitteilen.

Auf einem CloudCamp werden Diskussionen über Themen aus folgenden Bereichen geführt:

  • Infrastructure as a Service
  • Platform as a Service
  • Software as a Service
  • Anwendungen / Daten / Speicherplatz

Termine in Deutschland für 2010

  • Berlin, 30.April 2010
  • Köln (Brühl), 17. und 18.März 2010 (im Rahmen des WebHostingDay)
  • München, August 2010
  • Frankfurt/Wiesbaden, Termin steht noch nicht fest

Termine weltweit für 2010

  • CloudCamp | Schedule
  • CloudCamp | City Organizers

Webseite



Die Microsoft Online Services

Die Microsoft Online Services sind das Software as a Service bzw. "Software plus Service" Angebot von Microsoft. Dabei handelt es sich um eine Reihe von Messaging-und Collaboration-Lösungen, die in den Rechenzentren von Microsoft gehosted werden. Zu den Services gehören Microsoft Office Communications Online, Microsoft SharePoint Online, Microsoft Exchange Hosted Services, Microsoft Exchange Online und Microsoft Office Live Meeting.

Diese einzelnen Services und ihre Funktionen stelle ich in diesem Artikel kurz vor.

Microsoft Office Live Meeting
Microsoft Office Live Meeting ist eine durch Microsoft gehostete Webkonferenzlösung, mit der online und ortsunabhängig mit Kollegen und Kunden in Echtzeit z.B. für Trainingszwecke oder Veranstaltungen kommuniziert werden kann.

Zu den Funktionen gehören:

  • Webclientunterstützung
  • Anwendungs-/Desktopfreigabe und Whiteboardtools
  • Videoumschaltung auf den aktiven Sprecher
  • Videos mit mehreren Teilnehmern
  • Webkonferenzen
  • Webcamfunktionen
  • Trainings- und Veranstaltungsverwaltung
  • Veranstaltungs- und Kursregistrierung und virtuellen Vorführungsräumen

Microsoft Exchange Online
Microsoft Exchange Online ist die gehostete Messaginglösung auf Basis des Microsoft Exchange Server 2007. Mitarbeitern steht damit der vollständige Zugriff auf ihre E-Mails, Kalender, Kontakte auf unterschiedlichen Systemen wie dem Desktop-PC, Laptop oder mobilen Geräten zur Verfügung.

Zu den Funktionen gehören:

  • E-Mail-Zugriff von jedem beliebigen Ort
  • 5 GB Postfachspeicher pro Standardlizenz
  • Postfächer sind auf 25 GB erweiterbar
  • Unterstützung von Windows Mobile 6.0
  • Unterstützung von BlackBerry

Der Microsoft Exchange Server kann sowohl intern im eigenen Rechenzentrum oder extern durch Microsoft, oder als Hybrid Ansatz genutzt werden.

Microsoft Exchange Hosted Services
Die Microsoft Exchange Hosted Services dienen zur Archivierung aller E-Mails im Rahmen gesetzlicher Vorschriften. Dazu gehören ein Spam- und Malwarefilter sowie Verschlüsselungstechnologien.

Zu den Funktionen gehören:

  • Archivierung
    E-Mail-Aufbewahrung im Rahmen gesetzlicher Bestimmungen
  • Ausfallsicherheit
    E-Mail-Kontinuität bei Ausfällen
  • Verschlüsselung
    Richtlinienbasierte E-Mail-Verschlüsselung
  • Schutz durch Filter
    Vielschichtiger Spam- und Virenschutz

Microsoft SharePoint Online
Bei Microsoft SharePoint Online handelt es sich um ein zentralisiertes Ressourcen und Workflowmanagement. Dabei können Dokumente, Kontakte, Kalender und Aufgaben gemeinsam von einem zentralen Standort genutzt und ausgetauscht werden und so effektiver zusammengearbeitet werden. Eine weitere Möglichkeit besteht im Aufbau von Intranetseiten und Plattformen, in denen Projektteams zusammenarbeiten, Informationen freigeben, sowie Workflows für Genehmigungs-, Prüf- und Archivierungsprozesse automatisieren können. Die Verwaltung der Inhalte (Content Management) erfolgt dabei mit Microsoft Office.

Microsoft Office Communications Online
Microsoft Office Communications Online stellt eine vollständig integrierte und zentralisierte Anwesenheits- und IM-Funktionen bereit, die mit den Produkten des Microsoft Office Systems zusammenarbeiten. Dabei kann in Echtzeit mittels Text, Sprache und Video mit anderen Kollegen innerhalb des Unternehmens kommuniziert werden.

Microsoft Business Productivity Online Standard Suite
Die Microsoft Business Productivity Online Suite umfasst sämtliche gehostete Lösungen von Microsoft aus dem Bereich Messaging-und Collaboration. Dazu gehören Exchange Online, SharePoint Online, Office Live Meeting und Office Communications Online.

Quelle