Vielen Admins werden seit 3 – 4 Jahren von diversen Herstellern und Plattformen wolkige Aussichten gemacht. Dabei gibt es dort viele Begriffe und noch viel mehr wird durcheinander geworfen. Nun ist auch noch das Thema “Sandboxing” als neuer Virtualisierungsansatz dazu gekommen. Bevor wir in die Tiefen der Begriffe und dem bekannten Bullshitbingo abdriften wäre Zeit für einige Grundlagen.
Oft wird hierbei die Aussage von Lewis Cunningham verwendet, der mal zitierte: “Cloud computing is using the Internet to access someone else´s software running on someone else´s hardware in someone else´s data center“.
Diese Aussage trifft sicher den Kern um den es geht. Berücksichtigung finden aber keine Ausprägungen und Details, welche gerade für Admins hilfreich sind.1. Plattformen
- Eigene IT (das eigene Rechenzentrum, bzw. “Data Center“)
- Cloud-Infrastruktur (IaaS “Infrastructure as a Service”, Der Kunde nutzt die gegebene Infrastruktur, liefert aber selbst Daten, Anwendungslogik und Enwicklung bzw. Runtime. Typische Vertreter sind hier u.a. Amazon Webservices, Microsoft Azure etc.)
- Cloud-Plattform (PaaS “Plattform as a Service”, Der Kunde liefert Daten und Anwendungslogik, nutzt dafür aber gegebene Infrastruktur incl. Runtime und Entwicklung. Vertreter sind hier u.a. Google App Engine, Force.com, etc.)
- Cloud-Software (SaaS “Software as a Service”, Der Kunde liefert nur noch seine Daten, nutzt dafür aber vorgegebene Anwendungslogik, Entwicklung, Runtime und Infrastruktur. Vertreter sind hier alle bekannten Anwendungen und mobilen Apps wie zum Beispiel Google Apps for Work, Zoho, Gliffy etc.)
Diese Plattformen können nun wiederrum selbst betrieben und genutzt werden oder Kunden in Rechnung gestellt. Sicherlich sind auch Mischformen möglich.
2. Betriebsformen
- Private Cloud – Die Hardware, Software und Virtualisierung wird im eigenen Rechenzentrum genutzt und Mitarbeitern/Kunden angeboten
- Public Cloud – Diese werden über eine Internetverbindung konsumiert als Application oder App auf mobilen Endgeräten
- Hybrid Cloud – Teile der Infrastruktur werden über sog. Connectoren von externen Rechenzentren (Cloud Anbietern) bezogen, der andere Teil verbleibt wie bei den private Clouds im eigenen Rechenzentrum. Hier spielen insbesondere wirtschaftliche Betrachtungen für “make or buy” bei einer Applikation die Hauptrolle.
- Community-Cloud – Zusammenschluss von Rechenleistung für verteilte Anwendungen. Ein Form die insbesondere in Lehre und Forschung zu finden ist
3. Aufbaumöglichkeiten
- Clustering – Klassischer Zusammenschluss von 2-x Computern in aktiv/passiv oder aktiv/aktiv Form. Hier wird erfolgen Anpassung durch “Scale Up”, also Vergrösserung eines Clusterknotens durch mehr RAM, CPU, Storage etc. bzw. “Scale Out”, also Verlagerung von Diensten auf mehr Clusterknoten
- Grid – Computing ist der Zusammenschluss heterogener Rechner über Rechenzentrumsgrenzen hinweg falsch gewünscht um gemeinsam Rechenleistung für 1 Aufgabe zu generieren. Typische öffentliche Projekte sind hier Seti@Home bzw. Folding@Home
- Outsourcing bei Application Service Providern (ASPs). Jeder Kunde hat seine “eigene” Installation)
- Outsourcing als Software as a Service. Jeder Kunde teilt sich mit anderen Kunden die Softwareplattform und Infrastrukturen
4. Virtualisierungsmöglichkeiten
- Hypervisor in der Hardware – z.B. IBM pSeries mit LPAR (logical Partition)
- Hypervisor anstatt Wirtsystem – z.B. VMware ESXi
- Hypervisor im Wirtsystem – z.B. Linux KVM
- Hypervisor als installierte Anwendung – z.B. VirtualBox, VMware Player
5. Virtuelle Betriebsformen
- Vollvirtualisierung
- Paravirtualisierung
- Xen unter Linux
- Containerrisierung
Um das ganze nochmals bei einem Kaffee zu geniessen empfehle ich den 105 Minuten Vortrag von Professor Dr. Lückemeyer der TH Stuttgart. Zwar 3 Jahre alt aber immer noch aktuell.
In Teil 2 befasse ich mich mit Plattformen und Werkzeugen für das Cloud-Computing