Nutzung des Google Apps Marketplace

Dieses kleine How to erklärt wie der Google Apps Marketplace in Verbindung mit einer Google Apps Domain genutzt werden kann. Dazu installieren wir das Social Productivity, Project Management & Task Management Manymoon.

Voraussetzungen

  • Google Apps Account
  • Sprache: Englisch (US)

Installation des Webservice Manymoon

Zunächst melden wir uns an der Google Apps Management Console an und wählen dort den Punkt Add more services.

Dort sehen wir den Bereich Other services, wir wählen Google Apps Marketplace.

Auf der linken Seiten unter Product wählen wir die Kategorie Project Management.

Hier entscheiden wir uns für Manymoon: Free Social Productivity, Project Management & Task Management.

Wir klicken auf der rechten Seiten auf den Button Add it now.

Und geben dort unsere Google Apps Domain an.

Wir bestätigen im nächsten Schritt die Nutzungsbedingungen.

Nun müssen wir der Anwendung ihre benötigten Rechte für den Zugriff auf unserer Google Apps Domain gewähren.

Und können anschließend die Anwendung aktivieren.

Am Ende erhalten wir eine Zusammenfassung über den Status der Anwendung sowie aller gewährten Zugriffsrechte.

Über den Link Sign in now to get started rufen wir die Anwendung das erste Mal auf.

Ein Blick auf die Startseite unserer Google Apps Management Console zeigt, dass die Anwendung unserer Google Apps Domain zugewiesen wurde.



IBM LotusLive

LotusLive ist das Software as a Service Angebot von IBM, mit dem Unternehmen integrierte Services für die Kollaboration sowie das Social Networking zur Verfügung stehen. Über den Web-Browser stehen Dienste wie E-Mail, Instant Messaging, Webkonferenzen und weitere Tools für die tägliche Zusammenarbeit und die Interaktion mit Kunden und Geschäftspartnern bereit.

LotusLive unterscheidet derzeit die Produkte Meetings, Events, Connections, Engage, Notes und iNotes, deren Funktionsumfang dieser Artikel jeweils vorstellt.

Dashboard

LotusLive Engage

Bei LotusLive Engage handelt es sich um eine vollständig integrierte Collaboration Suite, die Funktionalitäten für Webkonferenzen und Kollaborationen beinhaltet. Dazu zählen die gemeinsame Bearbeitung von Dateien, sowie das Instant Messaging und die Verwaltung von Aktivitäten. Mittels Web-Meetings können soziale Onlinenetzwerke aufgebaut werden, zu denen zusätzlich Gäste (z.B. Kunden, Geschäftspartner) eingeladen werden können.

Web Meetings

Mit Web Meetings können persönliche Web-Konferenzräume online aufgebaut werden. Zu den Funktionen gehören das Desktop- und Applikation-Sharing, Abstimmungen, Q&A-Chats, Videoübertragungen und SSL-Verschlüsselung.

Besprechungen

Mein Netzwerk

Über Mein Netzwerk können sämtliche Kontakte verwaltet und mit diesen darüber kollaboriert werden. Zu den Funktionen gehören der Zugriff auf Profile, das Hinzufügen, Importieren und Verwalten von Kontakte, Gruppierungsmöglichkeiten und Tagging sowie das Herstellen von Verbindungen innerhalb des Netzwerks.

Dateien

Mit Dateien steht ein Bereich für das Speichern und gemeinsame bearbeiten von Dokumenten, Präsentationen etc. online zur Verfügung. Da der Zugriff über den Web-Browser stattfindet, sind die Dateien überall verfügbar, vorausgesetzt eine aktive Internetverbindung ist vorhanden. Zu den Funktionen gehören die die Onlinespeicherung, gemeinsame Bearbeitungsmöglichkeiten, Möglichkeiten der Versionierung und Kommentierung, Tagging zu Suche und Filterung von Inhalten, Gruppierung von Dateien und eine SSL-Verschlüsselung.

Dateien

Aktivitäten

Aktivitäten ist ein Bereich zur Steuerung von Aufgaben, der Verwaltung von Projekten und dem Brainstorming für Teams. Zu den Funktionen gehören Tools für das Projektmanagement, Vorlagen, Markierung von unerledigten Aufgaben, Festlegen von Terminen, Priorisierung, Tagging und Kommentare sowie eine automatische Benachrichtigung an die Benutzer.

Aktivitäten

Formulare

Formulare dient der Unterstützung zum Erstellen und Veröffentlichen von Umfragen und Formularen. Zu den Funktionen gehören das erstellen von Kundenumfragen, Veröffentlichung über E-Mail, automatischea Benachrichtigungen und das erstellen von Antwort in dynamischen Diagrammen.

Formulare

Diagramme

Diagramm hilft bei der Visualisierung von unformatierten Daten mittels Balkendiagramme, Kurvendiagramme, Kreisdiagramme, Schlagwortwolken, Baumdiagramme oder Blasendiagramme. Zu den Funktionen gehören eine automatische Aktualsierung, Download und Versionierung und Kommentierung.

Diagramme

Instant Messaging

Instant Messaging dient zur Echtzeitkommunkation (Chat) mit Geschäftspartner, Kunden und Kollegen. Darüber hinaus können während einer Chat-Sitzung Dateien, Fotos, URLs und Screenshots gemeinsam verwendet werden. Zu den Funktionen gehören Rich Text und Emoticons, eine gemeinsame Foto- und Dateinutzung, sowie ein End-to-End-Verschlüsselung.

Instant Messaging

LotusLive Connections

LotusLive Connections bietet webbasierte Services zur Kollaboration und zum Social Networking. Der Funktionsumfang von LotusLive Connections ist etwas kleiner als der von LotusLive Engange und stellt mit Mein Netzwerk, Dateien, Aktivitäten und Instant Messaging eine kleine Teilmenge zur Verfügung.

LotusLive Meetings

LotusLive Meetings bildet ebenfalls eine Teilmenge von LotusLive Engage ab, konzentriert sich im Kern aber auf den Bereich der Webkonferenzen. Funktionen von LotusLive Meetings sind u.a. eine Videoübertragung, Abstimmungsmöglichkeiten und Anmerkungsfeatures.

LotusLive Events

LotusLive Events stellt Online Services zur Verfügung, mit denen Ereignisse (z.B. Konferenzen von LotusLive Meeting) verwaltet und gesteuert werden können. Weiterhin können damit Registrierungen eingerichtet und verwaltet, sowie eine Analyse nach dem Event durchgeführt werden.

Funktionen

  • Einladungsvorlagen
  • Automatisierte E-Mail-Ankündigung
  • Registrierungsverwaltung
  • Ereignistest
  • Ereigniszusammenfassung und -protokoll
  • Exportieren von Registrierungsinformationen für zukünftige Ereignisse
  • SSL-Verschlüsselung
  • Unterstützung von mehreren Browsern und Plattformen

LotusLive Notes

LotusLive Note ist die durch IBM gehostete E-Mail und Instant Messaging Lösung für Unternehmen. Mitarbeiter können damit jederzeit und an jedem Ort mit einer aktiven Internetverbindung auf die Ressourcen des Unternehmens zugreifen.

Kontakte

Funktionen

  • Zentraler Zugriff auf E-Mails, Kalender, Kontakte und mehr
  • Volltextsuche, Delegierung, E-Mail-Filterung und -Sortierung, Gespächsansichten und Markierungen
  • Anpassbare Widgets, die bestimmte Textmuster in Lotus Notes-Dokumenten erkennen können
  • Verschlüsselung für Datenaustausch im Netz und für den lokalen Festplattenspeicher
  • Erweiterte Replikationstechnologie
  • Zwei Service-Level-Agreement-Optionen
  • Spam- und Virenfilterung sowie Sicherungs- und Wiederherstellungsservices
  • Unterstützung durch ein dediziertes IBM Team

LotusLive iNotes

LotusLive iNotes ist die webbasierte schlanke E-Mail und Kalenderverwaltung für Unternehmen, mit der Mitarbeiter über einen Web-Browser Zugriff auf ihre Daten haben.

Funktionen

  • Webmail-Services POP3, IMAP4 und SMTP mit Authentifizierung
  • Kalender mit Ereigniserinnerungen und Ansichten für Arbeitstage
  • Spamschutz- und Virenschutzfeatures
  • SSL-Verschlüsselung
  • Sichere Kennwortwiederherstellung
  • Webmail, Kontakte und Kalender
  • Support für mobile Endgeräte über IMAP IDLE
  • 1 GB Speicher pro Benutzer
  • Verwaltungstools für Benutzeraccounts

Preise und Vergleich

Demos

Quelle



Was ist Virtualisierung?

Auf einer abstrakten Ebene ist Virtualisierung für die Emulation und Simulation von Hardware-Ressourcen zuständig und entkoppelt in diesem Zusammenhang die Computer-, Speicher- und Netzwerk-Hardware von dem darauf ausgeführten Betriebssystem (Software), wodurch eine virtuelle Infrastruktur geschaffen wird. Unternehmen erhalten dadurch die Möglichkeit ihre Infrastrukturkosten zu senken und können schneller auf wechselnde Anforderungen reagieren. Wird zum Beispiel ein zentrales SAN (Storage Area Network) für das gemeinsame Speichern von Daten genutzt, führt das zur Verbesserung des ROI (Return on Investment).

Schauen wir uns das Thema Virtualisierung im Kern genauer an, handelt es sich dabei um das Bereitstellen von Hardware-Ressourcen auf einer physikalisch vorhandenen Maschine für ein oder mehrere voneinander vollständig getrennte Gastsysteme, die auf dieser physikalischen Maschine (Wirtsystem) parallel ausgeführt werden. Die Gastsysteme (virtuelle Maschinen) teilen sich die Ressourcen des Wirtsystems, wissen aber gegenseitig nichts von ihrer Existenz.

Einsatz und Nutzen von Virtualisierung

Für Virtualisierung kommen verschiedene Einsatzgebiete in Frage. Ein Bereich ist das Einsparen von Energie und Ressourcen oder die Erhöhung der Serverauslastung, um Rechenzentren effizienter zu betreiben. Dazu werden mehrere physikalische Server in virtuelle Maschinen migriert, um diese anschließend auf einem einzigen physikalischen Server zu konsolidieren.

Virtualisierung führt u.a. zu folgenden Nutzen/ Vorteilen:

  • Hardwareunabhängigkeit auf Grund der Virtualsierungsebene.
  • Verringerung der Administrations- und Serverwartungskosten.
  • Optimierung des Platzbedarfs.
  • Verbesserung der Ausfallsicherheit und des Disaster Recovery auf Grund von Clustering Möglichkeiten innerhalb der virtuellen Systeme.
  • Verbesserung des Energieverbrauchs und der Wärmeentwicklung (z.B. USV, Klimaanlage).
  • Verbesserung der Wirtschaftlichkeit auf Grund der besseren Serverauslastung (Hardware).
  • Erhöhung und Verbesserung der Flexibilität und Skalierbarkeit.
  • Zeit- und Kostenminimierung für den Aufbau von Serverlandschaften und komplexen Testumgebungen.
  • Ab Infrastrukturen mit drei Server erhöht der Einsatz von Virtualisierungstechnologien die Effizienz.

Virtualisierungsarten

Aktuell existieren einige unterschiedliche Virtualisierungstechnologien auf dem Markt, die ich im Folgenden vorgestellt werden.

Systemvirtualisierung

Eine Systemvirtualisierung bietet die Möglichkeit mehrere Betriebssysteme auf derselben Hardware parallel auszuführen. Dabei werden zwei Systeme unterschieden. Zum einen das virtualisierte System, dass auch Gastsystem genannt wird und zum anderen das Hostsystem, auf dem das Gastsystem ausgeführt wird und welches direkt mit der Hardware kommuniziert.

Hardware-Virtualisierung (Full-Virtualisierung)

Die Hardware-Virtualisierung ist eine Untermenge der Systemvirtualisierung. Dabei kann ein Gastsystem, ohne Änderungen an seinem Betriebssystemkernel, direkt innerhalb einer virtualisierten Umgebung ausgeführt werden.

Paravirtualisierung

Die Paravirtualisierung ist ein Spezialfall der Systemvirtualisierung. In diesem Fall sind Anpassungen am zu virtualisierenden Betriebssystem notwendig, da eine direkte Schnittstelle zur darunter liegenden Hardware benötigt wird. Der Vorteil besteht in der höheren Performance, da die virtuelle Maschine direkt mit der Hardware kommuniziert.

Anwendungsvirtualisierung

Mit der Anwendungsvirtualisierung lassen sich einzelne Anwendungen mit einer Virtualisierungsschicht vom sich darunter befindenden System entkoppeln. Damit wird eine spezielle Umgebung für die virtualisierte Anwendung geschaffen. Diese Umgebung muss nicht abhängig von der Umgebung des Hosts sein, wodurch auch Anwendungen genutzt werden können, die nicht mehr von dem Hostsystem unterstützt werden.

Netzwerk-Virtualisierung

Netzwerk-Virtualisierung wird genutzt, um logische Teilnetze (Virtual Local Area Networks, VLANs) innerhalb eines physikalischen Netzwerks oder eines Switches aufzubauen. Das VLAN unterteilt ein physikalisches Netz in einzelne (logische) Teilnetze, indem die Datagramme eines VLANs nicht in ein anderes übertragen werden, auch wenn die Teilnetze mit gemeinsam genutzte Switches verbunden sind.




Einrichten eines Proxy Server mit der Google App Engine

Im Internet findet man viele Skripte die dabei helfen einen Proxy Server auf Basis von PHP zu erstellen. Einziger Nachteil ist, dass dafür ein eigener Webserver benötigt wird, um die Skripte zu hosten sowie eine eigene Domain, um den Proxy zu adressieren. Amit Agarwals beschreibt auf seinem Blog http://www.labnol.org wie man in 5 Minuten seinen eigenen kostenlosen Proxy Server unter Verwendung der Google App Engine einrichtet.

Dieser Artikel beschreibt, wie dabei vorzugehen ist.

Schritt 1: Google App Engine Account

Wenn nicht schon vorhanden muss zuerst ein Google App Engine Account eingerichtet werden. Dazu gehen wir auf http://appengine.google.com

Schritt 2: Erstellen der Application

Hier klicken wir auf "Create an Application". Sollte dieses die erste Applikation sein, die für diesen Account erstellt wird, erhalten wir einen Verifizierungscode an unsere hinterlegte Mobilfunknummer. Diesen tragen wir in das dafür vorgesehene Feld ein.

Schritt 3: Auswahl einer Sub-Domain

Als nächstes wählen wir einen für die Sub-Domain, um den Proxy-Server zu adressieren. Die Sub-Domain entspricht dabei außerdem der App ID die als eindeutiger Identifier für die spätere Proxy Anwendung dient. In diesem Beispiel wird als Sub-Domain der Name labnol-proxy-server verwendet.

Schritt 4: Herunterladen von Python

Es ist soweit alles vorbereitet, um die Anwendung für den Proxy Server zur Google App Engine hochzuladen. Zunächst wird aber Python benötigt, dass wir uns unter http://python.org herunterladen und installieren.

Schritt 5: Installation des Google App Engine SDK

Als nächstes laden wir uns das Google App Engine SDK for Python von http://code.google.com herunter und installieren es.

Schritt 6: Herunterladen der Proxy Server Applikation

Mit http://img.labnol.org/files/proxy.zip steht bereits eine fertige Proxy Server Applikation bereit. Diese kann unter den oben genannten Link heruntergeladen werden und wird auf unserem Rechner entpackt.

Schritt 7: Einstellungen für die Google App Engine vornehmen

Unter der Einstellungen der Google App Engine müssen folgende Einstellungen vorgenommen werden.

Schritt 8: Anwendung der Google App Engine hinzufügen

In der (lokalen) Google App Engine klicken wir auf "File >> Add Exisiting Application" und wählen die Anwendung aus, die wir in Schritt 6 heruntergeladen haben. Unter "Edit" muss "YOUR_APP_ID" noch gegen die eigene in Schritt 3 erstellte Sub-Domain ausgetauscht werden.

Schritt 9: Deployment der Proxy Server Applikation

Mit dem Button "Deploy" kann die Anwendung veröffentlicht und genutzt werden.

Durch das Ändern der main.html kann aus Aussehen der Webseite des Proxys geändert werden. Zusätzlich können Google Analytics and AdSense hinzugefügt werden. Wurden Änderungen vorgenommen, reicht ein Klick auf den Button "Deploy" oder der Befehl -- appcfg.py update

Beispiel Live

Unter http://labnol-proxy-server.appspot.com kann der Proxy Server auf Basis der Google App Engine Live getestet werden.

Video Tutorial

Amit Agarwals hat zusätzlich ein Video veröffentlicht, in dem die oben beschriebene Vorgehensweise nachvollzogen werden kann.

http://www.youtube.com/watch?v=3f6Zq4prys0

Quelle



Was ist Utility Computing?

Bereits 1961 definierte Prof. John McCarthy das Time Sharing von Ressourcen wie z.B. die Nutzung von Rechnerleistung oder Anwendungen als Geschäftsmodell. Er stellte sich dabei vor, diese Ressourcen der Öffentlichkeit als ein Public Utility zur Verfügung zu stellen, also genau so, wie auch Strom, Wasser oder Gas bereitgestellt wird.

Der Begriff Utility Computing wird von Herbert Kircher in seinem Buch „IT: Technologien, Lösungen, Innovationen,“ wie folgt definiert: ’Utility Computing beschreibt eine grundlegende Transformation der Bereitstellung und des Managements von IT-Services - von einem technologieorientierten zu einem geschäftsorientierten Ansatz. Diese Umstellung erfordert eine äußerst flexible und effizient verwaltete dynamische IT-Infrastruktur mit vollständiger Kostenkontrolle, flexibler Kostenverrechnung und aktivem SLA-Management.’

Beim Utility Computing bekommt also ein ’Kunde’ von einem ’Serviceanbieter’ Rechenkapazität (Ressourcen) und die gesamte Infrastruktur inkl. dessen Management zur Verfügung gestellt. Dabei wird der Kunde nach dem Prinzip ’pay per use ’, also bezahle nur das, was Du tatsächlich verbrauchst, abgerechnet - was auch den entscheidenden Ansatz beim Utility Computing ausmacht. Für Utility Computing wird oft auch der Begriff ’On-Demand Computing’ (deutsch: in etwa ’rechnen auf Anfrage’) verwendet. Das Ziel von Utility Computing ist klar: Steigerung der effizienten Nutzung der Computerressorucen und das Senken der dabei anfallenden Nebenkosten (Strom, etc.).

Der große Vorteil von Utility-Computing ist eine bessere Wirtschaftlichkeit, da Unternehmen nur für die Computerressourcen bezahlen, die sie nutzen, wenn sie diese nutzen. Rechenzentren von Unternehmen sind in der meisten Zeit nicht ausgelastet. Server sind in der Regel im Durchschnitt mit 15% ausgelastet, sind also in 85% der Zeit im Leerlauf. Unternehmen statten ihre Rechenzentren grundsätzlich mit zu vielen Ressourcen aus. Dies ist auf der einen Seiten genau der richtige Ansatz, denn die Systeme müssen auch in Spitzenzeiten (z.B. Urlaubszeit bei einem Online Reiseveranstalter aber auch für unvorhersehbare Ereignisse) voll funktionsfähig sein und dürfen nicht plötzlich überlastet sein und ausfallen. Andererseits sind die Systeme für normale Zeiten total überdimensioniert. Um genau diese eben angesprochenen Spitzenzeiten abzufangen ist Utility Computing das richtige Konzept, da der Anbieter in der Zeit die (angemieteten Systeme) dynamisch vergrößern kann. Die Kosten sind in den normalen Zeit ’...relativ gering und konstant...’ und steigen nur während der Hochkonjunktur, da auch die Systeme wachsen.

Anbieter von Utility Computing Diensten profitieren von den Größenvorteilen ihrer Systeme, da sie dieselbe Infrastruktur nutzen können, um damit mehrere Kunden zu bedienen.

Wie im Grid Computing wird auch im Utility Computing der Begriff der Virtuellen Organisation verwendet, mit denen Organisationen Computer Ressourcen in dem Moment kaufen oder verkaufen, wenn diese gerade benötigt werden.



Was ist Grid Computing?

Die Charakteristiken von Computercluster sind das Bereitstellen von reiner Rechnerleistung in einem lokalen begrenzten Bereich. Die nächste Herausforderung bestand also darin, die Rechenleistung nicht nur lokal, sondern auch global verfügbar zu machen und neben der Rechenleistung z.B. auch Daten und Applikationen bereitzustellen.

Mitte der 1990er wurde der Begriff des Metacomputing als Möglichkeit zur Erweiterung von Paralleler Datenverarbeitung und Custer Computing eingeführt. Die Idee bestand darin, große Computersysteme über WAN-Leitungen (Wide Area Network) miteinander zu verbinden. Im Jahr 1997 wurden erstmals zwei Supercomputer des High Performance Computing Center Stuttgart (HLRS) und des Pittsburgh Supercomputing Centre (PSC) miteinander verbunden. Trotz der Verfügbarkeit von hohen Bandbreiten innerhalb der nationalen und internationalen Forschungsnetzwerke scheiterte das Experiment auf Grund der Latenz.

Das Metacomputing bezieht sich aber lediglich nur auf Computer (Rechenleistung) im Allgemeinen. Ian Foster und Carl Kesselman stellten im Jahre 1999 ein neues erweitertes Konzept mit dem Namen Grid Computing vor, das neben Computer auch andere Arten von (IT-)Ressourcen wie Software, Datenbanken, Rechenleistung, Speicherplatz oder spezielle Hardware beinhalten und miteiander vernetzen kann. Der Begriff des Grid wird abgeleitet aus dem englischen Wort Electrical Power Grid (Deutsch: Stromnetz), dessen Idee darin besteht, die Ressourcen den Benutzern so zur Verfügung zu stellen, als wenn sie den Strom aus der Steckdose bekommen würden. Dabei verfügt das Grid über standardisierte Schnittstellen, über die der Benutzer seine Anfragen übermitteln kann und ihm die Ressourcen dann automatisiert zugeteilt werden. Die Ressourcen sind dabei über das Internet verteilt und können unterschiedlichen ’virtuellen’ Organisationen angehören. Anhand der Schnittstellen kann der Status der Ressourcen abgefragt und diese direkt angesprochen werden. Ein entscheidender Vorteil liegt darin, dass der geographische Ort an dem sich die Ressource befindet nicht mehr von Bedeutung ist - siehe Graphik. Auf Grund des beliebigen und weltweiten Zugriffs auf Ressourcen über das Internet gilt das Grid als Generalisierung des World Wide Web. Davon abgeleitet steht die Technologie des Grid Computing somit als die Basistechnologie für die Koordination und Verarbeitung organisationsübergreifender Geschäftsprozesse und den gemeinschaftlichen Austausch und die Nutzung von Ressourcen.

Das entscheidende Ziel des Grid Computings bestand also darin, Ressourcen gemeinschaftlich global zu nutzen sowie diese zu koordinieren und darüber hinaus gemeinsam Probleme institutionsübergreifend in dynamischen virtuellen Organisationen zu lösen. Genauer bedeutet dies, dass zu Beginn Formalitäten wie das Abrechnungsschema und die Zugangsrechte geklärt werden und anschließend der Zugriff auf die Ressourcen wie z.B. Rechnerleistung oder Anwendungen für die gemeinschaftliche Nutzung bereitgestellt werden. Der Begriff der virtuellen Organisation beschreibt in diesem Fall eine dynamische Allianz von Organisationen, die ein gemeinsames Interesse während der Nutzung des Grids vertreten.

Arten von Grid Computing

Je nachdem wie die Ressourcen miteinander vernetzt sind und um was für ein Anwendungsszenario es sich handelt, können Grids in unterschiedliche Arten unterteilt werden. Nachfolgend werden fünf unterschiedliche Arten betrachtet.

  • Compute Grids
    Compute Grids werden verwendet um einem Benutzer Rechnerleistung bzw. Rechnerkapazität, die ihm in seiner eigenen Umgebung nicht zur Verfügung stehen, verteilt bereitzustellen. Das Bereitstellen kann hierbei eine derzeit nicht verwendete Ressource - z.B. eine Workstation außerhalb der Geschäftszeiten sein, oder aber auch ein Hochleistungclustersystem.
  • Data Grids
    Data Grids werden eingesetzt um große verteilte Datenmengen gemeinsam zu Nutzen und diese zu verarbeiten. Dabei wird eine sogenannte Data-Federation, eine organisationübergreifende Sicht auf alle Daten, die beispielsweise einem Projekt zugewiesen sind, definiert. Bei so einer Data-Federation handelt es sich um ein dezentral verwaltetes System, bei dem derjenige, der die Daten in dieser Umgebung zur Verfügung stellt auch die uneingeschränkte Kontrolle über diese Daten behält.
  • Application Grids
    Application Grids waren der erste Ansatz um virtuelle Organisationen zu etablieren und damit die organisationsübergreifende gemeinsame Nutzung von Ressourcen voranzutreiben. Die Betreiber der Grids sollten dadurch eine höhere Auslastung und die Benutzer ein besseres Angebot erfahren. Themen, die innerhalb dieses Grids auftreten, sind sichere und schnelle Datenverbindungen, Authentifikationen, Authorisierungen und Single-Sign-On sowie Accounting und Abbrechnungsmöglichkeiten.
  • Resource Grids
    Resource Grids sind die Erweiterung der Application Grids. Diese definieren ein Rollenmodell, in dem eindeutig zwischen einem Grid Benutzer, einem Grid Provider und einem Resource Provider unterschieden wird. Die Hierarchie ist logisch geordnert. Ein Grid Benutzer verwendet die Grid Infrastruktur des Grid Provider um die dort vorhandenen Ressourcen des Resource Providers zu nutzen. Für den Grid Benutzer unterscheidet sich die Funktionalität des Application- und des Resource Grids nicht. Das Konzept der beiden hat aber einen gravierenden Unterschied. Application Grids werden vertikal integriert, was bedeutet dass der Bedarf an Fremdleistungen sehr gering gehalten wird und die Komponenten individuell hinzugefügt werden. Dagegen müssen bei einem Resource Grid alle Schnittstellen definiert und offen gelegt werden, da jeder Ressource Provider über die Spezifikation der Grid Infrastruktur des Grid Providers informiert sein muss um dort ggf. seine Ressourcen anbieten zu können.
  • Service Grids
    Ein Service Grid verbindet das Konzept der Serviceorientierung mit der Technik der Resource Grids. Ein Service wird in diesem Zusammenhang als ein Bündel von mehreren Komponenten betrachtet, von dem jede einzelne Komponente wiederum als Utility von einem anderen Resource Provider zur Verfügung gestellt wird. In dieser Form des Grids existiert eine übergeordnete Form des Grid Providers, der so genannte Grid Service Provider, der im direkten Kontakt mit den Grid Benutzern steht und ihnen einen Komplettservice anbietet. Das bedeutet, dass der Grid Benutzer nicht darüber informiert ist, welcher Resource Provider ihm welche Ressource bereitstellt.


Enomalys – ECP Cloud Service Provider Edition

Mit der Enomaly Service Provider Edition steht eine von Enomaly auch "cloud in a box" genannte Plattform zur Verfügung, mit der Internetcarrier und Hosting Anbieter ihren Kunden Infrastructure as a Service Lösungen anbieten können.

Die Platform verfügt über eine Benutzerschnittstelle sowie eine REST API, mit der die Kunden die Verwaltung ihrer Cloud eigens vornehmen können. Ein weiteres Feature ist die "Theme Engine" mir der das Branding vom Internetcarrier oder Hosting Anbieter auf die jeweiligen Bedürfnisse angepasst werden kann. Weiterhin können mehrere Kunden eines Anbieters parallel auf einer einzigen Plattform verwaltet werden und ein Quota System sorgt für die gerechte Verteilung der Ressourcen. Die Plattform kann darüber hinaus in bereits bestehende Systeme für die Abbrechnung, Ressourcenversorgung und das Monitoring integriert werden.

Nach Angaben von Enomaly wird die Plattform derzeit von 15.000 Unternehmen weltweit eingesetzt.

Funktionen & Umgebung

Die Plattform verfügt u.a. über folgende Funktionen, die im weiteren Verlauf dieses Artikels jeweils kurz vorgestellt werden.

  • Managementkonsole für die Endkunden
  • Fernverwaltung
  • Flexible Hardware-Profile
  • Management für virtuelle Maschinen
  • Nutzungsabbrechnung
  • App Center
  • Virtual Private Cloud (Vlan)
  • Theme Engine
  • Gruppierung von virtuellen Maschinen

Managementkonsole für die Endkunden

Mit der Managementkonsole können Endkunden auf ihre virtuellen Maschinen zugreifen, diese verwalten und bekommen darüber die Fehlermeldungen des Systems angezeigt. Die Anbieter können mittels RSS Feeds die Inhalte entsprechend anpassen und darüber ihre eigenen Inhalte anzeigen.

Fernverwaltung

Mittels einer Remote Desktop Verbindung oder der Kommandozeile kann auf die virtuellen Maschinen zugegriffen werden, auch dann wenn keine Netzwerkverbindung nach Aussen hin besteht.

Flexible Hardware-Profile

Auf Basis von flexiblen Hardware Profilen können virtuelle Maschinen nach ihrer Bereitstellung durch den Endkunden angepasst und skaliert werden. Die Hochverfügbarkeit einer virtuellen Maschine wird dadurch garantiert, indem im Falle eines physikalischen Fehlers die virtuelle Maschine automatisch auf eine andere funktionsfähige Hardware übertragen wird.

Management für virtuelle Maschinen

Endkunden können entweder einzelne virtuelle Maschinen oder ganze Gruppen von virtuellen Maschinen weltweit und von jedem Rechner aus starten, stoppen und neu starten.

Nutzungsabbrechnung

Über die Nutzungsabbrechnung haben Endkunden einen Echtzeit-Überblick über die aktuell genutzen Ressourcen (virtuelle Maschinen, Arbeitsspeicher, CPUs und Speicherplatz) im Verhältnis zu den noch verfügbaren Ressourcen.

App Center

Mit dem App Center können Anbieter ihren Kunden bereits vor-konfigurierte Cloud Anwendungen, wie z.B. Betriebssysteme zur Verfügung stellen. Endkunden können aus den virtuellen Maschinen Images eines Anbieters virtuelle Maschinen erstellen und diese direkt ihrer Cloud hinzufügen, oder eigene virtuelle Maschinen verwenden.

Virtual Private Cloud (Vlan)

Für jeden Endkunden und dessen virtuellen Maschinen steht ein oder mehrere private VLANs zur Verfügung, die durch den Endkunden selber verwaltet werden können.

Theme Engine

Mit der Theme Engine kann jeder Anbieter das Branding, sowie das look & feel enstprechend seiner Bedürfnisse anapssen.

Gruppierung von virtuellen Maschinen

Mittels eines Tagging Systems (tags) können mehrere einzelne virtuelle Maschinen zu einer Gruppe von virtuellen Maschinen organisiert werden.

Quelle



Thin Clients

IT-Abteilungen leben neben einem erhöhten Kostendruck zusätzlich mit den Problemen der Sicherheit und der Aufrechterhaltung des IT-Betriebs.

Der in den letzten Jahren immer mal wieder aktuell gewordene und dann wieder verblasste Ansatz der Thin Client Nutzung kann der IT helfen diese Probleme zu bewältigen, verfügen Thin Clients doch gegenüber den klassischen Desktop PCs über einige Vorteile.

Zunächst sind Thin Clients - wie der Name schon andeutet - sehr einfach und weniger komplex als Desktop PCs. Das liegt zum einen an den geringeren und funktional beschränkten Hardwareressourcen, zum anderen an der eingesetzten Software. Die benötigte Software wird serverseitig betrieben, wodurch ein lokales "vollwertiges" Betriebssystem nicht benötigt wird. Diese beiden Kernpunkte sorgen dafür, das Thin Clients weniger sensibel bzgl. Fehler und Angriffe sind.

Von Desktop PCs wird heutzutage erwartet, dass sie 24/7 funktionsfähig sind. Dabei wird jedoch nicht bedacht, das nicht vorhersehbare Situationen, wie Hackerangriffe, der Ausfall der Hardware oder ganz einfach Benutzer dafür verantwortlich sind, das dem nicht so ist und niemand diese Erwartungen gewährleisten kann.

Speziell die Einflussnahme der Benutzer auf die Systemkonfiguration erhöht auf Thin Clients, durch das Beschränken oder vollständige entziehen der Rechte, die Systemstabilität und schützt den Benutzer und das gesamte Unternehmensnetzwerk vor Angriffen durch Viren, Würmer und jeglicher Form von Malware. Weiterhin wird die Stabilität und der Schutz erhöht, da Thin Clients ihre Anwendungen von einem oder mehreren zentralen Servern beziehen und nicht mehr - wie Desktop PCs - auf lokale Anwendungen und ein vollwertiges lokales Betriebssystem angewiesen sind.

Trotz hinreichender Anordnung speichern Benutzer ihre Daten generell auf der lokalen Festplatte und nicht wie gefordert auf die dafür vorgesehenen Netzlaufwerke, also auf den zentralen Servern. Nicht selten hört man von Fehlern der Festplatte die dazu führen, dass die Arbeit eines Tages in kurzer Zeit hinfällig war und erneut erledigt werden muss. Der Diebstahl der Daten sollte auch hier nicht außer acht gelassen werden. Auf der anderen Seite sind Benutzer in diesem Fall für Backups selber zuständig, was verständlicherweise gerne mal vergessen wird. Da Thin Clients über keine lokalen Daten verfügen, sind damit alle oben genannten Probleme hinfällig. Das Speichern der Daten erfolgt auf zentralen Servern, wo von ihnen jeden Tag automatisiert ein Backup vorgenommen wird. Dazu kommt, dass wenn keine lokalen Daten vorhanden sind, diese auch nicht gestohlen werden können. Zudem reicht es aus, Desktop-Firewall Konzepte serverseitig einzurichten, wodurch der Administrationsaufwand verringert wird.

Der letzte Themenbereiche behandelt die physikalische Sicherheit der Systeme. Werden Desktop PCs gestohlen, ist der Angreifer im schlimmsten Fall im Besitz unternehmenskritischer Daten (Festplattenverschlüsselung hin oder her). Thin Clients hingegen werden erst dann sinnvoll, wenn sie mit einem Server des Unternehmensnetzwerks verbunden sind und haben außerhalb des Unternehmens für den Angreifer keinen Nutzen. Auch der Diebstahl der Daten durch den Anschluss externer Geräte wie USB-Sticks oder USB-Festplatten oder das Übertragen von Viren etc. durch CDs stellt ein nicht zu verkennendes Problem dar. Der Zugriff kann bei Desktop PCs natürlich unterbunden werden. Das physikalische entfernen stellt sich jedoch als ziemlich schwierig und aufwendig dar. Fällt die Entscheidung daher auf Thin Clients, sollte mit den Gedanken gespielt werden sich gegen physikalische vorhandene USB-Ports und CD/DVD Laufwerke zu entscheiden.

All die oben beschriebenen Probleme der Desktop PCs können natürlich durch diverse Softwareangebote behoben werden. Jedoch verursachen diese wiederum Anschaffungs-, Installations- und Wartungskosten. Zudem ist die Verträglichkeit mit vorhandener (spezial)-Software nicht garantiert.

Erweitern wir den Thin Client Gedanken nun um das Thema Cloud Computing ist es durchaus vorstellbar, dass die Infrastruktur für die Terminalserver nun nicht mehr im eigenen Rechenzentrum steht, sondern als Appliance/Image oder einem Terminalserver in einer Cloud z.B. von Amazon, GoGrid oder einem anderen Anbieter gehostet wird. Ein Unternehmen müsste dann lediglich über die Hardwareressourcen (Thin Clients) und eine schnelle Internetverbindung verfügen. Das ist wohlgemerkt natürlich eine sehr abstrakte und ideale Sicht auf das Thema, die noch tiefer durchdrungen werden muss.

Quelle der Graphik

  • NetPoint


JungleDisk

JungleDisk ist das Cloud Storage Angebot von Rackspace Cloud. Dabei handelt es sich im Prinzip um eine Schicht (Applikation) zwischen dem Benutzer bzw. dem lokalen PC/Server und dem Speicherdienst Amazon S3 oder dem von Rackspace.

Die Daten können bei Amazon S3 dabei wahlweise in den USA oder Europa gespeichert werden, was sich in den Preisen und der Geschwindigkeit (Latenz/ Laufzeiten) wiederspiegelt. Die Preise der jeweiligen Angebote setzen sich aus einer festen Grundgebühr (in USD) plus dem tatsächlich genutzen Speicherplatz auf S3 zusammen. Der genutzte Speicherplatz wird dabei mit den bekannten Gebühren von Amazon S3 verrechnet. In diesem Fall ist daher auch ein Amazon AWS Account erforderlich. Man bezahlt also hier - abgesehen von der Grundgebühr - nur für den Speicherplatz, der auch wirklich genutzt wird.

Die Abbrechnung erfolgt vollständig über Amazon. Man erhält am Anfang des Monats eine Rechnung von Amazon über die Grundgebühr der JungleDisk. Die Rechnung über den genutzen Speicherplatzverbrauch findet über den Amazon AWS Account statt.

JungleDisk stellt als einer der wenigen Anbieter für die drei großen Betriebssysteme Windows, Linux und MAC native Clients zur Verfügung. Weiterhin kann der Zugriff auf die gespeicherten Daten mittels einer Weboberfläche oder des iPhones stattfinden.

Die Datenübertragung und die Daten selber sind mit einer 256 bit AES Verschlüsselung gesichert. Zusätzlich können die Buckets auf Amazon S3 mit einem weiteren Passwort geschützt werden.

JungleDisk ist, wie es auf dem ersten Blick erscheint kein reines Tools für das Backup in der Cloud. Daten können ebenfalls damit über mehrere Rechner synchronisiert werden, was die Kollaboration verbessert.

Im Folgenden werden die vier Angebote der JungleDisk, die sich in die Bereiche Business und Personal unterteilen, vorgestellt.


Business Class

Die Business Class besteht aus der Workgroup Edition und der Server Edition. Dabei ist die Workgroup Edition auf Desktop PCs von kleinen bis mittleren Unternehmen ausgerichtet, mit der Backups erstellt, sowie Daten ausgetauscht und synchronisiert werden können. Die Server Edition dient zum Backup eines Servers und verfügt über Möglichkeiten das System per Fernwartung zu verwalten.

Workgroup Edition

Mit der Workgroup Edition können Daten mittels "Master Accounts" zwischen mehreren Benutzer ausgetauscht und synchronisiert werden. Dabei werden Teamgrößen von 2 - 100 Mitgliedern unterstützt. Die Benutzer können damit auf einfache Weise miteinander zusammenarbeiten und haben Zugriff auf ihre Daten auch dann, wenn Sie gerade nicht mit dem Internet verbunden sind. Wenn eine Internerverbindung wieder vorhanden ist, werden automatische alle Änderungen mit der Cloud synchronisiert. Der Zugriff auf die Daten kann ebenfalls über eine Weboberfläche oder ein iPhone erfolgen. Zudem steht eine protable Version zur Verfügung, die von einem USB-Stick ausgeführt werden kann. Die Daten werden mit einer 256 bit AES Verschlüsselung geschützt.

Preise

  • 4 USD pro Benutzer pro Monat + Gebühren von Amazon S3 (siehe unten)

Server Edition

Die Server Edition richtet sich an Windows und Linux Server. Mit ihr stehen im Prinzip unbegrenzte Speicherkapazitäten für Backups in der Cloud zur Verfügung. Die Abbrechnung erfolgt hier nach dem pay per use Modell, es entstehen also nur Kosten für den tatsächlich genutzten Speicherplatz.

Zur Verwaltung der Backups stehen Tools für Windows, Linux und Mac Clients zur Verfügung, die auch parallel auf unterschiedlichen Maschinen genutzt werden können. Die Daten werden mit einer 256 bit AES Verschlüsselung geschützt. Weitere Funktionen sind erweiterte Kompressionsmechanismen und die Möglichkeit der Deduplication.

Preise

  • 5 USD pro Server pro Monat + Gebühren von Amazon S3 (siehe unten)


Personal

Die Angebote aus dem Bereich Personal setzen sich aus dem Simply Backup und der Desktop Edition zusammen. Bei dem Simply Backup handelt es sich lediglich um die Möglichkeit automatisierter Backups, wobei die Desktop Edition Elemente der Workgroup Edition beinhaltet.

Simply Backup

Mit Simply Backup können die Daten auf einem Rechner zeitgesteuert und automatisiert auf Amazon S3 oder Rackspace gesichert und im Fehlerfall z.B. von der letzten Nacht oder der letzten Woche wiederhergestellt werden. Clients sind für Windows und Mac OS vorhanden. Die Daten werden mit einer 256 bit AES Verschlüsselung geschützt.

Preise

  • 2 USD pro Monat + Gebühren von Amazon S3 (siehe unten)

Desktop Edition

Die Desktop Edition beinhaltet alle Funktionen des Simply Backup und bietet darüber hinaus die Möglichkeit die JungleDisk wie eine lokale Festplatte (als Netzlaufwerk) auf dem Computer einzubinden. Somit kann direkt von und auf diesem Netzlaufwerk gearbeitet werden. Weiterhin können ausgewählte Ordner mit der JungleDisk synchronisiert werden. Damit hat man die Möglichkeit seine Daten über mehrere Rechner hinweg zu synchronisieren, da sich die Daten zentral in der JungleDisk befinden und mit dem lokalen Rechner abgeglichen werden. Somit stehen auf jedem Rechner und an jedem Ort (vorausgesetzt eine Internetverbindung ist vorhanden) immer die aktuellen Daten zur Verfügung. Der Zugriff auf die Daten kann aber auch dann erfolgen, wenn gerade keine Internetverbindung vorhanden ist, da die Daten ebenfalls lokal gespeichert werden. Ist die Internerverbindung wieder vorhanden, werden automatische alle Änderungen mit der Cloud synchronisiert. Der Zugriff auf die Daten kann ebenfalls über eine Weboberfläche oder ein iPhone erfolgen. Es stehen Clients für Windows, Mac OS und Linux zur Verfügung. Die Daten werden mit einer 256 bit AES Verschlüsselung geschützt.

Preise

  • 3 USD pro Monat + Gebühren von Amazon S3 (siehe unten)


Screenshots

Konfigurationsmenü

Auswählen der Dateien für das Backup

Backupvorgang

Activity Monitor

Wiederherstellen von Dateien

Verbindung zu einem Server herstellen


Amazon S3 Gebühren


Quelle



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