Cloud Computing
Cloud Computing ist ein recht allgemein gehaltener Begriff, unter den alles fällt was mit gehosteten Services zu tun hat. Diese Services werden hauptsächlich in drei Kategorien unterteilt: IaaS (Infrastructure-as-a-Service), PaaS (Platform-as-a-Service) und SaaS (Software-as-a-Service). Man hat sich beim Namen Cloud Computing durch das Symbol inspirieren lassen, das man oft in Flowcharts und Diagrammen für das Internet verwendet.
Ein Cloud-Service bringt drei bestimmte Charakteristiken mit sich, die ihn von herkömmlichem Hosting unterscheiden.
- Es wird die genaue Nutzung abgerechnet, in der Regel pro Minute oder Stunde.
- Es ist elastisch und skalierbar. Somit kann sich der Anwender für so viel oder so wenig Services wie gewünscht entscheiden.
- Der Service steht unter dem kompletten Management des Providers. Der Kunde benötigt lediglich einen persönlichen Computer und einen Internetzugang.
Maßgebliche Innovationen bei Virtualisierung und verteiltem (distributed) Computing sowie verbesserter Zugriff auf Hochgeschwindigkeits-Internet und die schwache Wirtschaft haben das Interesse in Cloud Computing in den letzten Jahren beschleunigt.
Eine Cloud kann Private oder Public sein. Eine Public Cloud bietet allen Internetnutzern den Service an. Derzeit ist Amazon Web Services (AWS) der größte Provider einer Public Cloud. Eine Private Cloud ist ein proprietäres Netzwerk oder ein Data Center, das einer eingeschränkten Anzahl an Menschen gehostete Services zur Verfügung stellt. Benutzt ein Service-Provider Public-Cloud-Ressourcen, um eine Private-Cloud zu erstellen, nennt man das Resultat eine virtuelle Private Cloud (VPC). Bei sowohl Private als auch Public ist das Ziel von Cloud Computing, einfachen Zugriff auf skalierbare Computing-Ressourcen und IT-Services zu bekommen.
IaaS wie zum Beispiel Amazon Web Services stellt Kunden virtuelle Server-Instanzen und Storage zur Verfügung. Weiterhin gibt es eine API (Application Programming Interface), mit der Anwender die virtuellen Server und das Storage starten, stoppen, konfigurieren und adressieren können. Durch dieses Modell zahlt ein Unternehmen nur für die Kapazitäten, die es auch tatsächlich benötigt. Sobald zusätzliche Ressourcen gebraucht werden sind diese schnell und unkompliziert verfügbar. Weil dieses Pay-as-you-go-Modell den Methoden von Elektrizität, Treibstoff und Wasser ähnelt, nennt man es manchmal auch Utility Computing.
PaaS definiert man in der Cloud als einen Satz an Entwicklungs-Tools, der auf der Infrastruktur des Providers gehostet ist. Entwickler kreieren via Internet Applikationen auf der Plattform des Providers. PaaS-Provider setzen möglicherweise APIs, Website-Portale oder Gateway-Software ein, die auf dem Computer eines Kunden installiert ist. Force.com (eine Nebenerscheinung von Salesforce.com) und GoogleApps sind Beispiele von PaaS. Entwickler müssen im Hinterkopf behalten, dass es derzeit keine Standards für die Interoperabilität oder Daten-Portabilität in der Cloud gibt. Einige Provider gestatten es daher nicht, dass Kunden die auf ihrer Plattform geschaffene Software exportieren.
Im SaaS-Cloud-Modell stellt der Anbieter die Hardware-Infrastruktur und das Software-Produkt zur Verfügung. Er kommuniziert mit dem Anwender mithilfe eines Front-End-Portals. SaaS ist ein sehr breiter Markt. Services können unter anderem Web-basiertes E-Mail, Inventarisierungs-Kontrolle und Datenbankverarbeitung sein. Weil der Service-Provider sowohl die Daten als auch die Applikation hostet, kann der Anwender den Service von überall aus nutzen.