Cloud Hardware als Black Box

Achtung, Verdunkelungsgefahr!

Kommentar  27.08.2019
Von Peter Wayner
Wo läuft Ihr Code und auf welcher Hardware? Und wieso funktioniert gerade überhaupt nichts mehr? Wenn die Cloud zur Black Box wird.

Vor langer, langer Zeit war ein Server etwas, das Sie exklusiv besaßen. Gemeinsam mit Ihrem Team haben Sie nächtelang Spezifikationen gewälzt, Angebote eingeholt und analysiert. Beim Ausfüllen des Bestellformulars machte sich ausgiebige Vorfreude breit, bevor die neue "Wundermaschine" dann endlich mit Bedacht und Hingabe im Serverraum am Ende des Gangs installiert und getestet wurde. Ein Teil der Faszination lag dabei auch darin, dass Sie Ihre neue Hardware anfassen, ihre LED-Funktionsleuchten beobachten und sich vom beruhigenden Ton des Lüfters berieseln lassen konnten. Eventuell haben Sie sich ja sogar einmal dabei ertappt, wie Sie das Frontpanel Ihres Servers liebevoll mit dem feinen Zwirn Ihres Maßanzugs poliert haben.

Heutzutage haben Sie allerdings sehr wahrscheinlich eher keine Berührungspunkte mehr mit Ihrer Hardware. Sicher, einige Menschen klicken noch auf der Homepage eines Cloud-Anbieters herum, um eine "Instanz" zu schaffen - aber die meisten überlassen das Einrichten eines Servers den Script-Automatismen von Deployment Bots. Eventuell gönnen Sie sich auch noch ein paar Momente, um über die exakte Größe Ihrer Server-Instanz zu debattieren - aber spätestens hiernach übernimmt "Kollege Roboter" wieder.

Die Cloud bringt für Unternehmen viele Vorteile - sorgt aber auch dafür, dass viele Hardware-Details zu "dunklen Geheimnissen" werden.
Die Cloud bringt für Unternehmen viele Vorteile - sorgt aber auch dafür, dass viele Hardware-Details zu "dunklen Geheimnissen" werden.
Foto: maxi kore - shutterstock.com

Hardware "Marke Sorgenfrei"?

Die Entkoppelung von Ihrer Hardware verstärkt sich zudem immer weiter, je mehr das Buzzword "Serverless" an Fahrt aufnimmt. Natürlich ist damit nicht gemeint, dass gar kein Server mehr zum Einsatz kommt. Der Begriff meint lediglich, dass Sie sich ihren Kopf nicht mehr über diese "Kästen" zerbrechen müssen, in denen die Prozessoren "wohnen": Sie übermitteln lediglich Ihren Software Code an den Anbieter Ihres Vertrauens. Dieser kümmert sich dann darum, dass ein Chipsatz in irgendeiner Fabrikhalle diesen korrekt ausführt.

Diese mysteriösen Abläufe kommen enorm arbeits- und nervenschonenden Innovationen gleich. Es muss dabei auch nicht zwingend etwas Negatives sein, wenn die technischen Details im Verborgenen bleiben: So können Sie sich Gedanken über Dinge wie Speicherkonfigurationen, Laufwerks-Partitionierungen oder die Folgen eines zerstörten DVD-ROM-Laufwerks schlicht und ergreifend sparen. Das ist etwas Gutes - schließlich haben etliche Softwareentwickler lange und hart daran gearbeitet, agile Tools und Bots zu entwickeln, um Ihnen aufreibende Diskussions-Marathons im Meeting-Format und unerfreuliche Problem-Review-Sessions zu ersparen.

Allerdings kommt es beizeiten dazu, dass etwas zu viel Denkarbeit "unter den Teppich gekehrt" wird und zu viele (diskussionswürdige) Details einfach ausgespart werden - und zwar bevor Sie mit einem Mausklick einer gefühlten Trillion von AGBs in endlosen Vertragsdokumenten zustimmen, die ohnehin niemand jemals wirklich komplett liest. Die gute Nachricht ist, dass es auf die meisten dieser Details ohnehin nicht ankommt. Zumindest scheint sich niemand mehr Gedanken über diese Dinge zu machen - vielleicht auch, weil gekreuzte Finger bisher immer geholfen haben, beziehungsweise nichts passiert ist. Solange man beim Glücksspiel gewinnt, hört man ja auch nicht auf zu spielen.

Dennoch kann es sich durchaus als hilfreich erweisen, diese Details zu verinnerlichen - schließlich gibt es bekanntlich immer ein erstes Mal. Das gilt auch für Code, der nicht (mehr) funktioniert. Die Wahrscheinlichkeit, dass es dazu kommt, mag äußert gering sein - dennoch ist sie existent. Im Regelfall tritt ein solcher Umstand darüber hinaus immer zum denkbar ungünstigsten Zeitpunkt auf. Das soll nicht heißen, dass Sie nun paranoide Zustände bekommen und sich bis tief in die Nacht hinein wegen IT-Prozessen grämen müssen. Aber Sie sollten sich durchaus mit den dunklen Mythen moderner Hardware beschäftigen.

Wo steht der Server?

In der Cloud. Zumindest ist das in der Regel alles, was Sie über dessen physischen Standort wissen. Der Anbieter kann Ihnen erzählen, dass dieser sich in New York oder auch in Karachi befindet - sie müssen sich damit abfinden. In manchen Fällen können Sie sich sogar glücklich schätzen, wenn Sie erfahren, in welchem Land gehostet wird.

Ob Sie sich um die exakte Adresse des Standorts bemühen sollten? Wenn diese nicht bekannt ist, könnte man das auch als Security Feature einstufen: Wenn Sie selbst schon nicht den physischen Standort ihres Servers in Erfahrung bringen können, werden vermutlich auch kriminelle Hacker damit ihre Schwierigkeiten haben. Dabei ist es ja im Regelfall nicht so, dass Sie wie in alten Zeiten auf Serverraum-Besichtigungstour gehen möchten - vielleicht arbeiten Sie einfach in einem Unternehmen, das über den physischen Standort seiner Server informiert sein muss. Etwa, um Compliance- und Datenschutzanforderungen erfüllen zu können. Auch wenn es um steuerliche Angelegenheiten oder etwaige rechtliche Fragestellungen geht, kann der Server-Standort relevant sein. Nicht wenige Unternehmensentscheider bekommen von ihren Anwaltsteams genau solche Fragen gestellt und sollten diese Informationen dann auch parat haben.

Was kann die CPU?

Erinnern Sie sich noch an die Zeiten, als Sie überlegt haben, ob Sie auf den Chip der sechsten Generation setzen sollen oder ob es vielleicht doch irgendeinen Rechtefertigungsgrund gibt, sofort auf die neueste, siebte Prozessorgeneration zu setzen? Oder daran, wie Sie nächtelang über Benchmark-Tabellen gebrütet und Kosten durch Geschwindigkeit dividiert haben? Vielleicht hatten Sie auch Spaß daran, vor genau dem Kollegen beim Mittagessen über die Performanz der neuesten Chip-Generation zu prahlen, der gerade von den Erbsenzählern in der Finanzabteilung dazu verdonnert wurde, ein weiteres Jahr mit der alten Hardware zu arbeiten.

Heute stehen die Chancen gut, dass sie weder den Hersteller, noch das genaue Modell oder sonstige Details über ihre CPUs kennen. Die Cloud-Anbieter verkaufen Ihnen Speicherinstanzen mit kryptischen Namen wie "m1" oder "large", denen allerdings keine wirkliche Bedeutung zukommt. Unter Umständen haben "m1" und "m2" auch gar nichts miteinander zu tun, sondern heißen eben einfach so wie sie heißen. Aus Gründen. Oder durch Zufall.

In einigen Fällen kann Ihre Hardware allerdings zum Zünglein an der Waage werden: Einige Sicherheitslücken und Bugs betreffen lediglich bestimmte Prozessor-Modelle. Der sogenannte "Hidden God Mode" etwa greift nur bei den VIA C3 x86-CPUs. Darüber hinaus können Infos über Threading Models und Anzahl der Kerne auch hilfreich sein, um den eigenen Algorithmen Beine zu machen. Es bestehen dutzende solcher kleiner - und weniger kleiner - Problemstellungen. Wenn Sie also keine Details über die CPUs Ihrer Server bekommen, bleibt Ihnen nur, auf gekreuzte Finger zurückzugreifen und zu hoffen, dass Ihr Cloud-Anbieter nicht bloß beteuert, sich für Sie um alle auftretenden Probleme zu kümmern.

Welcher RAM-Speicher denn genau?

Bestimmt haben auch Sie sich in grauer Vorzeit darüber Gedanken gemacht, ob es sich wohl lohnt, auf den neuen, schnelleren Speicher umzusteigen, der wesentlich weniger fehleranfällig ist. Oder Sie haben darüber reüssiert, ob ein bestimmter RAM-Speicher für mehr Stabilität sorgt, als ein anderer. Anno dazumal wurde der Arbeitsspeicher in der Regel auch noch nach Hersteller ausgewählt - Markennamen und technologische Ansätze spielten ebenfalls eine wesentliche Rolle.

Heute wissen Sie einfach nicht, wie gut (oder schlecht) Ihre Hardware eventuell tatsächlich ist. Das ist nämlich eines der Dinge, um die sich die Spezialisten in Diensten ihres Cloud Providers gekümmert haben. Die Frage ist nur, ob sie das auch in der bestmöglichen Art und Weise getan haben. Die Chancen stehen hoch, dass Sie es nie herausfinden werden - vielleicht haben Sie mit Ausfällen zu kämpfen, weil der verwendete RAM nicht geeignet ist. Vielleicht liegt es aber auch nur an der mediokeren Qualität Ihres Programmcodes. Wer weiß das schon.