Wer mit dem Gedanken spielt in die Cloud zu ziehen stellt sich erst einmal der Frage welche die Richtige für einen ist. Es gibt viele Player aber die drei Großen sind:

Amazon Web Services (AWS): AWS ist die erste Cloud, die 2006 live ging. Seitdem hat sie ihren Führungsstatus stets behalten und hat auch heute noch den größten Marktanteil. Viele Innovationen gingen von hier aus um sich von der Konkurrenz abzusetzen. Ausserdem wird viel Wert auf Kundensupport gelegt, wie von Amazon allgemein bekannt.

Microsoft Azure: Microsoft zog 2008 nach und stellte die Microsoft Azure Plattform vor. Vorteile hier sind natürlich die engere Verzahnung mit dem Windows Betriebssystem und Microsoft Servern. Heutzutage ist es besonders bei Enterprises beliebt, da mit MS Office, MS Teams alles aus einer Hand kommen kann. Allerdings hat es einen Ruf die Services der anderen erstmal eher schlecht als recht zu kopieren und Ausfälle waren in der Vergangenheit auch keine Seltenheit. Momentan steht Azure auf Platz Zwei nach Marktanteil.

Google Cloud Platform (GCP): Google ist ja eigentlich die erste Firma an die man bei großen Datenmengen, Serverfarmen und Cloud denkt. GCP wurde 2008 vorgestellt und liegt heute nach Marktanteilen an dritter Stelle. Von Google kam auch Kubernetes, der unumfochtene Containerorchestrierer. Dieser ist heutzutage Open Source und lässt sich auf allen Cloudanbietern nutzen.

Auch GCP bietet alle notwendigen Services an, allerdings ist, wie von Google gewohnt, Kundensupport eher ein Fremdwort. Was mich persönlich nervös macht, ist die Eigenheit ihre eigenen Produkte einzustellen. Immerhin haben sie 2023 das erste Mal Profit eingefahren.

Angebotene Dienste Link zu Überschrift

Hier gibt es keine großen Unterschiede. Virtuelle Maschinen (Linux, Mac, Windows), Cloudspeicher, Datenbanken, IoT, Identitätsverwaltung.. Alles Wichtige ist da. Momentan springen alle auf den KI-Zug auf; Dort gibt es sicherlich Unterschiede in den Angeboten. Wenn einen das interessiert kann man es sich mal genauer anschauen.

Verfügbarkeit Link zu Überschrift

Auch hier gibt es bei allen Providern Service Level Agreements (SLAs) und die generelle Verfügbarkeit ist hoch. Es kann allerdings immer vorkommen, dass es Ausfälle gibt und sogar ganze Regionen für eine Weile offline gehen (siehe z.b. Gergelys Artikel hier). Deshalb lohnt es sich multiregional zu bauen, um Auswegsmöglichkeiten zu haben.

Benutzerfreundlichkeit Link zu Überschrift

Benutzerfreundlichkeit liegt im Auge des Betrachters aber generell ist die Konsole (also die Website) von AWS ein bisschen altbacken, wird aber ständig überarbeitet. Azure ist okay, GCP schneidet wohl am besten ab.

Entwickler verbringen allerdings sowieso nicht so viel Zeit in der Konsole, da Infrastruktur am besten als Code (IaC) deployed wird.

Dokumentation Link zu Überschrift

Meiner Meinung nach ist hier Azure das Schlusslicht. AWS und GCP sind viel übersichtlicher und vollständiger.

Preise Link zu Überschrift

Die Preisgestaltung in der Cloud ist komplex, da man meist für die Nutzung zahlt, ohne langfristige Verträge. Dabei zahlt man für jeden Baustein separat (z.b. für den Server, die Datenbank, den Objektspeicher, die Netzwerkbausteine, etc.). Das kann, je nach Aufbau und Anzahl der Nutzer einige Cent kosten oder mehrere Millionen.

Es lohnt sich zu überlegen was man benötigt und kleine Proof of Concepts (POCs) zu starten, um zu sehen welche Bausteine man braucht und wie die Kosten hier skalieren.

Nicht zu vergessen sind auch auch versteckte Kosten, wie Datenfluss aus der Cloud raus, was sehr schnell teuer werden kann.

Generell sind die Preise zwischen den Anbietern hier ähnlich, bei 200+ angebotenen Services sollte man seinen speziellen Fall anschauen.

Datensicherheit Link zu Überschrift

Alle drei haben auch Server in Deutschland (und in vielen anderen europäischen Ländern), so dass die Daten in Deutschland bleiben, wenn das gewünscht ist.

Lock-in Link zu Überschrift

Lock-in bedeutet, dass es schwer sein kann den Cloud-Provider zu verlassen, wenn man erstmal tief drin ist. Woran liegt das?

Proprietäre Technologien

Benutzt man Software, die nur in einer Cloud funktioniert muss man im schlimmsten Fall beim Umzug alles neu bauen. Das wäre z.b. DynamoDB von AWS.

Knowhow

Alle Entwickler sind Azure gewöhnt und jetzt müssen sie alles nochmal von vorne lernen? Vielleicht gibt es da böses Blut.

Wie kann man gegensteuern?

Man kann von vornherein versuchen auf offene Technologie zu setzen. Terraform statt CloudFormation/ARM Templates. Kubernetes statt ECS/Azure Container Apps. MySQL statt DynamoDB/Cosmos DB.

Multi-Cloud?

Gleichzeitig bei mehreren Providern um nicht zu abhängig von einem zu sein? Das ist möglich, aber jetzt braucht man noch mehr Expertise von Entwicklern. Und aufpassen bei den Transferkosten: Daten aus einer Cloud in eine andere schicken kann schnell schweineteuer werden (Genau wegen diesem Lock-in-Effekt machen es die Provider so teuer. Ich hoffe die EU geht da mal gegen vor).

Hier sind noch zwei gute Artikel von Corey zu dem Thema: The Vendor Lock-In You Don’t See und A MultiCloud Rant.

Zusammenfassung Link zu Überschrift

Wenn man erste Schritte in die Cloud unternehmen will, ist man bei allen drei gut aufgehoben. Jede Innovation wird recht schnell von den anderen kopiert und preislich passen sie sich auch aneinander an. Alle bieten auch ein sehr faires kostenloses Kontigent an Services an, teilweise auf 12 Monate beschränkt, teilweise unbegrenzt.