Tag: Platform-as-a-Service


Eine Analyse der Microsoft Windows Azure Plattform

Neben Platform-as-a-Services wie Cloud Foundry, Force.com, Google App Engine oder Red Hat OpenShift sollte man einen Service nicht vergessen: Windows Azure. Microsoft verfügt historisch bedingt über eine weltweit riesige Entwicklergemeinde, die nicht unterschätzt werden sollte. Die Microsoft Windows Azure Plattform wurde 2008 angekündigt und 2010 veröffentlicht. Seitdem hat Microsoft sein PaaS Angebot stetig um neue Funktionen erweitert.

Die Windows Azure Referenzarchitektur

Die Windows Azure Plattform wurde speziell für Entwickler konzipiert, um Anwendungen auf Basis von Microsoft Technologien wie bspw. .NET zu entwickeln. Dennoch können auch Java, PHP oder Node.js Entwickler die Umgebung für ihre Zwecke nutzen. Dazu bietet Microsoft ausreichend Tools und Plugins für Eclipse und anderer bekannter Entwicklungsumgebungen, um dieses zu ermöglichen.

Zunächst werden die einzelnen Komponenten der Windows Azure Platform betrachtet. Im Anschluss folgen dann ein paar Szenarien, wofür Azure genutzt werden kann.

Windows Azure

Bei Windows Azure handelt es sich um Herz und Seele der gesamten Azure Plattform. Es ist das Betriebssystem, dass auf jedem Server innerhalb der weltweit verteilten Rechenzentren der Azure Cloud läuft. Anders als die anderen Windows Versionen kann Windows Azure nicht käuflich erworben werden und ist speziell auf die Bedürfnisse der Cloud Infrastrukturen von Microsoft abgestimmt. Windows Azure abstrahiert dabei die darunterliegende Hardware und suggeriert somit, dass es sich dabei um lediglich eine Instanz des Betriebssystems handelt. Da das Betriebssystem über mehrere physikalische Server hinweg operiert, sorgt eine spezielle Schicht für die Koordination und Ausführung der jeweiligen Prozesse. Diese Schicht wird auch Fabric bezeichnet. Zwischen der Fabric und dem Windows Azure Betriebssystem befinden sich die virtuellen Maschinen (VM), auf denen der eigentliche Quellcode und die Anwendungen ausgeführt werden. Entwickler sehen jedoch nur zwei Services dieses Stacks, Windows Azure Compute und Windows Azure Storage.

Windows Azure Compute

Windows Azure Compute wird bspw. genutzt, wenn eine Anwendung auf Windows Azure ausgerollt werden soll. Dazu werden Anwendungen in drei möglichen Rollen ausgeführt, Web Role, Worker Role oder VM Role. Die Web Role wird genutzt um typische ASP.NET Web Anwendungen oder jede andere Art von CGI Web Anwendungen zu betreiben. Die Worker Role wird benötigt um langlaufende Prozesse, die über keine Benutzeroberfläche verfügen, auszuführen. Eine Web Role könnte in diesem Zusammenhang z.B. ein IIS Container und eine Worker Role ein Windows Service sein. Beide können auf mehreren Wegen miteinander kommunizieren, wobei der Quellcode innerhalb der Worker Role jedoch unabhängig von der Web Role läuft. Über die Worker Role können dann sowohl .NET Anwendungen als auch native COM Anwendungen auf Windows Azure portiert werden. Über die Worker Role unterstützt Windows Azure zudem Microsoft fremde Umgebungen wie PHP, Java und Node.js. Die VM Role ermöglicht es schlussendlich, Anwendungen innerhalb eines angepassten Windows Server 2008 Image auszuführen. Damit sind Unternehmen in der Lage Anwendungen auf Windows Azure zu portieren, die z.B. Abhängigkeiten zu Komponenten von Drittanbietern haben.

Windows Azure Storage

Um eine Anwendung ausführen zu lassen wird auf jedenfall Speicherplatz für die Konfiguration und weiterer Daten benötigt. Windows Azure Storage bietet hier drei unterschiedliche Möglichkeiten: Blobs, Tables und Queues.

Blobs sind dafür geeignet, um große binäre Objekte wie Bilder und Videos, Dokumente usw. zu speichern. Tables bietet einen skalierbaren Key/ Value basierten Speicher. Queues werden genutzt, um Nachrichten zuverlässig zwischen einzelnen Anwendungen zu übertragen. Daher sind Queues die beste Lösung, um eine Web Role und Worker Role miteinander kommunizieren zu lassen. Der Zugriff auf die Daten in Windows Azure Storage erfolgt per HTTP und REST.

Windows Azure Service Bus

Der Windows Azure Service Bus sorgt für eine nahtlose Integration von Services die sich innerhalb eines Unternehmens hinter einer Firewall und einem Service in der Cloud befinden. Damit wird quasi eine sicherer Brücke zwischen den klassischen on-Premise Anwendungen im Unternehmen und den Cloud Services hergestellt. Dazu werden die Services die sich hinter der Firewall oder dem NAT befinden bei dem Service Bus registriert, wodurch ein Cloud Service diese anschließend aufrufen kann. Der Service Bus abstrahiert den physikalischen Ort des Service, indem er eine URI bereitstellt, die jeder für den Aufruf nutzen kann.

Access Control Service

Bei dem Access Control Service handelt es sich um einen Mechanismus, der für die Absicherung der Cloud Services und Anwendungen genutzt wird. Dazu können auf eine sehr deklarative Art und Weise Regeln definiert werden, mit denen bestimmt wird, wie ein Cloud Service aufgerufen werden darf. Dabei werden eine Vielfalt von unterschiedlichen Identity-Management Infrastrukturen unterstützt. Der Access Control Service ermöglicht es bspw. Unternehmen ihre on-Premise Sicherheitsmechanismen der Active Directory mit den Cloud basierten Authentifizierung zu integrieren.

Windows Azure Caching

Windows Azure Caching stellt Anwendungen, die auf Windows Azure gehosted werden, einen In-Memory Caching Service zur Verfügung. Dieser vermeidet die Schreib/- und Lesezugriffe auf die Festplatte und ermöglicht den Anwendungen einen schnellen Zugriff auf die Daten aus einem High-Speed Cache. Der Cache kann mehrere Arten von Daten speichern, darunter XML, Binärdaten oder serialisierte CLR Objekte. Web Anwendungen die häufig nur lesende Zugriffe benötigen, können den Cache nutzen, um die Geschwindigkeit zu erhöhen.

SQL Azure

SQL Azure ist der Microsoft SQL Server in der Cloud. Anders als Azure Storage, das für das Speichern von unstrukturierten Daten genutzt wird, handelt es sich bei SQL Azure um eine vollständige Relationale Datenbank Engine. Sie basiert auf der selben Datenbank Engine wie der MS SQL Server und kann per T-SQL abgefragt werden. Auf Grund der Nähe zu MS SQL können on-Premise Anwendungen ohne weiteres auf SQL Azure zurückgreifen. Entwickler können mit ADO.NET oder ODBC API auf SQL Azure zugreifen. PHP Entwickler nutzen dazu die PHP API. Mit Microsoft SQL Azure Data Sync können Daten zwischen dem on-Premise SQL Server und SQL Azure synchronisiert werden. Dabei handelt es sich um eine sehr mächtige Funktion, um Datenknoten innerhalb der Cloud aufzubauen, die ständig mit den lokalen on-Premise Datenbanken synchronisiert werden. SQL Azure kann zudem exakt so behandelt werden wie ein gewöhnlicher Datenbank Server im eigenen Rechenzentrum. Da Microsoft hier allerdings für die Installation, Wartung und Verfügbarkeit des Datenbank Service zuständig ist, können sich Unternehmen darauf konzentrieren, den Service einfach nur zu nutzen.

Nun folgen ein paar Szenarien, die Ideal für die Nutzung der Microsoft Windows Azure Plattform sind.

Skalierbare Web Anwendungen

Da die Windows Azure Plattform auf den bekannten .NET und ASP.NET Plattformen basiert, ist es für Entwickler dieser Technologien einfach zu wechseln und Web Anwendungen kostengünstig auf Windows Azure zu betreiben. Damit erhalten Sie die Möglichkeit die Skalierbarkeit ihrer Web Anwendungen deutlich zu erhöhen ohne sich Gedanken über die dafür
notwendige Infrastruktur zu machen. Selbst PHP, Java oder Node.js Entwickler können von Azure profitieren.

Rechenintensive Anwendungen

Die Windows Azure Plattform kann für sehr prozess- und rechenintensive Anwendungen genutzt werden die gelegentlich eine große Menge an Rechenressourcen benötigen. Durch die Nutzung der Worker Role können Entwickler ihren Quellcode über mehrere Instanzen parallel ausführen lassen. Die entweder durch die Web Role oder der on-Premise Anwendung generierten Daten können anschließend der Worker Role via Azure Storage zugeteilt werden.

Zentraler Zugriff auf Daten

Wenn Daten für eine Vielzahl von Anwendungen, den Zugriff durch mehrere Browser, Computer und mobile Endgeräte zugänglich gemacht werden sollen, macht es Sinn, diese an einem zentralen Ort zu speichern. Windows Azure Storage ist hier eine gute Lösung, um Daten zentral zu speichern und zu pflegen sowie Desktop Anwendungen, Silverlight, Flash und AJAX basierten Web Anwendungen oder mobilen Applikationen bereitzustellen.

Hybride Anwendungen - verteilt in der Cloud und on-Premise

Es kann Bedingungen für die Erweiterung eines Teils einer Anwendung für die Cloud oder den Aufbau einer Cloud-Oberfläche für eine bestehende Anwendung geben. Durch die Nutzung des Service Bus und Access Control können on-Premise Anwendungen nathlos und sicher um bzw. in die Cloud erweitert werden. Dazu kann der Service Bus sowie eine weitere Technologie - Azure Direct Connect - dabei helfen, ein hybrides Cloud Szenario aufzubauen.

Cloud basierte Datenknoten

Mit Hilfe von SQL Azure können Unternehmen Datenknoten aufbauen, die den Zugriff durch externe Partner oder mobile Mitarbeiter ermöglichen. So könnte bspw. ein Unternehmen einen Teil seiner Daten in der Cloud bereitstellen, die ständig mit der lokalen Datenbank synchronisiert werden. Die Datenbank in der Cloud wird dann für B2B Partner für Abfragen und Bestellungen geöffnet. Hier helfen SQL Azure und SQL Azure Data Sync bei der Umsetzung so eines Szenarios.



Red Hat OpenShift – Ein Blick hinter die Kulissen

Red Hat gehört zweifelsohne zu den bekannten Unternehmen die Plattformen in ihrem Portfolio haben. Zudem haben sie es geschafft das Open Source Konzept in ein rentables Business Model zu überführen. Mit der damaligen Akquisition von JBoss wurde der Weg in den lukrativen Markt der Middleware und Application-Server geebnet. In der Szene gilt der JBoss darüber hinaus zu den Entwickler freundlichen J2EE Application-Server.

RedHat: Von Open-Source zur Open-Cloud

Red Hats Cloud Strategie hat sich mit der Zeit entwickelt. Begonnen hat alles mit der klassischen Virtualisierung basierend auf KVM gefolgt von Red Hat MRG, mit dem Messaging-, Realtime- und Grid-Technologien für Unternehmen angeboten werden. Mit CloudForms erschien dann der erste vollständige IaaS Stack zum Aufbau einer Private Cloud, die im direkten Wettbewerb zu VMware und Microsoft Hyper-V steht. Somit hatet RedHat alle notwendigen Komponenten zusammen, um eine PaaS Angebot zu veröffentlichen: Virtualisierung auf Basis von KVM, Self Service und Private Cloud Möglichkeiten anhand von CloudForms sowie Application Services via JBoss.

Red Hat hat erkannt, dass wenn es im PaaS Bereich erfolgreich sein will, ein mehrsprachiges Angebot in den Markt bringen muss. Die Stärke von Red Hat besteht, unterstützt durch JBoss, in der Java EE Plattform. Durch die Akquisition von Makara wurde ein PaaS Anbieter gekauft, der sich auf PHP und Python Umgebungen spezialisiert hat. Ein kluger Schachzug, da Makara um Java EE erweitert werden konnte, um damit ein PaaS Angebot für Unternehmen anzubieten. Im May 2011 wurde mit OpenShift dann endgültig ein PaaS für Unternehmen veröffentlicht.

OpenShift gibt es in zwei unterschiedlichen Varianten: Express und Flex.

OpenShift Express ist ein kostenloses Angebot für Entwickler, dass zwar über keine graphische Managementoberfläche verfügt, aber eine Reihe von Sprachen wie Java, Perl, PHP, Python und Ruby unterstützt. Die Anwendungen werden in einer Shared-Umgebung betrieben und können über diverse Kommandozeilentools deployed werden. Die Möglichkeiten die einem Entwickler zur Verfügung stehen sind recht umfangreich. OpenShift Express unterstützt neben GIT Deployments eine gute Auswahl an Sprachen und Datenbanken.

OpenShift Flex läuft auf Amazon EC2 und benötigt die AWS Anmeldedaten, um Deployments von Anwendungen vorzunehmen. Während der 30 tägigen Probezeit werden die AWS Anmeldaten nicht benötigt und ermöglichen für diesen Zeitraum die kostenlosen Nutzung. OpenShift Flex ist für Unternehmen und Anwendungen mit einer Hochverfügbarkeit gedacht. Dazu werden neben dem JBoss Application Server ebenfalls der Apache Web Server, Apache Tomcat, MySQL, PHP, Zend Framework, Java, Memcached, Membase, Infinispan, MRG Messaging und MongoDB unterstützt. Die Architektur von OpenShift Flex wurde für Cloud Skeptiker entwickelt. Das bedeutet, das Flex technisch auf mehreren Public Cloud Anbietern und ebenfalls innerhalb eines eigenen Private PaaS eingesetzt werden kann.



Die Software AG geht in die Cloud

Die Software AG hat ihre Anwendungen WebMethods und Aris auf Amazon EC2 portiert und plant zudem einen eigenen PaaS Dienst.

Neben der Middleware WebMethods hat die Software AG ebenfalls sein Tool für die Prozessmodellierung Aris zertifizieren lassen, so dass beide Anwendungen nun auf Amazon EC2 sowie VMware betrieben werden können. Durch die Portierung auf EC2 sollen bestehende Kunde die Utility-Services Möglichkeiten der Cloud nutzen können. Nach Aussage der Software AG nutzen einige Kunden sogar bereits Lösungen auf VMware Basis, wodurch die jetzige Zertifizierung ihnen nur ein weiteres Maß an Sicherheit gewährleisten soll.

Um WebMethods bzw. Aris auf Amazon EC2 zu nutzen, müssen die Kunden einen separaten Vertrag mit Amazon eingehen. Die Lizenzen würden hingegen von Seiten der Software AG geliefert. Dazu sind die CPU-Lizenzen der Software AG kompatible mit den Virtual Core Lizenzen von Amazon. Was bedeutet, dass ein Kunde seine bestehenden Lizenzen zu Amazon umziehen kann.

Unternehmen können die Amazon Cloud somit für die Entwicklung, Test und Produktion nutzen. Die Software AG erwartet hingegen die meiste Nutzung in den beiden erstgenannten Bereichen.

Development-as-a-Service

Das Hauptziel der Software AG besteht jedoch im Aufbau eines umfangreichen Platform-as-a-Service Angebots. Die PaaS Umgebung wird dazu neben einem Java Application Server (WebMethods) ebenfalls einen In-Memory Cache (Terracotta) beinhalten. Darüber hinaus soll dem PaaS eine IDE (Integrated Development Environment) einverleibt werden, was aus dem Platform-as-a-Service im Grunde genommen ein Development-as-a-Service macht.

Hinzu kommt eine Kollaborationsschicht, die es virtuellen Teams ermöglichen soll gemeinsam, in Echtzeit und ortsunabhängig miteinander zu arbeiten.

Wann der PaaS erscheint steht derzeit noch nicht fest, jedoch befindet sich das nächste Major Release für WebMethods in den Startlöchern.



Servicearten des Cloud Computing (Redux)

Im Cloud Computing existieren grundsätzlich drei verschiedene Arten Dienstleistungen bereitzustellen. Da diese aufeinander aufbauen, wird in diesem Zusammenhang auch von Schichten gesprochen. Anhand dieses Drei-Schichten Modells ergeben sich Möglichkeiten neue Geschäftsmodelle zu entwickeln.

Infrastructure-as-a-Service

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

Platform-as-a-Service

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

Software-as-a-Service

Software-as-a-Service (SaaS) ist die oberste Schicht des Cloud Computing Service-Modells. Sie stellt dem Anwender vollständige Anwendungen bereit. Dadurch kann sie als eine Art Distributionsmodell verstanden werden, bei dem die Nutzung von Software über das Internet von einem Drittanbieter angeboten wird. Der Drittanbieter übernimmt dabei u.a. Hosting und die Wartung der Software. Für den Anbieter besteht der Vorteil darin, dass nur eine Instanz einer Software auf den Servern bereitgestellt werden muss, welche unzählige Anwender gleichzeitig nutzen können. Wird die Software auf einen aktuellen Stand gebracht, genügt ein Update Vorgang an zentraler Stelle und die Software ist für alle Anwender gleichzeitig aktuallisiert. Der Vorteil für den Anwender besteht darin, dass lediglich – wie schon bei PaaS – nur ein Desktop-PC, ein Web-Browser und eine Internetverbindung ausreichen um z.B. Dienste wie E-Mail, Office Anwendungen oder sogar ERP-Systeme nutzen zu können. Die Anschaffung und Wartung großer Serverlandschaften bzw. Softwarepakete entfällt ebenso wie das Updaten der lokalen Anwendungen. Der Drittanbieter sorgt immer für einen aktuellen Stand der Software und stellt die gesamte Infrastruktur für das Hosting der Software bereit. Dazu gehören auch das Speichern von Dateien (Dokumenten) auf den Servern des Anbieters. Der Anbieter ist demnach für alle notwendigen Bereiche des Betriebs wie Verfügbarkeit, Backup, Redundanzen und auch die Stromversorgung verantwortlich.



Salesforce.com stellt fünf neue Services für die Erstellung von Cloud 2-Apps vor

Mit Appforce, Siteforce, VMforce, ISVforce und Heroku hat salesforce.com fünf neue Cloud Plattform Services für die Erstellung von Cloud 2-Apps vorgestellt. Force.com 2 beseitigt dabei Hardware- und Softwarekomplexität und ermöglicht Unternehmen und ISVs, Anwendungsentwicklungsprojekte zu beschleunigen.

  • Appforce - Kollaborative Apps für verschiedene Abteilungen
    Appforce hilft Unternehmen leistungsfähige und skalierbare Apps für alle Abteilungen zu erstellen. Nutzer können Formulare anlegen, Reports anpassen, Unternehmensprozesse visuell abbilden und gleichzeitig sicher stellen, dass diese messbar und prüffähig sind. Und sie können über Salesforce Chatter zusammenarbeiten.
  • Siteforce - Pixelgenaue Erstellung von Webseiten ohne Code
    Die Erstellung von Webseiten ist oft langwierig und mühsam und fordert kontinuierlich neue Landing Pages, Produkte und Kampagnen. Zusätzlich stehen Entwickler heute vor der Herausforderung, soziale, mobile und Echtzeit-Funktionen zu integrieren. Siteforce gibt Anwendern die Werkzeuge an die Hand, um einfache Änderungen vornehmen zu können. Web-Entwickler haben die Möglichkeit, schnell leistungsstarke Seiten zu liefern. Siteforce macht es einfach, in Echtzeit Seiten zu entwerfen, Inhalte zu verwalten und vorgefertigte Komponenten wiederzuverwenden.
  • VMforce - Der Weg für Java-Entwickler in die Cloud
    VMforce, die salesforce.com-Partnerschaft mit VMware, ermöglicht es 6 Millionen Java-Entwicklern, ihre bestehende Java-Expertise sowie die Vorteile des Cloud Computings einzusetzen und neue, mobile und soziale Echtzeit-Anwendungen für Unternehmen in der Cloud zu erstellen. Mit VMforce können Entwickler ihre Java-Anwendungen direkt auf Force.com laufen lassen, die beliebten Java-Entwicklungsumgebungen Spring Framework und Eclipse IDE nutzen und offene Standards, wie zum Beispiel JPA für die Entwicklung von Javaanwendungen für Unternehmen verwenden. VMforce ist derzeit für ausgewählte Kunden als Beta-Programm verfügbar.
  • Heroku - Die Ruby Cloud Application-Plattform
    Heroku ist die führende Ruby Platform-as-a-service, die von Beginn an in einer offenen Umgebung erstellt wurde, um die Vorteile der Programmiersprache nutzen zu können. Ruby ist die führende Sprache für die Erstellung einer neuen Generation von Apps. Diese sind sozial, kollaborativ und ermöglichen Echtzeit-Zugang zu Informationen über mobile Endgeräte. Heroku ist heute Grundlage für mehr als 105.000 Apps.
  • ISVforce - Ermöglicht ISVs die Erstellung und Bereitstellung von multi-tenant Cloud-Apps
    ISVforce bietet ISVs umfassende Services für Anwendungsentwicklung, Tests und Bereitstellung, automatische Upgrade-Möglichkeiten, den AppExchange-Marktplatz für Cloud Apps sowie eine Echtzeit-Konsole zur Überwachung der Nutzung durch Kunden. ISVforce legt all diese Services hinter jede ISV App. Führende ISVs wie Blackboard, BMC und CA nutzen ISVforce um Anwendungen zu erstellen und zu liefern.


Zoho – Productivity & Collaboration Apps

Mit der ZOHO Office Suite bietet der gleichnamige Anbieter ein webbasiertes Angebot zu der u.a. Tools für die Textverarbeitung, Tabellenkalkulation, Präsentationen, Datenbanken, Wikis, CRMs Projektmangement, Rechnungsstellung etc. gehören. Damit stellt ZOHO derzeit mit Abstand das größte Portfolio bzgl. webbasierter Office & Collaboration Angebote.

Die jeweiligen Angebote werden als Software as a Service bereitgestellt und befinden sich auf den Servern in der Cloud von ZOHO. Für den Zugriff benötigen die Benutzer lediglich einen Standard Webbrowser. Weiterhin existieren Plugins für die lokale Integration z.B. in Microsoft Office und Microsoft SharePoint.

Unterschieden wird derzeit in die Bereiche Productivity & Collaboration Apps, Business Apps und Utilities.

Dieser Artikel zeigt die Angebote aus dem Bereich Productivity & Collaboration Apps.

Zoho Mail

  • Offline-Support
    Auch ohne Internetverbindung können E-Mails gelesen und verfasst werden.
  • Mobilversion
    Zugriff auf Zoho Mail per iPhone und anderer mobiler Geräte.
  • Spamschutz
    Vermeidung von Spam durch selbstlernende Algorithmen.
  • Personalisierte E-Mail-Adresse
    Personalisierte E-Mail-Adresse (d.h. name@unternehmen.de), oder name@zoho.com.
  • Ordner und Beschriftungen
    Unterstütztung von traditionellen Ordnern und Beschriftungen.
  • Instant Messaging
    Integriertes Instant Messaging innherhalb von Zoho Mail ohne die Nutzung eines separaten Clients.
  • Webseite
    http://mail.zoho.com

Zoho Writer

  • Freigabe & Kollaboration
    Kollaboration in Echtzeit durch Freigabe von Dokumente, entweder individuell pro Person oder für Gruppen.
  • Offline Support
    Zugriff und Bearbeitung von Dokumente auch ohne Internetverbindung.
  • Posten zu Blog
    Veröffentlichung vion Dokumente direkt in einem Blog.
  • Import / Export Dokumente
    Hochladen und Herunterladen von Dokumenten und Speichern auf dem lokalen Computer.
  • Vorlage Bibliothek
    Auswahl von vorgefertigten Dokumenten aus einer Vorlagen Bibliothek.
  • Webseite
    http://writer.zoho.com

Zoho Sheet

  • Zugriff von jedem Ort
    Erstellen, Bearbeiten und Zugriff auf Tabellen von jedem Ort ohne vorherige Installation.
  • Gemeinsame Nutzung
    Gemeinsame Nutzung und Bereitstellung von Tabellen für Freunde oder die gesamte Öffentlichkeit.
  • Zusammenarbeit
    Gemeinsame arbeiten von mehreren Benutzern an einer Tabelle zur gleichen Zeit.
  • Import / Export Excel
    Import und Export von Excel Tabellen.
  • Makros und Pivot Tabellen
    Nutzung von VBA Makros und Pivot Tabellen.
  • Entwicklung von Mashups
    Synchronisation von entfernten Daten im Web und Nutzung der Zoho API zum Aufbau von Mashups.
  • Webseite
    http://sheet.zoho.com

Zoho Show

  • Zugang von überall zu jeder Zeit
    Zugriff, Import und Bearbeitung von Präsentationen von überall und zu jeder Zeit.
  • Gemeinsame Nutzung und Zusammenarbeit
    Teilen der Präsentationen mit Ihren Freunden/Kollegen. Gemeinsames Öffnen/Bearbeiten mit einem normalen Browser.
  • Präsentieren Sie von der Ferne
    Darstellung der Präsentation über das Web ohne selber vor Ort zu sein.
  • Integration
    Integration der Präsentation in einem Blog/Webseite ein.
  • Webseite
    http://show.zoho.com

Zoho Docs

  • Online-Speicherung von Dateien
    Speichern der Dokumente online. Zugriff von überall. Pflege mehrerer Dateiversionen.
  • Sichere Dateifreigabe
    Freigabe der Dateien und Fotos online. Gleichzeitiges arbeiten und kollaborieren mehrerer Benutzer in Echtzeit an einem Dokument.
  • Online-Chat und Zusammenarbeit
    Zusammenarbeit und Diskussionen über das Dokument zwischen mehreren Benutzern in verschiedenen Zeitzonen mittels Chat-Funktion.
  • Administratorkonsole
    Hinzufügen von Benutzern und verteilen von Rechten durch einen Administrator.
  • Integriert Zoho Writer, Sheet und Show
    Erstellen, bearbeiten, freigeben, suchen und anzeigen der gesamten Dokumente auf einer einzigen Seite.
  • Online-Arbeitsbereich
    Erstellen von Ordner, und freigeben von Dateien durch das Einladen von weiteren Benutzern. Die Dateien können entsprechend der vom Besitzer festgelegten Berechtigung angezeigt und bearbeitet werden.
  • Erstellen von Ordnern und Tags
    Organisation aller Dateien mittels verschieben (Drag&Drop) in Ordnern und durch versehen mit Tags.
  • Suchen
    Volltextsuche für Metadaten, Inhalte und Tags in jedem gespeicherten Dokument, z. B. PDF, Bilder usw.
  • Webseite
    http://docs.zoho.com

Zoho Notebook

  • Erstellen unterschiedlicher Inhalte
    Erstellen von Texten, Bildern, Audio und Video Inhalten.
  • Zusammenfassung aller Informationen an einem Ort
    Integration unterschiedlicher Inhalte aus mehreren Anwendungen.
  • Zusammenarbeit
    Teilen unterschiedlicher Informationen wie einem kompletten Buch, einer Seite oder einem Objekt auf einer Seite, je nach Rechtevergabe.
  • Versionskontrolle
    Änderungsverfolgung sämtlicher Informationen bis hinunter auf Objektebene.
  • Webseite
    http://notebook.zoho.com

Zoho Wiki

  • WYSIWYG Editor
    WYSIWYG Editor zur Erstellung von Inhalten.
  • Teilen und Zusammenarbeiten
    Gemeinsames verteiltes Arbeiten von jedem Ort.
  • Organisieren und Verwalten von Seiten
    Verwaltung der Seiten von einer zentralen Stelle in einer hierarchischen Ordnerstruktur.
  • Personalisierung
    Auswahl des eigenen Logos, eigenes Design, Anpassung des Header, Footer und der Sidebar.
  • Verwaltung der Zugriffsrechte
    Bestimmung der Zugriffsrechte auf Basis von Gruppen oder auf Seitenebene.
  • RSS Feeds
    Informieren neuer Inhalte durch einen RSS Feed.
  • Webseite
    http://wiki.zoho.com

Zoho Planner

  • Online Organizer
    Hinzufügen, Verwalten und Teilen von Aufgaben, Notizen und Bildern.
  • Aufgabenlisten
    Hinzufügen und Verwalten von mehreren Aufgabenlisten.
  • Erinnerungen erstellen
    Hinzufügen von E-Mail Erinnerungen.
  • Hochladen von Dateien und Bildern
    Hochladen von Dateien und Bildern an eine zentrale Stelle für den Zugriff von jedem Ort.
  • Notizen erstellen
    Hinzufügen von täglichen Notizen.
  • Webseite
    http://planner.zoho.com

Zoho Chat

  • Live Support
    Live Unterstützung von Kunden/Kollegen/Freunden via Chat.
  • Shoutbox
    Integration einer Shoutbox innerhalb eines Blogs oder einer Webseite.
  • Live Chat
    Live Kommunikation mit den Besuchern des eigenen Blogs oder der Webseite.
  • Gruppen Chat
    Möglichkeit zum Aufbau von Chats innerhalb von Gruppen.
  • Multi-Protokol Unterstützung
    Unterstützung von allen gängigen Protokollen wie Yahoo, Google, MSN, AIM, ICQ & Jabber.
  • Hinzufügen von Events im Kalendar
    Hinzufügen von Kalendereinträgen innerhalb von Zoho Chat.
  • Prüfen von E-Mails
    Lesen und Erstellen von E-Mails innerhalb von Zoho Chat inkl. automatischer Benachrichtigung neuer E-Mails.
  • Desktopsharing
    Freigeben des eigenen Desktops für Chatpartner.
  • Webseite
    http://chat.zoho.com


Google Apps Marketplace

Mit dem Google Apps Marketplace hat Google kürzlich eine Plattform vorgestellt, auf der Softwarehersteller ihre eigenen Produkte auf Basis von Webservices anbieten können. Diese können vollständig einer Domain von Google Apps zugewiesen und vollständig in die Google Anwendungen wie Google Docs, Google Kalender, etc. integriert werden. Ein Vorteil besteht in der anschließenden Single-Sign-On Funktion sowie dem Zugriff auf bereits vorhandene Daten in der Domain. So kann z.B. ein CRM-System auf die Kontaktdaten zugreifen damit diese nicht erneut eingepflegt werden müssen.

Aktuell verfügt der Marketplace über Anwendungen aus den folgenden Bereichen:

  • Accounting & Finance
  • Calendar & Scheduling
  • Customer Management
  • Document Management
  • Productivity
  • Project Management
  • Sales & Marketing
  • Workflow

Speziell für den deutschen Markt hat Google eine Google Apps Trust Webseite eingeführt, auf der Benutzer weitere Informationen bzgl. Datenhaltung und Datensicherheit auf den Google Servern erhalten. Neben Details zum Safe-Harbour Abkommen, eine Datenschutz-Vereinbarung zwischen der Europäischen Union und den Vereinigten Staaten, kann man sich dort ebenfalls über die SAS-70-Zertifizierung, die Bestätigung eines Audits durch einen Wirtschaftsprüfer, erkundigen.

Quelle



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.



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



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



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



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 Windows Azure Plattform

Mit der Windows Azure Plattform ist Microsoft nun auch mit einer Plattform in den Bereich des Cloud Computing eingestiegen. Dabei handelt es sich um ein Platform as a Service Angebot, da sich das Hauptaugenmerk auf die Entwicklung und Bereitstellung eigener Anwendung innerhalb von Microsofts Cloud Infrastruktur handelt.

Windows Azure Platform

Die Windows Azure Plattform stellt neben Entwicklungsfunktionen, auch Speicherplatz, Rechnerleistung und weitere Netzwerkdienste innerhalb der Microsoft Cloud zur Verfügung, womit Anwendungen, Onlinedienste und Websites bereitgestellt werden können.

Die Windows Azure Plattform setzt sich aus mehreren Bestandteilen zusammen. Dazu gehört das Cloud Betriebssystem Windows Azure und die Azure Services - SQL Azure zur Bereitstellung von relationalen Datenbank in der Cloud und Windows Azure AppFabric für die Integration/ Verbindung bestehender IT-Systeme im eigenen Rechenzentrum mit der Cloud.

Windows Azure

Windows Azure ist ein Cloud basiertes Betriebssystem, welches als Umgebung für die Entwicklung, Bereitstellung und Verwaltung von Software- und IT-Systemen dient. Es richtet sich speziell an Unternehmen, IT-Dienstleister, Softwarehersteller und Entwickler, die Webseiten, Web-Anwendungen, Web-Dienste oder Speicherplatz in einem Microsoft Rechenzentrum nutzen und/oder bereitstellen wollen.

Die Abrechnung erfolgt auf Basis des Verbrauchs, d.h. das nur für die Rechenzeit Kosten entstehen, die auch tatsächlich genutzt wurde. Um dem Endanwender eine optimale Performance zu bieten, stehen weltweit und an mehreren Orten Rechenzentren zur Verfügung.

Microsoft SQL Azure

Bei Microsoft SQL Azure handelt es sich um einen relationale Datenbank Cloudservice auf Basis Microsoft SQL Server Technologien, der in den Rechenzentren von Microsoft gehostet wird. Da SQL Azure Transact SQL (T-SQL) unterstützt, kann auf das bereits angeeignete Wissen bzgl. der T-SQL Entwicklung zurückgegriffen und bekannte relationale Datenbankmodelle genutzt werden. SQL Azure kann mit den eigenen Cloud-Anwendungen als auch mit den Anwendungen genutzt werden, die im eigenen Rechenzentrum ausgeführt werden.

  • Microsoft SQL Azure Data Sync

    Microsoft SQL Azure Data Sync dient dazu, um die Datenbanken im eigenen Rechenzentrum mit den SQL Azure Datenbanken zu synchronisieren. Die Synchronisation kann bidirektional stattfinden und Datenänderungen zu einem späteren Zeitpunkt mit SQL Azure abgeglichen werden, wodurch Windows Azure Anwendungen offline genutzt werden können.

Windows Azure Platform AppFabric

Die Windows Azure Platform AppFabric, ehemals auch ".NET Services" genannt, sind Web Services, mit denen vorhandene Applikationen und Datenbanken mit Windows Azure Applikationen und SQL Azure Datenbanken kommunizieren können.

Die Windows Azure Platform AppFabric besteht derzeit aus zwei Kernkomponenten:

  • Service Bus
    Der Service Bus dient zum Verbinden von Anwendungen über das Internet und der Verbindung von Cloud Anwendungen mit den Anwendungen im eigenen Rechenzentrum. Sobald sich ein Service am Service Bus registriert hat, kann auf diesen auch durch ein Firewall hindurch zugegriffen werden. Die Kommunikation kann in allen Fällen bi-direktional erfolgen.
  • Access Control
    Das Access Control basiert auf dem Identitätsmodell von Claims. Dazu müssen für die Anwendungen keine eigenen Authentisierungs- und Autorisierungssteuerung implementiert werden. Es reicht aus den Service am Service Bus zu registrieren und anschließend mit Zugriffsrechten zu konfigurieren.

Einsatzgebiete der Windows Azure Platform aus der Sicht von Microsoft

  • Softwarehersteller stellt SAAS (Software as a Service) Anwendung bereit
  • Softwarehersteller erweitert existierende Anwendung um Cloud Funktionalitäten
  • IT-Dienstleister baut Abteilungslösung für Mittelständler
  • IT-Dienstleister baut eine integrierte Anwendung für Mittelständler
  • Web-Agentur entwickelt Webpräsenz und Shop-System für großen Unternehmenskunde
  • Web 2.0 Website / Startup

Microsoft Pinpoint Marketplace

Mit dem Microsoft Pinpoint Marketplace stellt Microsoft Kunden und Partnern einen Marktplatz für Cloud Applikationen bereit. Die Partner können ihre Anwendungen in den Marktplatz einstellen, wodurch Kunden die Möglichkeit haben Anwendungen von diesem Marktplatz zu beziehen und direkt aus einem Microsoft Rechenzentrum zur Verfügung gestellt zu bekommen.

Der Microsoft Pinpoint Marketplace ist hier zu erreichen.

Quelle

Microsoft Windows Azure Platform | DE
Microsoft Windows Azure Platform | US



Microsoft legt Windows Azure Preise fest

Windows Azure Preisliste

Compute

  • Small instance (default): € 0.0852 per hour
  • Medium instance: € 0.1703 per hour
  • Large instance: € 0.3405 per hour
  • Extra large instance: € 0.6809 per hour

Storage

  • € 0.1064 per GB stored per month
  • € 0.0071 per 10,000 storage transactions

Content Delivery Network (CDN)

  • Service currently available as a Community Technology Preview (CTP) at no charge

SQL Azure

  • Web Edition – Up to 1 GB relational database
    • € 7.085 per database per month
  • Business Edition – Up to 10 GB relational database
    • € 70.913 per database per month

AppFabric

  • Access Control
    • € 1.4114 per 100,000 transactions
  • Service Bus
    • € 2.8298 per connection on a “pay-as-you-go” basis
    • Pack of 5 connections € 7.0566
    • Pack of 25 connections € 35.2827
    • Pack of 100 connections € 141.1308
    • Pack of 500 connections € 705.654

Data Transfers

  • North America and Europe regions
    • € 0.071 per GB in
    • € 0.1064 per GB out
  • Asia Pacific Region
    • € 0.2128 per GB in
    • € 0.3192 per GB out

Alle Preise sind hier nachzulesen.



eyeOS – Der Open Source Cloud Web-Desktop

eyeOs ist ein sogenannter Web-Desktop, wobei man besser sogar von einem Web-OS oder Cloud-OS sprechen sollte. Der Funktionsumfang und das Äußere gleicht dem eines vollständigen Betriebssystems. Um es schonmal vorweg zu nehmen, die Attraktivität von eyeOS liegt unter anderem auch daran, dass man es auf dem eigenen Webspace installieren und nutzen kann. Ein eigener (virtueller) Server wird dafür nicht benötigt.


Startseite

Die Oberfläche des Desktops erinnert an einem Mix aus den bekannten Oberflächen gängiger Betriebsysteme. Dazu hat man die Möglichkeit über verschiedene Themes das Aussehen und den aufbau der Desktopoberfläche anzupassen. Neben Themes die das Äußere an Windows oder Ubuntu Linux erinnern lassen, ist auch für Mac OS Fans etwas dabei. Für den Zugriff auf eyeOS wird ein einfacher Standard Webbrowser wie Chrome, Firefox oder Internet Explorer benötigt.


Desktop Oberfläche

eyeOS ist wie jedes moderne Betriebssystem ein Multi-User System. Das bedeutet, das zur selben Zeit mehrere Benutzer gleichzeitig angemeldet sein können. Über die Systemsteuerung können neue Benutzer hinzugefügt und ihnen Rechte etc. vergeben werden. Die Systemsteuerung ist übrigens wie bei jedem graphischen Betriebssystem das zentrale Drehkreuz wo alle Einstellungen rund um eyeOS vorgenommen werden können.


Systemsteuerung

eyeOS bringt von Haus aus bereits eine große Anzahl integrierter Anwendungen mit. Mit eyeDocs (Textverarbeitung), eyeSheets (Tabellenkalkulation), eyePresentation (Präsentationssoftware), eyeContacts (Kontaktverwaltung) und eyeCalendar (Kalender) steht eine vollständige Office Suite zur Verfügung. Neben weiteren zahlreichen Anwendungen gibt es auch eyeMail (E-Mail Client), eyeCalc (Taschenrechner), eyeMedia (Mediaplayer), eyeFiles (Dateimanager) eyeNav (Webbrowser) oder Spiele wie eyeChess (Schach). Interessant ist auch eyeTerre ein Google Earth Clone der sehr rasant funktioniert.


Anwendungsübersicht


eyeDocs


eyeSheets


eyeContact


eyeFiles

Zusätzlich können weitere Anwendungen über den integrierten Paketmanager installiert, oder von der Apps Webseite http://eyeos-apps.org heruntergeladen und mit dem Upload-Manager in eyeOS hochgeladen und anschließend manuell installiert werden. Über diesen Vorgang werden z.B. auch die Desktop-Themes installiert, der einfach und über eine gute Dokumentation (wie das gesamte System) verfügt.


System Bar

Darüber hinaus bieten mittlerweile viele Drittanbieter die Möglichkeiten ihre Anwendungen an eyeOS anzubinden, darunter Zoho mit seiner Office Suite oder Feng Office aber auch die großen der Branche wie YouTube, Ebay, Amazon, Twitter oder Flickr.

Entwickler steht das eyeOS Toolkit zur Verfügung, mit denen ihnen eine Menge an Bibliotheken und Funktionen zur Verfügung stehen, um Anwendungen für eyeOS zu entwickeln. Die Anwendungen können dann in einem eigenen Repository abgelegt und über den integrierten eyeOS Paketmanager bereitgestellt und verteilt werden.

Demo

Ein öffentlicher (Demo)-eyeOS-Server kann unter http://eyeos.info getestet werden.

Resumee

eyeOS zeigt einen Mega-Trend der kommenden Jahre. In Zukunft werden wir keine vollwertigen Computer (Fat-Clients) mehr benötigen, sondern auf einen einfachen Monitor, Maus und Tastatur bzw. einen Thin-Client zurückgreifen. Die Benutzerumgebungen werden vollständig virtualisiert und können damit von überall aus und an jedem Ort zur Verfügung gestellt werden. Ob das Hosting bei einem selbst verbleibt oder an einen Anbieter abgegeben wird, ist subjektiv. Durch die einfache Installation und Bereitstellung auf einem gewöhnlichen Webspace, hat aber jeder die Möglichkeit damit seine eigene (Arbeits)-Umgebung einzurichten und diese von überall aus zu nutzen.

Quellen

eyeOS



Die 11 besten Open Source Cloud Computing Projekte 2009

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

Chef

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

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

collectd

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

Webseite: http://collectd.org

Eucalyptus

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

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

Webseite: http://open.eucalyptus.com

OpenNebula

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

Webseite: http://www.opennebula.org

openQRM

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

Webseite: http://www.openqrm.com

Puppet

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

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

RabbitMQ

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

Webseite: http://www.rabbitmq.com

Zenoss

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

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

Bitnami

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

Webseite: http://www.bitnami.org

Enomaly’s Elastic Computing Platform (ECP)

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

Webseite: http://src.enomaly.com

Ubuntu Enterprise Cloud

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

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

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

Quelle

Mark Hinkle
John Willis



Die Google App Engine

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

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

Die Entwicklungsumgebung

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

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

App Engine Services

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

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

Geplante Tasks und Warteschlangen

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

Quellen:

[1] Google App Engine



Platform as a Service

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

Platform as a Service
Platform as a Service [1]

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