Laut einer IDC-Studie sind die drei wichtigsten Auslöser für den Bedarf an Cloud-Services: wachsende Datenmengen, begrenzte IT-Budgets und der zunehmende Einsatz von Initiativen zur digitalen Transformation. Der Wechsel zu Public-Cloud-Anbietern wie AWS bietet viele Vorteile für Unternehmen, kommt aber nicht ohne Risiken und Schwachstellen, wenn es um Daten geht.
Veeam hat mehrere kleine eBooks in Comicform bereitgestellt, die auf unterhaltsame Weise Probleme wie Ransomware, Datenwucher, Cloud-Kosten oder Datenverluste veranschaulicht.
Dies wird ein mehrteiliger Artikel rund um das Produkt VMware Bitfusion. Ich werde eine Einführung in die Technik geben, wie man einen Bitfusion Server einrichtet und wie man dessen Dienste aus Kubernetes Pods nutzen kann.
Teil 1 : Eine Einführung in Bitfusion (dieser Artikel)
Im August 2019 übernahm VMware BitFusion, einen führenden Anbieter im Bereich der GPU-Virtualisierung. Bitfusion bietet eine Softwareplattform, die bestimmte physische Ressourcen von den Compute-Servern entkoppelt. Es ist nicht für Grafikdarstellung oder Rendering konzipiert, sondern sondern vielmehr für Machine-Learning (ML) und Künstliche Intelligenz (AI). Bitfusion Systeme (Client und Server) laufen Stand heute nur auf ausgewählten Linux Systemen und unterstützen ML-Anwendungen wie beispielsweise TensorFlow.
Warum sind GPU für ML/AI Anwendungen so wichtig?
Prozessoren (Central Processing Unit / CPU) in aktuellen Systemen sind darauf optimiert, serielle Tasks in möglichst kurzer Zeit abzuarbeiten und dabei schnell zwischen Tasks zu wechseln. GPU (Graphics Processor Unit) dagegen können sehr viele Rechenoperation parallel bearbeiten. Im Namen der GPU steckt die ursprüngliche Anwendung. Die CPU sollte durch GPU bei der Grafikdarstellung entlastet werden, indem sämtliche Render- und Polygonberechnungen auf die GPU ausgelagert wurden. Mitte der 90er Jahre konnten einige 3D-Spiele noch wahlweise mit CPU oder GPU die Darstellung rendern. Schon damals ein Unterschied wie Tag und Nacht. GPU konnten die notwendigen Polygonberechnungen viel schneller und flüssiger berechnen.
Eine schöne Gegenüberstellung von GPU- und CPU-Architektur bescheibt Niels Hagoort in seinem Blogpost “Exploring the GPU Architecture“.
Aufgrund ihrer Architektur sind GPU jedoch nicht nur für Grafikanwendung ideal, sondern für alle Anwendungen, bei denen sehr viele arithmetische Operationen parallel ausgeführt werden müssen. Dazu gehören Blockchain, ML, AI und jede Art von Datenanalyse (Numbercrunching).
Bei der Bereitstellung von Arbeitslasten kann es zu Warnungen oder Störungen kommen. Kubernetes Pods bilden hier keine Ausnahme. Probleme lassen sich leichter lösen, indem man einen Blick in die Logs wirft. Doch wie findet man die neuesten Logs eines bestimmten Pods?
Das Basiskommando hierfür lautet:
kubectl get events
Wir können die Ausgabe nach Timestamp sortieren und auf einen bestimmten Pod filtern.
kubectl get events --sort-by=.metadata.creationTimestamp -n <podname>
kubectl get events --sort-by=.metadata.creationTimestamp -n <podname> | nl
Live Anzeige der Events
In der Linux Welt gibt es das tail Kommando um die letzten (neuesten) Einträge einer Logdatei anzuzeigen. In Kubernetes lautet das analoge Kommando
Ich möchte hier ein nützliches neues Feature vorstellen, das seit vSphere 7 Update 2 verfügbar ist. Es wird bei der Fülle an Neuerungen leicht übersehen, leistet aber sehr gute Dienste im Vorfeld eines vCenter Updates.
Voraussetzung für den Update Planner ist die Teilnahme am Customer Experience Improvement Program (CEIP).
Das erste Anzeichen für ein neues vCenter Updates ist eine Benachrichtigung am oberen Rand des vSphere-Clients.
Durch Klick auf “View Updates” gelangt man direkt in den Update Planner. Dieser ist auch über das Menü erreichbar. Dazu wählt man in der Ansicht Hosts & Clusters das vCenter aus und selektiert in der Menüleiste oben rechts “Updates” > vCenter Server > Update Planner.
Es werden alle aktuell verfügbaren Updates angezeigt. Um unten dargestellten Fall ist das vCenter bereits auf Stand 7.0 Update 2. Daher wird nur ein mögliches Update gelistet. Sind mehrere mögliche Updates vorhanden kann der Update Planner die Kompatibilität gegen alle diese Updates prüfen. Dazu wählt man den Radiobutton des gewünschten Updates aus (rote Markierung).
Ist ein Update ausgwählt, so wird das Aktionsfeld “Generate Report” blau und zeigt die zwei möglichen Unterpunkte “Interoperability” und “Pre-Update Checks“.
Interoperabilty Check
Der Interoperability Ckeck prüft neben den ESXi Hosts auch die Kompatibilität zu weiteren im vCenter registrierten VMware Produkten.