Categories
Grundlagen

Was ist ein Cloud Services Brokerage?

Das Cloud Services Brokerage Modell bietet ein architektonisches-, business-, und IT-Betriebs-Modell, mit dem verschiedene Cloud Services bereitgestellt, verwaltet und adaptiert werden können. Und das sich innerhalb eines föderierten und konsistenten Bereitstellung-, Abrechnung-, Sicherheit-, Administration- und Support-Framework befindet.

Unternehmen werden damit in die Lage versetzt, ihr Cloud-Services Management zu vereinheitlichen, um damit den Innovationsgrad zu erhöhen, die globale Zusammenarbeit zu verbessern, die Betriebskosten zu senken und insgesamt besser zu wachsen. Cloud Computing Anbieter erhalten damit die Möglichkeit die Bereitstellung ihrer Cloud Services zu vereinheitlichen und ihr eigenes Services Netzwerk zu differenzieren und damit eine umfangreiche Cloud Computing Plattform bereitzustellen. Technologie-Anbieter können damit ein Ökosystem von Mehrwertdiensten aufbauen, um ihre wichtigsten Angebote zu differenzieren, die Kundenbindung erhöhen und neue Vertriebswege erschließen.

Das Ziel des Cloud Service Broker ist es, ein Proof of Concept für eine vertrauenswürdige Cloud-Management-Plattform zu präsentieren. Die Plattform soll damit das Bereitstellen von komplexen Cloud-Services für Unternehmenskunden erleichtern.

Das Cloud Service Brokerage System ist der erste Ansatz seiner Art, um der Komplexität der ganzheitlichen Cloud Adaption zu begegnen und Unternehmen das große Potential des Cloud Computing aufzuzeigen. Das Cloud Service Brokerage System nutzt die spezifischen Kundenbedürfnisse in Bezug auf die Performance, Kosten, Sicherheit, Standorte, Standards und weiterer Kriterien und prüft, ob diese zu den möglichen Services von Cloud Computing Anbietern passen. Im Anschluss erstellt und veröffentlicht der Cloud Service Brokerage den entsprechenden Dienst innerhalb der Cloud und stellt kontinuierlich sicher, dass die einzelnen Cloud-Services einwandfrei zusammenarbeiten, um die erforderlichen Unternehmensziele zu erreichen.

Was ist ein Cloud Service Broker?

Ein Cloud Service Broker ist ein Drittanbieter, der im Auftrag seiner Kunden Cloud Services mit Mehrwerten anreichert und dafür sorgt, dass der Service die spezifischen Erwartungen eines Unternehmens erfüllt. Darüber hinaus hilft er bei der Integration und Aggregation der Services, um ihre Sicherheit zu erhöhen oder den originalen Service mit bestimmten Eigenschaften zu erweitern.

Kurz:

Ein Cloud Service Broker ist eine Schicht zwischen den Cloud Anbietern und den Cloud Nutzern und bietet verschiedene Dienste wie z.B. die Auswahl, Aggregation, Integration, Sicherheit, Performance Management, usw.

Cloud Services haben in den letzten Jahren ein enormes Wachstum erlebt, was aber ebenfalls dazu geführt hat, dass die Komplexität für Unternehmen gestiegen ist, um einen geeigneten Cloud Service zu nutzen bzw. zu adaptieren. Zu den größten Hürden gehören:

  • Durch eine stetig wachsende Anzahl von Anbietern ist es schwierig den richtigen Anbieter/ Service zu identifizieren.
  • Jeder Anbieter hat seine eigene API, was zu Kompatibilitätsprobleme führt.
  • Die Kostenstruktur, Bereitstellungsoptionen usw. variieren von Anbieter zu Anbieter.
  • Es gibt verschiedene Arten von Cloud-Services: SaaS, PaaS, IaaS, etc., die zu weiteren Komplikationen in der Identifikation, Auswahl und Integration führen.
  • Die Kosten steigen parallel zur Komplexität, wenn Unternehmen mehrere Anbieter nutzen.

Was sind die Vorteile eines Cloud Service Broker?

  • Die Auswahl des besten Anbieters basierend auf den Service, Kosten und weiterer spezifischer Parameter.
  • Reduzierung der Komplexität im Bezug auf die Integration von Cloud Services in die Geschäftsprozesse unabhängig von der Anzahl der Cloud-Services und die Art der Dienste.
  • Reduzierung von Sicherheitsrisiken – kümmern sich um die Authentifizierung, Autorisierung und Zugriffskontrolle.
  • Reduzierung der operativen Probleme – SLAs, technische Unterstützung, Abrechnung etc. Alles über eine Oberfläche.

Ein Cloud Service Broker befindet sich hierarchisch über den Cloud Anbietern, schafft einen Mehrwert und reduziert die Komplexität und die Risiken für Cloud Computing Nutzer.

Gartner prognostiziert, dass Cloud Computing Broker Services bis zum Jahr 2015 der größte Markt von Cloud Services werden wird.


Bildquelle: theresearchpedia.com

Categories
Grundlagen

Was ist iPaaS?

Eine der größten Herausforderungen bei der Nutzung von Cloud Services ist die saubere und sorgfältige Integration. Um die Anforderungen an sicheren und zuverlässigen Cloud-Integrations-Lösungen zu erfüllen, haben bereits einige Anbieter damit begonnen sogenannte Integration Platform-as-a-Services (iPaaS) anzubieten.

Bei iPaaS handelt es sich also um cloud-basierte Integrationslösungen, denen derzeit eine immer größere Bedeutung zugesprochen werden. Ein Grund warum iPaaS wohl eine Zukunft besitzt ist neben dem sehr interessanten technologischen Nutzen und den Möglichkeiten das Research Paper “Gartner Reference Model for Integration PaaS“. Diese wachsende Aufmerksamkeit ist ein gutes Zeichen für iPaaS Anbieter, aber es herrscht weiterhin noch Unklarheit darüber, was iPaaS tatsächlich ist oder wo der Nutzen liegt.

In einfachen Worten ausgedrückt ist iPaaS eine Plattform zum Erstellen und Bereitstellen von Integrationen innerhalb der Cloud und zwischen Clouds und Unternehmen. Mit iPaaS können Anwender “Integration Flows” entwickeln, mit denen Anwendungen, die sich in der Cloud oder On-Premise befinden, untereinander verbunden werden und anschließend ausgerollt werden können ohne die dafür benötigte Hardware oder Middleware dafür installieren und verwalten zu müssen.

Eine schematische Darstellung von iPaaS via Mulesoft

In einer weitergehenden Definition und Spezifität von iPaaS erläutert Gartner eine Reihe von wichtigen Funktionen in seinem Referenzmodell. Dazu gehören Tools und Technologien, welche die Ausführung der “Integration Flows” unterstützen, die Entwicklung und das Life Cycle Management von Integrationen, die Verwaltung und Überwachung der “Application Flows”, Governance und essentielle Cloud Funktionen wie Mandantenfähigkeit, Elastizität und Self-Provisioning.

Gartner sieht iPaaS ebenfalls als potenzielle Plattform für den Kauf, Verkauf und Austausch von “Integration Flows” (out-of-the-box und custom-built) zwischen Anwendern, Dienstleistern und Integrationsanbietern.

Da sich das iPaaS Modell noch in einem frühen Stadium befindet, weist Gartner darauf hin, dass die iPaaS Angebote die sich derzeit auf dem Markt befinden möglicherweise nicht alle Funktionen des Referenzmodells aufweisen. Jedoch identifiziert Gartner drei Kategorien von iPaaS Anbietern, von denen jeder einen anderen Bereich der Integration betont:

  • E-Commerce und B2B-Integration
  • Cloud-Integration
  • Enterprise Service Bus (ESB) und Service Oriented Architecture (SOA) Infrastrukturen
Categories
Grundlagen

Was ist Cloud Bursting?

Beim Cloud Bursting handelt es sich um ein Deployment Model für Anwendungen, bei dem sich die Anwendung in einer Private Cloud oder einem Rechenzentrum befindet und auf Ressourcen einer Public Cloud zugreift bzw. in diese verschoben wird, wenn die lokalen Ressourcen der Private Cloud bzw. des Rechenzentrums nicht mehr ausreichen, um den optimalen Betrieb sicherzustellen.

CloudBursting wird immer in einem Hybrid Cloud Model genutzt und hat den Vorteil, dass Unternehmen somit schnell und kostengünstig auf weitere Ressourcen zugreifen können, ohne lange auf deren Bereitstellung zu warten bzw. hohe vorab Investitionen zu tätigen.

Categories
Grundlagen

Eigenschaften einer Cloud

Neben den bekannten Eigenschaften des Cloud Computing existieren weitere typische Begebenheiten, die eine Cloud auszeichnen. Dazu gehören neben allgemeinen ebenfalls technische Eigenschaften und der Blickwinkel aus der Sicht eines Unternehmens.

Allgemeine Eigenschaften

  • Elastizität
    Die Cloud erlaubt das hoch- und herunterskalieren von Ressourcen je nach Bedarf. Die dafür benötigte Zeit liegt im Bereich von Sekunden oder Minuten jedoch nicht Wochen oder Monaten.
  • Skaleneffekte
    Der Cloud Computing Anbieter ist in der Lage Skaleneffekte auszunutzen und kann die für das Cloud Computing benötigte Infrastruktur wie Strom, Kühlung, Bandbreite und Hardware zum bestmöglichen Preis beschaffen.
  • Pay as you Go
    Dabei handelt es sich mehr um eine allgemeine als um eine geschäftliche Eigenschaft. Techniker werden durch den Einsatz der Cloud Entscheidungen bei der Zuweisung von Ressourcen treffen, die unmittelbare Auswirkungen auf den Ressourcenverbrauch und die Höhe der Gesamtkosten haben. Damit hat in Zukunft jeder die Aufgabe, das Unternehmen effizienter zu führen.

Technische Eigenschaften

  • Schnelle Skalierbarkeit
    Weitere Ressourcen können innerhalb von Minuten on-Demand gekauft werden, um bei Bedarf unerwarteten Situationen gerecht zu werden. Dazu gehören z.B. umfangreiche Berechnungen oder eine unerwartet hohe Besucherzahl auf der Webseite. Werden die Ressourcen nicht länger benötigt, können sie der Cloud zurückgegeben werden.
  • Die Ressourcen sind abstrakt und unkompliziert
    Die Hardware, die für den Betrieb einer Cloud benötigt wird, ändert sich und wird ständig verbessert. Jedoch ist es die Aufgabe des Cloud Computing Anbieters dafür zu sorgen. Ein Cloud Computing Nutzer muss sich mit den Details hinter einer Cloud nicht mehr auseinandersetzen.
  • Eine Cloud besteht aus einzelnen Bausteinen
    Die IT-Ressourcen eines Cloud Computing Anbieters bestehen aus kleinen Bausteinen. Das bedeutet, sie sind einzeln verfügbar und werden jeweils einzeln berechnet. Ein Nutzer hat die Möglichkeit entweder keine, alle oder nur ein paar Ressourcen zu nutzen, welche ihm als Service durch die Cloud bereitgestellt werden.
  • Experimentieren ist kostengünstig
    Cloud Computing entfernt die wirtschaftliche Hürde zum Experimentieren. Dadurch können neue Ideen ausprobiert werden, ohne langfristig in die dafür benötigte Hardware zu investieren, indem auf temporäre Ressourcen zurückgegriffen wird.

Eigenschaften aus der Sicht eines Unternehmens

  • Keine Vorabinvestitionen
    Cloud Computing wurde geschaffen, um Ressourcen bei Bedarf nutzen zu können. Aus diesem Grund sind keine einmaligen und großen Investitionen notwendig, bevor der eigentliche Bedarf auftritt.
  • Aus fixen kosten werden variable Kosten
    Anstatt sich auf eine feste Anzahl von Ressourcen über einen langen Vertragszeitraum (in der Regel ein bis drei Jahre) festzulegen, ermöglicht es Cloud Computing den Ressourcenverbrauch in Echtzeit zu verändern.
  • Investitionen werden zu Betriebskosten
    Investitionen werden in der Regel auf einen langen Zeitraum verteilt und führen damit zu einer mehrjährigen Verpflichtung, eine bestimmte Menge von Ressourcen zu nutzen. Die Betriebskosten hingegen beziehen sich auf die tatsächliche Nutzung des Cloud Service und können in Echtzeit verändert werden.
  • Die Ressourcenzuteilung wird granularer
    Cloud Computing ermöglicht eine minimale Nutzung in Bezug auf die Zeit und Ressourcen, bspw. Servernutzung pro Stunde und einzelne Bytes des genutzen Speichers.
  • Das Unternehmen gewinnt an Flexibilität
    Da ein Unternehmen sich nicht mehr langfristig an Ressourcen bindet, ist es in der Lage, schneller auf Änderungen bzgl. der benötigten Mengen und der Art der Geschäftstätigkeit zu reagieren.
  • Der Anbieter steht mehr unter Beobachtung
    Das Kerngeschäft des Cloud Computing Anbieters besteht darin, seine Cloud für die öffentliche Nutzung bereitzustellen. Somit hat er einen starken Anreiz seine Services so bereitzustellen, dass sie zuverlässig, anwendbar und kostengünstig sind. Die Cloud spiegelt also die Kernkompetenzen eines Anbieters wieder.
  • Die Kosten sind inhaltsorientierter
    Durch das flexible Ressourcenzuweisungsmodell des Cloud Computing ist es genauso leicht 100 Server für eine Stunde zu beziehen und zu betreiben wie einen Server für 100 Stunden. Das fördert das innovative Denken hinsichtlich der Lösungen von Problemen, die nur durch eine große Skalierung ermöglicht werden.
Categories
Grundlagen

Schlüsseltechnologien des Cloud Computing

Seit dem Beginn des neuen Jahrhunderts hat die Informationstechnologie viele neue Technologien hervorgebracht, die nun zusammen dafür genutzt werden IT-Ressourcen je nach Bedarf bereitzustellen. Durch die Kombination von Internet-Technologien wie Web-Browser, virtualisierte Server, Parallel-Computing und Open Source Software haben sich für die Bereitstellung von Computer Ressourcen völlig neue Möglichkeiten ergeben. Der Begriff Cloud Computing beschreibt die Kombination dieser genannten Technologien am besten.

IT-Anbieter sind dazu übergegangen aus dem Ergebnis dieser Konsolidierung Pakete zu schnüren und Unternehmen anzubieten, die ihre klassischen IT-Aufgaben auslagern wollen. Dazu gehören bspw. der Betrieb des eigenen Rechenzentrums oder die Anschaffung und Wartung von Unternehmensanwendungen wie Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), Human Resource Information System (HRIS) oder weiteren Anwendungen, die lediglich dazu dienen, den Betrieb des Unternehmens zu unterstützen.

Grid Computing

Beim Grid Computing handelt es sich um eine Form des verteilten Rechnens. Die Idee entstand erstmalig im Jahr 1997 am Argonne National Laboratory. Dabei wird eine Art virtueller Supercomputer auf Basis eines Cluster von lose gekoppelter Computer aufgebaut. Ein Grid ist so konzipiert, dass die Ressourcen nicht einer zentralen Instanz zugeordnet sind. Dabei werden offene und standardisierte Protokolle und Schnittstellen verwendet, um damit Speicher- und Rechenkapazitäten über das Internet zur Verfügung zu stellen. Auf Basis des Grid Computing sollen Rechenleistungen und Daten über Organisationsgrenzen hinweg auf eine sichere und effiziente Art gemeinsam genutzt werden. Damit sollte die Möglichkeit geschaffen werden, rechenintensive Probleme zu lösen, für die nicht ausreichend lokale Ressourcen zur Verfügung stehen. Zu den grundlegenden Konzepten des Grid Computing gehören die Standardisierung, die Automatisierung sowie die Abstraktion von der Hardware. Über standardisierte Schnittstellen erfolgt der Zugriff auf alle verfügbaren Rechnersysteme innerhalb des Grids, die über einen automatisierten Verteilungsalgorithmus ihre Aufgaben erhalten. Auf Basis der Standardisierung findet der Zugriff auf die unterschiedlichen Ressourcen statt.

Das Cloud Computing erbt von dem Grid Computing grundlegende Konzepte und Technologien. So ermöglicht das Grid Computing bspw. der IT-Infrastruktur die Flexibiltät und Elastizität. Das Grid Computing bildet die Grundlage für Infrastructure-as-a-Service, indem es die Basiskonzepte für die standardisierten und hochskalierbaren Systemarchitekturen bereitstellt, die als abstrahierte virtuelle IT-Services verwendet werden können. Zudem ist die Erweiterung des Grid Computing mittels Rechen-, Speicher- und Netzwerkkapazitäten bei Bedarf das Grundkonzept für eine Cloud Computing Infrastruktur. Neben der optimierten Ressourcennutzung, dem Zugriff über das Internet und dem effizienteren Betrieb der Infrastrukturen wurden ebenfalls die Standardisierung, Automatisierung, und die Kosten- und Effizienzgewinne vom Grid Computing übernommen.

Virtualisierung

Virtualisierung wird als eine Emulation oder Simulation von Hardware-Ressourcen, bei der die Hardware vom Betriebsystem entkoppelt wird und sich dadurch der Grad der Flexibilität erhöht, charakterisiert. Ressourcen erhalten damit eine zentrale und einheitliche Sicht unabhängig von dem tatsächlichen physikalischen Ort, an dem sie sich befinden.

Zwei Bereiche sind die treibenden Faktoren der Virtualisierung in der IT. Bei dem einen handelt es sich um die Serverkonsolidierung, womit die Anzahl der physikalischen Serversysteme innerhalb eines Rechenzentrums gesenkt wird. Bei dem zweiten Bereich handelt es sich um die Anwendungsvirtualisierung. Damit wird die Bereitstellung der Anwendungen beschleunigt, wodurch ebenfalls die Flexibilität des Unternehmens steigt. Weiterhin sorgt Virtualisierung für einen optimierten Auslastungsgrad der IT-Ressourcen, der mit Hilfe einer intelligenten Verteilung der Applikationen auf die freien Ressourcen auf 70%-90% gesteigert werden kann. Das führt ebenfalls zu höheren Kosteneinsparungen. Eine Virtualisierungssoftware sorgt für die Aufteilung eines physikalischen Servers in mehrere virtuelle und ermöglicht damit die parallele Bereitstellung der Cloud Services für mehrere Kunden. Damit wird die IT-Infrastruktur eines Cloud Anbieters konsolidiert und kostengünstig betrieben, was zu kostengünstigen Cloud Services führt.

Beim Cloud Computing wird die Virtualisierung genutzt, um dem Nutzer Ressourcen bei Bedarf automatisiert und flexibel bereitzustellen. Ohne diese Technologie und ihre Konzepte wäre Cloud Computing daher nicht möglich.

Software-as-a-Service

Das Konzept des Software-as-a-Service gilt als einer der führenden Treiber des Cloud Computing in den vergangenen Jahren. Dabei stellen Anbieter ihre Software nach Bedarf über das Internet dem Nutzer bereit. Dieser kann über einen Standard Webbrowser darauf zugreifen und muss stattdessen keine Software auf dem üblichen Weg mehr kaufen und auf seinem lokalem System installieren.

Speziell der Gedanke einen Service, in diesem Fall Software, nach Bedarf zu nutzen und nicht im Vorweg darin zu investieren, gehört zu den zentralen Ideen des Cloud Computing.

Service Oriented Architecture

Die Service Oriented Architecture (SOA) hat dazu beigetragen, dass überhaupt (verteilte) Softwarekomponenten entwickelt werden konnten, die für das Cloud Computing benötigt werden. Eine SOA wird dabei auch als ein Paradigma bzw. ein Softwarearchitekturkonzept beschrieben. Dabei werden die Daten und der zur Ausführung notwendige Programmcode so gekapselt, dass diese als Service von einer anderen Anwendung aufgerufen und damit wiederverwendet werden können.

Um mit Cloud Computing mehr als nur Infrastructure-as-a-Service anbieten zu können, ist das Architekturkonzept einer SOA unentbehrlich. Dabei wird eine SOA dafür verwendet, um Anwendungen in einzelne Services aufzuteilen, dass jeder einzelne Service einen eigenen Geschäftsprozess darstellt. Mittels standardisierter Schnittstellen können diese gemeinsam verteilt genutzt werden. Mit einer SOA können diese Services so kombiniert werden, dass die Veränderungen innerhalb der Geschäftsprozesse softwaretechnisch schnell nachvollzogen werden können. Somit kann die IT-Strategie ebenfalls schneller an die geänderte Unternehmensstrategie angepasst werden und führt damit zu einer höheren Flexibilität und Agilität und erhöht die Wettbewerbsfähigkeit.

Open Source Software

Aktuelle Internettechnologien (z.B. Apache, MySQL), Entwicklungsumgebungen, Frameworks (z.B. Ruby, PHP) und Infrastrukturtechnologien (z.B. Linux, XEN) zeigen den Einfluss von Open Source Software auf die heutigen Infrastrukturen. So ist bspw. die Cloud der Amazon Web Services die größte XEN Installation weltweit.

Web Services

Web Services werden sehr oft im gleichen Atemzug mit einer SOA genannt, basieren letztendlich aber nur auf ihrem Architekturkonzept. Bei einem Web Service handelt es sich um eine Softwareapplikation, die mittels einer standardisierten Schnittstelle bei Bedarf aufgerufen werden kann. Web Services sind damit auch die Grundlage von Mashups.

Die Amazon Web Services sind das beste Beispiel dafür, dass Web Services zu den grundlegenden Technologien des Cloud Computing gehören. So handelt es sich um jeden angebotenen Service wie bspw. Amazon EC2 oder Amazon S3 jeweils um einen eigenen Web Service, der separat über eine eigene Schnittstelle unabhängig angesprochen werden kann.

Categories
Grundlagen

Die historische Entwicklung des Cloud Computing

Historisch betrachtet reichen die Ideen und Konzepte des Cloud Computing bis in die 1960er Jahre zurück. Bereits damals enstanden die Ideen, IT-Ressourcen wie Rechenleistung und Anwendungen als ein Utility einer breiten Masse gegen eine Nutzungsgebühr zur Verfügung zu stellen. Auf Grund der damals dafür notwendigen, aber noch nicht vorhandenen technischen Voraussetzungen wie schnelle und stabile Internetverbindungen sowie der Mehrbenutzerfähigkeit von IT-Systemen, war der Durchbruch nicht möglich.

Vor ca. 10 Jahren begannen IT-Dienstleister erneut damit, ihren Kunden IT-Ressourcen in Form von Anwendungen anzubieten, welche sie flexibel nach der tatsächlichen Verwendung abrechnen konnten, so wie es von der Nutzung des Strom- und Wassernetzes bekannt ist. Die zu verarbeitenden Daten befinden sich dabei im Rechenzentrum eines Drittanbieters. Der Kunde greift mittels seines Webbrowser über eine Webseite auf diese Daten zu. Ursprünglich hieß diese Art des Geschäftsmodells Application Service Providing (ASP). Heute hat es die Bezeichnung Software-as-a-Service (SaaS), ein Teilbereich des Cloud Computing.

Die bekanntesten Vertreter und Vorreiter der Technologien, Ideen und Konzepte des Cloud Computing sind Google, Salesforce und Amazon.

Google konzentriert sich neben seiner Cloud Office Suite (Google Apps) inkl. E-Mail, Kalender, Textverarbeitung und Tabellenkalkulation auf das Bereitstellen einer Entwicklungsinfrastruktur (Google AppEngine). Salesforce hat sich dagegen auf Unternehmenssoftware wie z.B. dem Customer Relationship Management (CRM) spezialisiert und steht damit in direkter Konkurrenz zu den klassischen Anbietern wie z.B. SAP. Weiterhin steht mit Force.com jedoch auch eine Entwicklungsinfrastruktur in deren Cloud bereit. Google und Salesforce gehören damit zu den Anbietern von SaaS und Platform-as-a-Service (PaaS) Diensten.

Amazon hingegen ist mit seinen Amazon Web Services (AWS) ein Anbieter aus dem Bereich der Infrastructure-as-a-Services (IaaS) sowie PaaS und stellt mit der Amazon Elastic Compute Cloud (EC2) Rechenleistung und den Amazon Simple Storage Services (S3) Speicherplatz in seiner Cloud zur Verfügung.

Um zu verstehen, warum diese drei Anbieter ihre eigenen Infrastrukturen nach den Prinzipien des Cloud Computing einer breiten Masse bereitstellen können, gilt es hinter die Kulissen zu schauen und deren Beweggründe zu verstehen.

Auf Basis dieses Verständnisses, lässt sich sehr gut verdeutlichen, wie es zu der Entwicklung des Cloud Computing gekommen ist.


Beweggründe von Google, Salesforce und Amazon

Um die Beweggründe zu verstehen, muss zunächst die triviale Frage erörtert werden, warum jeder der genannten Anbieter selbst nicht auf den Einsatz der Prinzipien und Technologien des Cloud Computing in seinen Infrastrukturen verzichten kann.

Abgesehen von Salesforce, hatte keiner dieser drei Anbieter das ursprüngliche Ziel gehabt Cloud Computing Dienste anzubieten. Vielmehr ist es aus einer Notwendigkeit entstanden. Um ihre Kerngeschäfte überhaupt effizient betreiben zu können, waren sie gezwungen, Cloud Computing Technologien zu entwickeln und selber einzusetzen.

Warum benötigt Salesforce Cloud Computing?
Wie bereits oben erwähnt, hat Salesforce von Anfang an sein Kerngeschäft darauf ausgerichtet, Unternehmensanwendungen auf Basis von Software-as-a-Service anzubieten. Sie mussten somit eine eigene hochskalierbare und hoch verfügbare IT-Infrastruktur aufbauen, um ihren Kunden die angebotenen Services jederzeit zuverlässig bereitzustellen. Sonst hätte das Geschäftsmodell nicht funktioniert.

Warum benötigt Google Cloud Computing?
Wird das Kerngeschäft von Google genauer betrachtet, steht hier die Suche und die damit zusammenhängende Indizierung des Internets im Vordergrund. Für beides wird eine enorme Rechenleistung benötigt, die nur durch den Aufbau einer entsprechend leistungsfähigen IT-Infrastruktur bereitgestellt werden kann. Zudem möchte Google seinen Nutzern einen zuverlässigen und vor allem schnellen Dienst während der Suche von Informationen im Internet bereitstellen, wodurch auch hier die Aspekte der Hochskalierbarkeit und Hochverfügbarkeit von besonderer Bedeutung sind.

Warum benötigt Amazon Cloud Computing?
Amazons Kerngeschäft ist der Webshop auf Amazon.com. Hierbei handelt es sich um die größte E-Commerce Plattform der Welt mit Millionen Kunden und Transaktionen pro Tag. Auf Grund dessen gilt es für Amazon über eine hochskalierbare und hochverfügbare IT-Infrastruktur zu verfügen, um seinen Kunden einen zuverlässigen Service zu bieten.
Nach Aussage von, CTO von Amazon, liegen Amazons Beweggründe für den Einstieg in das Cloud Computing darin, dass die Infrastuktur innerhalb eines Jahrzehnts immer weiterentwickelt wurde, um die Evolution der Amazon E-Commerce Plattform stetig voranzutreiben. Währenddessen wurden verteilte Software und Vorgehensweisen entwickelt, welche in einem großen Umfang zu hohen Leistungen, Zuverlässigkeit, Betriebsqualität und Sicherheit geführt haben. Zur selben Zeit wurde festgestellt, dass der programmatische Zugriff auf den Amazon Katalog und weitere E-Commerce Dienste zu einer enormen und unerwarteten Innovation durch ein sehr großes Ökosystem von Entwicklern führt. Dadurch entstand schließlich der Gedanke, eine Amazon Kompetenz – der Aufbau von hochskalierbarer Systemsoftware – über eine Service Schnittstelle anzubieten und darüber einfache Infrastrukturbausteine bereitzustellen. Das sollte auf der ganzen Welt zu Innovationen führen, da sich Entwickler somit nicht mehr um den Kauf, Aufbau und die Wartung einer Infrastruktur kümmern müssen. Da aus eigener Erfahrung die Kosten für die Wartung einer zuverlässigen und skalierbaren Infrastruktur in einem traditionellen, redundanten Rechenzentrumsmodell ca. 70% der Zeit und Aufwände betragen und die Investitionen des geistigen Kapitals ebenfalls erhebliche Kosten verursachen, bestanden die ersten Überlegungen darin, Services bereitzustellen, welche die Kosten auf 30% oder weniger reduzieren. Zudem wurde erkannt, dass die generelle Rechnerauslastung sowohl bei großen und mittelständischen Unternehmen als auch bei Startups dramatisch klein (weniger als 20%, oft sogar weniger als 10%) und oft einer erheblichen Periodizität ausgesetzt ist. Die Bereitstellung von Diensten auf Basis eines on-Demand Models unter der Nutzung eines Pay as you Go Preismodells sollte dieses radikal verändern. Die Geschichte über den Verkauf von Überkapazitäten soll demnach ein Mythos sein. Jedoch hätte Amazon zunächst ohne den Aufbau der Infrastruktur seine Amazon Web Services in der Form niemals anbieten können. Die für den Webshop entwickelte Infrastruktur diente dafür als die entscheidende Grundlage.


Gemeinsamkeiten zur Bewältigung der Herausforderungen

Betrachten wir nun die Gemeinsamkeiten bzw. Herausforderungen, die bewältigt werden müssen um das jeweilige Kerngeschäft zu betreiben, wird deutlich, wie es zu der Technologie bzw. dem Geschäftsmodell gekommen ist, das als Cloud Computing bezeichnet wird. Gleichzeitig gelten diese Gemeinsamkeiten als die drei typischen Charakteristika des Cloud Computing. Dazu gehören:

Hohe Skalierbarkeit

  • Salesforce
    Die Unternehmensanwendungen von Salesforce sind auf kleine Startups bis hin zu großen Unternehmen ausgelegt. Die Infrastruktur muss dementsprechend mit großen Anfragemengen umgehen können.
  • Google
    Die Menge an Suchanfragen für einen bestimmten Zeitraum sind nicht exakt vorhersagbar, daher muss die Infrastruktur auch mit einer unerwartet hohen Belastung zurechtkommen. Zudem ist eines von Googles Mottos schließlich, dass schneller besser als langsam ist.
  • Amazon
    Speziell in saisonal bedingten Zeiten wie z.B. Weihnachten steigen die Anfragen an den Webshop exponentiell, wodurch die Infrastruktur stetig mitwachsen muss.

Hohe Verfügbarkeit

  • Salesforce
    Kunden von Salesforce nutzen geschäftskritische Unternehmensanwendungen und speichern ihre Daten in der Cloud von Salesforce, auf die sie jederzeit zugreifen müssen.
  • Google
    Google ist zum Inbegriff der Suche im Internet geworden. Sollte die Webseite mal nicht erreichbar sein, würde das einen enormen Imageverlust bedeuten.
  • Amazon
    Ein Webshop wie Amazon.com ist nicht vergleichbar mit einem gewöhnlichen Einzelhandelsgeschäft. Kunden können hier rund um die Uhr einkaufen, was bedeutet, dass der Shop 24/7 erreichbar sein muss.

Hohe Zuverlässigkeit

  • Salesforce
    Kunden von Salesforce müssen sich auf die einwandfreie Datenhaltung und Funktion der genutzten Anwendungen verlassen können.
  • Google
    Nutzer der Google Suchmaschine müssen sich auf die Suchergebnisse verlassen können. Das impliziert ebenfalls eine zuverlässige Indizierung.
  • Amazon
    Ein Kunde muss sich während eines Bestellvorgangs darauf verlassen können, dass alle Transaktionen die zu dieser Bestellung gehören, zuverlässig abgeschlossen werden.

Fazit

Nur durch die Konzeption und den Aufbau einer hoch skalierbaren sowie äußerst zuverlässigen Infrastruktur, die jederzeit verfügbar ist, können Salesforce, Google und Amazon ihre Kerngeschäfte optimal und einwandfrei betreiben und Ihren Kunden damit den größtmöglichen Nutzen bieten.

Categories
Grundlagen

Cloud Computing – Das neue Paradigma

Cloud Computing bezeichnet in erster Linie ein Servicemodell, bei dem auf (theoretisch unbegrenzte) IT-Ressourcen wie Rechenleistung, Speicherplatz, Applikationen und andere Arten von Services on-Demand zugegriffen werden kann. Dabei werden auf Basis des Pay as you Go Konzeptes nur die Ressourcen berechnet, die zu diesem Zeitpunkt auch tatsächlich genutzt werden.

Die eigentliche Verarbeitung findet in den Rechenzentren auf den Servern der Cloud Computing Anbieter statt. Dadurch hat die Relevanz heutiger leistungsfähiger Endgeräte stark abgenommen, wodurch auch mittels Smartphones und Netbooks, die nur über beschränkte Ressourcen verfügen, komplexe Anwendungen genutzt werden können.

Die Umsetzung des On-Demand Modells, die dynamische Zuweisung von Ressourcen nach Bedarf, erfolgt über die Abstrahierung mittels einer weiteren Ebene, der Virtualisierung. Anstatt der Miete eines physikalischen Servers werden virtuelle Maschinen eingesetzt, deren Ressourcen wie Speicherkapazitäten und Rechenleistung je nach den aktuellen Anforderungen dynamisch mitwachsen oder sich verkleinern. Ressourcen wie bspw. der Langzeitspeicher werden dabei bewusst getrennt von den verarbeitenden Ressourcen gehalten und separat angebunden, um die Flexibilität und Verfügbarkeit der Daten zu erhöhen.

Die Ressourcen aus der Cloud eines Anbieters sind somit weitaus skalierbarer als es die klassischen IT-Infrastrukturen sein können. Müssen unerwartete Spitzenlasten über einen unbekannten Zeitraum überbrückt werden, stehen die dafür benötigten Ressourcen umgehend zur Verfügung und können anschließend wieder heruntergefahren werden. Abgerechnet werden hierbei nur die Ressourcen, die auch tatsächlich für diesen Zeitraum genutzt wurden.

Unternehmen sind die Probleme zur Bewältigung von Spitzenlasten bekannt. Um dem gerecht zu werden sind sie klassisch vorgegangen und haben ihre IT-Infrastrukturen überdimensionert, um immer ausreichend Ressourcen vorzuhalten, die nur für wenige Zeiträume im Jahr, wie z.B. Weihnachten oder dem Jahresabschluss, benötigt werden. Dies führt jedoch dazu, dass die Server im Jahresmittel zu 20% genutzt werden und die restlichen 80% dem Unternehmen nicht helfen das eigentliche Geschäftziel zu verfolgen. Im Gegenteil: Durch die hohen Investitionskosten für Hard- und Software sowie Wartung, Personal etc. wurden immense Summen in einen Bereich des Unternehmens investiert, der in den Führungsebenen seit jeher als klassischer Kostenfaktor betrachtet wird.

Im Cloud Computing werden die Ressourcen alle als “… as-a-Service” aus der Cloud angeboten. Dazu gehören Rechnerleistung und Speicher, Programmierungebungen und Software. Diese Bereiche werden weiter unten im Kapitel noch detaillierter beschrieben. Diese Dienste werden bei Bedarf aus der Cloud bezogen.

Das Wort der Cloud abstrahiert sich aus der Illustration der klassischen Netzwerktechnik. Um die Details eines unbekannten Netzwerkes, in der Regel das Internet, nicht genauer beschreiben zu müssen, wird sich hier an der Abbildung einer Wolke (Cloud) bedient. Abgebildet auf das Cloud Computing bedeutet dies für einen Cloud Computing Nutzer, dass er sich um die Details der IT-Infrastruktur bei dem Cloud Computing Anbieter nicht mehr kümmern muss. Er bezieht lediglich die Ressourcen, die er zu einem bestimmten Zeitpunkt benötigt und nur diese werden anschließend abgerechnet.

Categories
Grundlagen

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.

Categories
Grundlagen

Arten von Cloud Computing (Redux)

Cloud Computing unterscheidet grundsätzlich drei Arten von Deployment Models

Private Cloud

In einer Private Cloud betreiben Unternehmen ihre eigenen Rechenzentren und nutzen ihre Dienste nur für Ihre eigenen (geschäftlichen) Zwecke innerhalb ihrer eigenen privaten Netze. Die Nutzung durch die Öffentlichkeit kommt hier nicht in Frage. Die Datensicherheit, ‘Corporate Governance’ und Zuverlässigkeit liegen damit in ihrem eigenen Einflussbereich. Aus diesem Grund werden Private Clouds nur indirekt zum Cloud Computing gezählt. Hier werden lediglich die Ideen und Konzepte adaptiert.

Public Cloud

In einer Public Cloud werden Rechenkapazität, Speicherplatz etc. gegen eine Nutzungsgebühr oder kostenlos der Öffentlichkeit zur Verfügung gestellt. Die Aufgaben, die ein Unternehmen in der Private Cloud übernimmt, werden in der Public Cloud dann von einem Drittanbieter übernommen. Dazu gehören z.B. der Kauf und die Wartung der Server. Die Aufgaben und Services von unterschiedlichen Kunden werden dabei auf derselben Infrastruktur gemeinsam gehostet und verarbeitet. Ein einzelner Kunde hat keine Kenntnis darüber, wessen Dienste ebenfalls auf derselben Infrastruktur gespeichert und verarbeitet werden.

Hybrid Cloud

Eine Hybrid Cloud stellt eine Kombination aus einer Private und einer Public Cloud dar. Dabei verfügen Unternehmen zwar über ihre eigene Private Cloud, verwenden aber zusätzlich Dienste aus der Public Cloud von externen Anbietern. Die Attraktivität besteht vor allem darin, dass der externe Anbieter bei Bedarf schneller und kostengünstiger die benötigte Infrastruktur erhöhen bzw. verkleinern kann. Die Dienste werden so in die Private Cloud integriert, dass der Endanwender nicht merkt, dass er eigentlich woanders arbeitet.

Virtual Private Cloud

In der jüngsten Vergangenheit hat sich eine neue Art des Cloud Computing herauskristallisiert, die Virtual Private Cloud. Dabei handelt es sich wie schon bei der Hybrid Cloud um eine Kombination aus einer Public Cloud und einer Private Cloud. Der Unterschied besteht jedoch darin, dass ein Public Cloud Anbieter für den Kunden einen dedizierten (virtuellen) Bereich im Rechenzentrum des Anbieters bereitstellt. Hier kann der Kunde anschließend sein eigenes virtuelles Rechenzentrum nach Private Cloud Gesichtspunkten (Datenschutz, Datensicherheit und Compliance) aber unter den Bedingungen einer Public Cloud (Skalierbarkeit, Verfügbarkeit, Flexibilität und Pay per use) aufbauen. Eine Verbindung der Virtual Private Cloud mit dem eigenen Rechenzentrum ist ebenfalls möglich.

Categories
Grundlagen

Was ist Cloud Computing? (Redux)

Die Frage ist im Prinzip geklärt. Dennoch stelle ich in Gesprächen des Öfteren immer noch fest, das weiterhin Aufklärungsbedarf besteht. Daher habe ich die Frage wiederbelebt und gebe erneut einen Einblick zu diesem Thema.

Was ist Cloud Computing?

Cloud Computing bezeichnet in erster Linie ein Servicemodell, bei dem auf (theoretisch unbegrenzte) IT-Ressourcen wie Rechenleistung, Speicherplatz, Applikationen und andere Arten von Services on-Demand zugegriffen werden kann. Dabei werden auf Basis des Pay as you Go Konzeptes nur die Ressourcen berechnet, die zu diesem Zeitpunkt auch tatsächlich genutzt werden.

Die eigentliche Verarbeitung findet in den Rechenzentren auf den Servern der Cloud Computing Anbieter statt. Dadurch hat die Relevanz heutiger leistungsfähiger Endgeräte stark abgenommen, wodurch auch mittels Smartphones und Netbooks, die nur über beschränkte Ressourcen verfügen, komplexe Anwendungen genutzt werden können.

Die Umsetzung des On-Demand Modells, die dynamische Zuweisung von Ressourcen nach Bedarf, erfolgt über die Abstrahierung mittels einer weiteren Ebene, der Virtualisierung. Anstatt der Miete eines physikalischen Servers werden virtuelle Maschinen eingesetzt, deren Ressourcen wie Speicherkapazitäten und Rechenleistung je nach den aktuellen Anforderungen dynamisch mitwachsen oder sich verkleinern. Ressourcen wie bspw. der Langzeitspeicher werden dabei bewusst getrennt von den verarbeitenden Ressourcen gehalten und separat angebunden, um die Flexibilität und Verfügbarkeit der Daten zu erhöhen.

Die Ressourcen aus der Cloud eines Anbieters sind somit weitaus skalierbarer als es die klassischen IT-Infrastrukturen sein können. Müssen unerwartete Spitzenlasten über einen unbekannten Zeitraum überbrückt werden, stehen die dafür benötigten Ressourcen umgehend zur Verfügung und können anschließend wieder heruntergefahren werden. Abgerechnet werden hierbei nur die Ressourcen, die auch tatsächlich für diesen Zeitraum genutzt wurden.

Unternehmen sind die Probleme zur Bewältigung von Spitzenlasten bekannt. Um dem gerecht zu werden sind sie klassisch vorgegangen und haben ihre IT-Infrastrukturen überdimensionert, um immer ausreichend Ressourcen vorzuhalten, die nur für wenige Zeiträume im Jahr, wie z.B. Weihnachten oder dem Jahresabschluss, benötigt werden. Dies führt jedoch dazu, dass die Server im Jahresmittel zu 20% genutzt werden und die restlichen 80% dem Unternehmen nicht helfen das eigentliche Geschäftziel zu verfolgen. Im Gegenteil: Durch die hohen Investitionskosten für Hard- und Software sowie Wartung, Personal etc. wurden immense Summen in einen Bereich des Unternehmens investiert, der in den Führungsebenen seit jeher als klassischer Kostenfaktor betrachtet wird.

Im Cloud Computing werden die Ressourcen alle als “… as-a-Service” aus der Cloud angeboten. Dazu gehören Rechnerleistung und Speicher, Programmierungebungen und Software. Diese Bereiche werden weiter unten im Kapitel noch detaillierter beschrieben. Diese Dienste werden bei Bedarf aus der Cloud bezogen.

Das Wort der Cloud abstrahiert sich aus der Illustration der klassischen Netzwerktechnik. Um die Details eines unbekannten Netzwerkes, in der Regel das Internet, nicht genauer beschreiben zu müssen, wird sich hier an der Abbildung einer Wolke (Cloud) bedient. Abgebildet auf das Cloud Computing bedeutet dies für einen Cloud Computing Nutzer, dass er sich um die Details der IT-Infrastruktur bei dem Cloud Computing Anbieter nicht mehr kümmern muss. Er bezieht lediglich die Ressourcen, die er zu einem bestimmten Zeitpunkt benötigt und nur diese werden anschließend abgerechnet.

Historische Entwicklung

Historisch betrachtet reichen die Ideen und Konzepte des Cloud Computing bis in die 1960er Jahre zurück. Bereits damals enstanden die Ideen, IT-Ressourcen wie Rechenleistung und Anwendungen als ein Utility einer breiten Masse gegen eine Nutzungsgebühr zur Verfügung zu stellen. Auf Grund der damals dafür notwendigen, aber noch nicht vorhandenen technischen Voraussetzungen wie schnelle und stabile Internetverbindungen sowie der Mehrbenutzerfähigkeit von IT-Systemen, war der Durchbruch nicht möglich.

Vor ca. 10 Jahren begannen IT-Dienstleister erneut damit, ihren Kunden IT-Ressourcen in Form von Anwendungen anzubieten, welche sie flexibel nach der tatsächlichen Verwendung abrechnen konnten, so wie es von der Nutzung des Strom- und Wassernetzes bekannt ist. Die zu verarbeitenden Daten befinden sich dabei im Rechenzentrum eines Drittanbieters. Der Kunde greift mittels seines Webbrowser über eine Webseite auf diese Daten zu. Ursprünglich hieß diese Art des Geschäftsmodells Application Service Providing (ASP). Heute hat es die Bezeichnung Software-as-a-Service (SaaS), ein Teilbereich des Cloud Computing.

Die bekanntesten Vertreter und Vorreiter der Technologien, Ideen und Konzepte des Cloud Computing sind Google, Salesforce und Amazon.

Google konzentriert sich neben seiner Cloud Office Suite (Google Apps) inkl. E-Mail, Kalender, Textverarbeitung und Tabellenkalkulation auf das Bereitstellen einer Entwicklungsinfrastruktur (Google AppEngine). Salesforce hat sich dagegen auf Unternehmenssoftware wie z.B. dem Customer Relationship Management (CRM) spezialisiert und steht damit in direkter Konkurrenz zu den klassischen Anbietern wie z.B. SAP. Weiterhin steht mit Force.com jedoch auch eine Entwicklungsinfrastruktur in deren Cloud bereit. Google und Salesforce gehören damit zu den Anbietern von SaaS und Platform-as-a-Service (PaaS) Diensten.

Amazon hingegen ist mit seinen Amazon Web Services (AWS) ein Anbieter aus dem Bereich der Infrastructure-as-a-Services (IaaS) sowie PaaS und stellt mit der Amazon Elastic Compute Cloud (EC2) Rechenleistung und den Amazon Simple Storage Services (S3) Speicherplatz in seiner Cloud zur Verfügung.