Cloud Computing

vom gridscale Team

Mit Cloud Computing hat sich eine neue Generation von Hosting Services entwickelt, bei dem Rechenleistung als Service bezogen wird. Zumeist erhält der Anwender Zugriff auf eine Oberfläche, über die virtualisierte Ressourcen wie Prozessoren, Arbeitsspeicher, Festplatten und Netzwerke zusammengestellt werden können. Klassischerweise stehen Ressourcen nicht dediziert zur Verfügung. Das bedeutet, dass sich mehrere Kunden z.B. den selben CPU-Kern teilen müssen und sich gegenseitig ins Gehege kommen können. Bei gridscale haben wir uns explizit gegen eine solche Architektur entschieden und stellen technologisch sicher, dass der Anwender stets dedizierte Ressourcen erhält. Dadurch sind sogenannte „Noisy Neighbour“-Effekte ausgeschlossen.

 Verschiedene Arten von Cloud Computing

Verschiedene Arbeiten und Definitionen befassen sich damit, Cloud Computing in verschiedene Kategorien einzuordnen. Das NIST (National Institute of Standards and Technology) unterscheidet zwischen den folgenden drei Arten:

Cloud Computing – ein umfassendes Konzept mit vielen Vorteilen gegenüber einfacher Virtualisierung oder klassischem Outsourcing

Auch wenn in klassischen Hosting Setups heute häufig zu Virtualisierung gegriffen wird, geht Cloud Computing noch einen Schritt weiter. Es werden nicht mehr einzelne Server virtualisiert, sondern aus einer Vielzahl von Servern (einer sogenannten Serverfarm) wird eine konvergente Plattform erstellt, die es erlaubt unabhängig einer spezifischen Hardware auf einem oder mehreren physikalischen Server mehrere virtuelle Server zu starten. Diese Server werden völlig unabhängig voneinander betrieben.

Dadurch wird vorhandene Hardware nicht nur effizienter ausgelastet, sondern es wird durch eine intelligente Verteilung von virtuellen Servern auf der Plattform auch eine deutlich höhere Verfügbarkeit gewährleistet. Darüberhinaus erlauben es moderne Cloud Plattformen, beliebige Netzwerkkonfigurationen zu erstellen und diverse Cloud Server miteinander zu vernetzen. Cloud Computing geht also deutlich über eine reine Virtualisierung von Rechnerressourcen hinaus. Die Betrachtung von Cloud Computing geht also über die reinen System- und Hardwareschicht hinaus und konzentriert sich vielmehr auf die Betrachtung einer gesamten IT-Infrastruktur und der bedarfsgerechten Skalierung dieser Infrastruktur.

Der Nutzer von Cloud Computing hat mit der physikalischen Server- und Netzwerkinfrastruktur im Regelfall keine Berührungspunkte. Die Verwaltung und  Betreuung erfolgt durch den Cloud Provider. Der Nutzer beschränkt sich darauf, über eine einfache Oberfläche seine Cloud Services zu orchestrieren. So gesehen kann das Konzept von Cloud Computing auch als Outsourcing einer beliebigen skalierbaren, virtuellen Rechenzentrumsumgebung bezeichnet werden.

 Was sind Vorteile und Nutzen von Cloud Computing?

Als einer der größten Vorteile von Cloud Computing dürfte die hohe Flexibilität gelten. Der Anwender kann jederzeit die benötigten Rechen- und Speicherressourcen in einem Self-Service Portal zusammenstellen. Verschiedene Virtuelle Server können über ein Software Defined Network (SDN) flexibel miteinander verbunden werden.

Dadurch, dass der Anwender keine teure Hardware mehr anschaffen muss, entfallen hohe CAPEX-Investitionen für den Bau eigener Serverräume, eigener Klimatisierung und einem eigenen hochverfügbaren Netzwerk. Stattdessen mietet der Anwender die nötigen Ressourcen einfach in Echtzeit von dem Cloud Provider an. Die hohen und riskanten Investitionen in Server- und Netzwerkhardware bleiben beim Cloud Provider, wohingegen der Cloud Nutzer nur noch die nötige Serverleistung wie Strom aus der Steckdose bezieht.

Cloud Computing der nächsten Generation

Cloud Computing der nächsten Generation von gridscale – Software Defined Networking (SDN). 

Bei gridscale fokussieren wir uns auf Cloud Computing Services im Bereich Infrastructure as a Service (IaaS) und Platform as a Service (PaaS). Unsere Anwender beziehen aus unserer Plattform Rechenkapazitäten in Form reiner Infrastrukturleistung oder als Platformservices (beispielsweise relationale Datenbanken). Alle Leistungen werden dediziert pro Anwender erbracht, also ohne dass in der Branche häufig anzutreffende Overcommitment. Für die Erbringung unserer Leistungen betreiben wir in Deutschland hochsichere Rechenzentren, die mit unserer Hardware ausgestattet werden. Dabei greifen wir ausschließlich auf für den Rechenzentrumsbetrieb zertifizierte Enterprise-Hardware zurück.

Die von uns eigens entwickelte Steuerungssoftware (Provisioning) erlaubt es dem Anwender, alle im Rechenzentrumsbetrieb anzutreffenden Komponenten zu virtualisieren. Es ist so möglich komplette physikalische Rechenzentren in der Oberfläche von gridscale nachzubauen. Private Netzwerke werden als reine Layer-2 Netze in gridscale abgebildet. So können wir sicherstellen, dass auch exotische Protokolle oder beliebige Jumbo-Frame Konfigurationen zwischen den Cloud Servern funktionsfähig sind.

Das gesamte technische Konzept von gridscale wird als Software Defined Networking (SDN) bezeichnet. Die so abgebildeten virtuellen Rechenzentren des Anwenders stehen denen eines physikalischen Rechenzentrum in nichts nach.

Durch die hohe Flexibilität und Kompatibilität zu bekannten, physikalischen Strukturen in Rechenzentren, fällt es besonders leicht gewohnte Architekturen und bestehende Setups in das SDN von gridscale zu migrieren.

Der Anwender von gridscale kann zwischen beliebigen Konfigurationen (z.B. Core, RAM, Storage und Netzwerk) wählen. Das Provisioning von gridscale sieht dabei immer nur die Einzelteile – ähnlich wie verschiedene Bauteile. Der virtuelle Server des Anwenders wird aus den Bauteilen dann schlussendlich exakt so zusammengebaut, wie er benötigt wird. gridscale unterstützt eine beliebige Kombination aus den folgenden Korridoren:

  • intel Xeon CPU Cores: 1 – 64
  • DDR4 ECC RAM: 1 Gigabyte – 240 Gigabyte
  • SSD Storage: 1 Gigabyte – 1 Petabyte

Durch diese hohe Individualität können wir gewährleisten, dass sich virtuelle Server genau so konfigurieren lassen, um einen beliebigen Workload optimal bei geringen Kosten zu betreiben. Ändert sich der Ressourcenbedarf, kann die Konfiguration jederzeit angepasst werden. Dafür ist eine wichtige Funktionalität das sogenannte Live Vertical Scaling (LVS). LVS erlaubt dem Anwender im laufenden Betrieb, also ohne jede Unterbrechung, auf veränderte Anforderungen in Echtzeit zu reagieren. So können über einen Automatismus oder manuell einfach weitere CPU-Kerne oder neuer RAM in einen Virtuellen Server eingebaut werden. Die einzelnen Parameter eines Virtuellen Servers können dadurch völlig unabhängig voneinander verändert werden, ohne dass dadurch der laufende Betrieb eines Virtuellen Servers z.B. durch einen Neustart unterbrochen wird.