AppLogic

[ 1 ] Juli 29, 2010 |

Bei AppLogic handelt es sich um eine vorgefertigte Cloud Computing Plattform, auf der verteilte Anwendungen skalierbar ausgeführt werden können. Mittels AppLogic können Cloud Angebote und Utility Computing Services für transaktionale sowie Streaming Anwendungen im eigenen Rechenzentrum betrieben werden.

Auf Grund der Transparenz und Herstellerunabhängigkeit ist AppLogic zu den gängigen Betriebsystemen, Middlewares und Web Anwendungen kompatibel, wodurch eine Vielzahl von vorhandener Infrastruktursoftware, Middleware und Anwendungen unverändert genutzt werden können.

Mit AppLogic kann eine vollständig verteilte Anwendung (N-tier) oder Service in eine logische Einheit zusammengefasst und anschließend wie ein einziges System verwaltet werden. Dazu erfasst und arbeitet AppLogic auf der logischen Struktur der Anwendung. Dieser Ansatz ermöglicht zudem das Zusammenstellen, das Deployment, das Monitoring, die Steuerung und die Fehlersuche visuell mittels eines Webbrowsers.

Jede Anwendung beinhaltet alles was sie benötigt, um innerhalb eines Grids von Commodity-Servern ausgeführt zu werden, wie z.B. die Infrastrukturkomponenten (Firewalls, Loadbalancer, Netzwerkkonfiguration, etc.) bis hin zur Anwendungslogik, Web- und Datenbankservers, inkl. dem Anwendungscode und der Anwendungsdaten. Tools für das Monitoring und Messen gehören des Weiteren ebenso dazu wie vorbereitete operative Funktionen wie z.B. Backup-Scheduler und SLA Richtlinien.

Aus den oben beschriebenen Gründen können auf AppLogic ausgeführte Anwendungen von einer geringen Anzahl von Servern auf mehrere Hundert skaliert werden. Dazu kommt die Möglichkeit der On-Demand Replizierung und das mehrfache Deployment auf dem selben Grid oder über mehrere Standorte hinweg, ohne Code Änderungen vorzunehmen.

Funktionen


Paketieren von Anwendungen zur on-Demand Bereitstellung
Mit AppLogic können mehrere Instanzen bereits vorgefertigter Web Anwendungen ausgeführt werden, wodurch on-Demand Anwendungen wie CRM, E-Mail oder VoIP PBX schnellt bereitgestellt werden können.

Hierzu können für jeden Kunden eine gewünschte Anwendung mit einer IP-Adresse und den benötigten Hardware Ressourcen ohne manuellen Eingriff konfiguriert und in kurzer Zeit zur Verfügung gestellt werden.

Anwendungsbereitstellung auf einer vorgefertigten Infrastruktur
Web Anwendungen können ohne den notwendigen Konfigurationsaufwand der Server und der Infrastruktur skalierbar bereitgestellt werden. Dazu wird eine Standard Infrastruktur aus einem Katalog ausgewählt, die benötigten HTML Dateien, Skripte, und Datenbanken auf ein logisches Volume kopiert und die Anwendung gestartet.

Weiterhin kann der Deploymentvorgang über Skripte in den Build-Vorgang intergriert werden, wodurch alle vorgenommen Änderung automatisch über das gesamte Grid verteilt werden, wenn der Code neu generiert wird.

Skalierung ohne den Aufbau eines mandantenfähigen Systems
SaaS Anwendungen haben den Anspruch voneinander getrennt betrieben zu werden, so das maximal nur Benutzer aus der selben Organisation den Zugriff auf dieselben Daten erhalten. Nutzer anderer Organisationen dürfen dagegen keinen Einblick auf die Anwendung und Daten haben, auch wenn sich diese logisch auf dem selben System befinden.

Innerhalb von AppLogic erhält jede Anwendung ihre eigene separierte Infrastruktur wie Datenbanken, Applikationsserver etc., wodurch der oben genannte Anspruch erfüllt und Ausfälle in Systemen eines Kunden nicht die Systeme anderer Kunden beeinflussen.

Entwicklung neuer Web Anwendungen
AppLogic bietet die Möglichkeit (neue) Anwendungen mit exakt derselben Infrastruktur (Middleware / Systemkonfiguration) zu testen, wie sie auch später in der Produktion eingesetzt wird. Dazu kann die Anwendung weiterhin in einer Sandbox auf einem einzigen Server betrieben, oder über das gesamte verfügbare Grid verteilt werden, um die Last unter Echtzeitbedingungen zu testen.

Aufbau einer N-Tier Anwendungsinfrastruktur
Mit Hilfe des AppLogic Visual Infrastructure Editor können komplex und verteilte Infrastrukturen skizziert, aufgebaut und repliziert werden. Dazu steht ein Katalog unterschiedlicher virtueller Appliances zur Verfügung, mit dem die Systeme visuell konfiguriert und Fehler identifiziert werden.

Weiterhin können oft und bereits vorkonfigurierte Subsysteme wie z.B. Datenbankcluster oder Applikationsserver Cluster für viele unterschiedliche Anwendungen mehrfach verwendet werden.

Neben dem Monitoring System, mit welchem visuell u.a. die aktuelle Last dargestellt werden kann, besteht ebenfalls der Zugriff per SSH auf jede vorhandene Appliance. Abgerundet werden die Funktionen mit der Möglichkeit eine Art Snapshot von dem aktuellen Stand einer Applikation vorzunehmen, um im Bedarfsfall einen Rollback zurück zu diesem Stand durchzuführen.

Zielgruppe


Alle Utility Computing Benutzern haben gemein, dass Online-Dienste ihre Hauptgeschäft sind. Dabei wirkt sich die Skalierbarkeit und die Kosten ihrer Infrastruktur unmittelbar auf die Bruttomarge und die Fähigkeit aus zu wachsen.

IT Outsourcer die auf SaaS und Online Services fokusiert sind
Unternehmen die Internet Service Provider dabei unterstützen, Online Anwendungen anzubieten und dabei serviceorientiert und skalierbar zu agieren.

Managed Hosting Provider
Unternehmen deren Schwerpunkt im Bereich Datacenter Operations liegt, können ihre bereits vorhandenen Hosting-Angebote mittels vorgefertigten Umgebungen erweitern.

Software-as-a-service (SaaS) Anbieter
Software as a Service Anbieter die regelmäßig neue Web Anwendungen entwickeln, können ihre Go-To-Market Kosten sowie den Time-To-Market reduzieren.

Web 2.0 Unternehmen
Unternehmen im Web 2.0 Umfeld können ihre Online Services skalierbar anbieten, so dass auch in lastintensiven Zeiten ihre Angebote performant zur Verfügung stehen.

Funktionsumfang


Virtual Appliances
Innerhalb von AppLogic werden IT-Infrastrukur Komponenten wie Firewalls, Load Balancer, Server und SANs als bereits vorab integrierte und vorab getestete Virtual Appliances abgebildet. Dabei wird jede Appliance in ihrer eigenen virtualisierten Umgebung ausgeführt. Sie startet ihr eigenes Linux System und erscheint gegenüber der auf der Appliance laufenden Software wie ein physikalischer Server. Neben der bereits vorhandenen Open Source Infrastruktur Software wie Fedora Linux, Apache, MySQL JBoss etc., können die Appliances auf die eigenen Bedürfnisse angepasst bzw. von Grund auf neu aufgesetzt werden.

„Einweg“ Infrastruktur
Die Infrastruktur wird graphisch zusammengesetzt und als Teil einer Anwendung innerhalb von AppLogic gespeichert. Dabei kann die Infrastruktur im wesentlichen als „Einweg“ Komponente bezeichnet werden, da sie auf dem Grid instanziiert wird wenn die Anwendung ausgeführt wird, die Wartung solange erfolgt, bis die Anwendung sie benötigt und entsorgt wird, wenn sich die Anwendung beendet.

Vorgefertigte verteilte Anwendungen
AppLogic verpackt den gesamten Code, die dazugehörigen Daten, sowie die Infrastruktur die zum Ausführen einer skalierbaren Web Anwendung benötigt werden in eine logische Einheit. Diese Einheit kann anschließend gestartet, gestoppt, verwaltet, kopiert oder in ein anderes Grid exportiert werden, ohne eine Änderung daran vornehmen zu müssen.

Zentrale Verwaltung
AppLogic fügt mehrere Commodity Server in ein skalierbares Grid zusammen, das mittels eines Browser oder einer Kommandozeile wie ein einzelnes System verwaltet wird. Zu den Verwaltungsmöglichkeiten gehören Dinge wie das Hinzufügen und Entfernen von Servern „on the fly“, also während das Grid weiterhin ausgeführt wird, die Überwachung der Hardware, das Verwalten von Benutzerdaten, Neustart der Server, Installation von Software, erstellen virtueller Appliances, Systembackups, Reparatur defekter Speichervolumes oder das Prüfen der Logs.

Skalierung von Anwendungen
Anwendungen auf Basis von AppLogic sind vollständig virtualisiert und können von einer kleinen Anzahl von Servern auf viele skaliert werden.

Überwachung der Operationen
AppLogic verfügt über ein Monitoring System, welches völlig transparent zu den Operationen der Web Anwendungen auf dem Grid agiert. Das System kombiniert die Hardware-Infomationen zur Laufzeit, die Informationen der virtuellen Infrastruktur sowie die Informationen der Anwendungen und macht diese über eine graphische Oberfläche verfügbar. Dabei können die System Ressourcen auf Basis der Anwendungen, der virtuellen Appliances/Server oder dem Netzwerkverkehr, sowie diversen Parametern bekannter Softwareinstallation wie Apache oder MySQL überwacht werden.

Hohe Verfügbarkeit
Zur Erhöhung der Verfügbarkeit bietet AppLogic neben der Spiegelung der gespeicherten Daten über mehrere Server hinweg die Möglichkeit einzelne Systeme wiederherzustellen. Weiterhin können zwei identische Instanzen einer Anwendung auf dem selben Grid oder in verschiedenen Rechenzentren parallel betrieben werden, um auf Basis von „Hot Standby“ den Ausfall der Anwendung abzufangen und damit die Verfügbarkeit zu erhöhen.

Überwachung der Ressourcen
AppLogic verfügt über ein integriertes System zur Überwachung der Ressourcen, die von jeder Anwendung genutzt werden. Dazu werden alle Events im Lebenszyklus einer Anwendung verfolgt und protokolliert, um den Ressourcenbedarf wie die Anzahl an Speicher, Prozessorleistung und Bandbreite zu ermitteln, die einer Anwendung zu dem Zeitpunkt des Events zugewiesen waren. Die Protokollierung kann weiterhin dazu genutzt werden, um ein Abrechnungssystem mit Daten zu versorgen und einen Kunden damit exakt die Ressourcen zu berechnen, die er benötigt hat.

Automation und Integration
AppLogic verfügt über eine umfangreiche Kommandozeile inkl. Skripting Funktion und der Möglichkeit zur Anbindung an weitere Management Systeme für Rechenzentren. Auf Basis der Skripte können logische Bedingungen definiert werden, die z.B. den Start, Neustart oder das Beenden von Anwendungen und Appliances hervorrufen.

Ausführen bestehender Anwendungen
Nahezu alle bestehenden Multi-Tier-Anwendung auf Basis von Linux können auf AppLogic ausgeführt werden.

Benutzeroberfläche


AppLogic stellt eine auf AJAX basierende graphische Web-Oberfläche bereit, mit der die gesamte Infrastruktur Umgebung konzipiert und überwacht werden kann.

Die vier folgenden Komponenten bilden das Herzstück von AppLogic und werden durch Screenshots anschließend illustiert.

  • System Dashboard
  • Infrastruktur Editor
  • Graphische Monitoring Konsole
  • Kommandozeile

System Dashboard

Infrastruktur Editor

Graphische Monitoring Konsole

Kommandozeile

Auf die Kommandozeile wird mittels einer Browser basierten Shell zugegriffen. Diese bietet die vollständige Kontrolle über die Anwendungen und Appliances. Dazu gehören das Starten und Stoppen, sowie das reparieren von Volumes oder die Migration von Anwendungen zwischen einzelnen Rechenzentren.

Quelle

  • AppLogic

Tags:

Category: Services

René Büst

About the Author ()

Rene Buest is Senior Analyst and Cloud Practice Lead at Crisp Research, covering cloud computing, IT infrastructure, open source and Internet of Things. Prior to that he was Principal Analyst at New Age Disruption and member of the worldwide Gigaom Research Analyst Network. Rene Buest is top cloud computing blogger in Germany and one of the worldwide top 50 bloggers in this area. In addition, he is one of the world’s top cloud computing influencers and belongs to the top 100 cloud computing experts on Twitter and Google+. Since the mid-90s he is focused on the strategic use of information technology in businesses and the IT impact on our society as well as disruptive technologies. Rene Buest is the author of numerous professional cloud computing and technology articles. He regularly writes for well-known IT publications like Computerwoche, CIO Magazin, LANline as well as Silicon.de and is cited in German and international media – including New York Times, Forbes Magazin, Handelsblatt, Frankfurter Allgemeine Zeitung, Wirtschaftswoche, Computerwoche, CIO, Manager Magazin and Harvard Business Manager. Furthermore Rene Buest is speaker and participant of experts rounds. He is founder of CloudUser.de and writes about cloud computing, IT infrastructure, technologies, management and strategies. He holds a diploma in computer engineering from the Hochschule Bremen (Dipl.-Informatiker (FH)) as well as a M.Sc. in IT-Management and Information Systems from the FHDW Paderborn.

Comments (1)

Trackback URL | Comments RSS Feed

Sites That Link to this Post

  1. Tweets that mention CloudUser | Ξxpert » AppLogic -- Topsy.com | September 21, 2010

Leave a Reply

You must be logged in to post a comment.