
Turing Pi ist eine Lösung für selbst gehostete Anwendungen, die auf dem Prinzip von Rack-Racks in einem Rechenzentrum basiert, nur auf einem kompakten Motherboard. Die Lösung konzentriert sich auf den Aufbau einer lokalen Infrastruktur für die lokale Entwicklung und das Hosting von Anwendungen und Diensten. Im Allgemeinen ist es wie AWS EC2, nur für Edge.
Wir, ein kleines Entwicklerteam, beschlossen, eine Lösung für den Aufbau von Bare-Metal-Clustern in Edge zu entwickeln und nannten das Projekt Turing Pi. Das Produkt begann als Scratch-Projekt, aber jetzt wurde es zum Testen ihrer Konzepte von Entwicklungsabteilungen bei Red Hat, Rancher (SUSE), Toyota Connected, Sony, Electrolux, Facebook und einer Zielgruppe von Entwicklern unter 10 Jahren bestellt rekrutiert werden.
Aber alles begann mit der Entdeckung.
Produktentdeckung
Es war einmal, als ich die Entdeckung machte, dass wir nichts erfinden. Wir entdecken alles, was auf dieser Welt existiert. Wir entdecken, dass einige Teile miteinander kombiniert werden können, um neue Eigenschaften von Produkten zu erhalten, oder wir entdecken Gesetze und kombinieren sie dann erneut. Man kann sich nichts einfallen lassen, aber man kann es bei der Recherche entdecken. Meiner Meinung nach ist eine Erfindung das Ergebnis ständiger Beobachtung, Experimente und Suche + einer Kombination aus Wissen.
Im letzten Jahrzehnt habe ich beobachtet, wie die Amateur-Homelab-Bewegung an Dynamik gewann (Quelle). ), selbstgehostet (Ressourcen и ), Einplatinencomputer: Da das Interesse an der Ausführung von Containern auf Einplatinencomputern wie dem Raspberry Pi wächst, gibt es eine wachsende Bewegung, Cluster von Einplatinencomputern zusammenzustellen. Die Idee von Kubernetes kommt nach und nach dorthin. Die leichtgewichtige Version k3s, die sich auf Edge/IoT konzentriert, ist bereits erschienen. Die große Fast-Food-Kette Chick-fil-A ist eine der ersten weltweit, die Kubernetes-Cluster in ihren Küchen einsetzt .
Ich betrachte es als einen Schneeball, bei dem sich eine Technologie um eine andere wickelt und so ein komplexeres System entsteht. Gleichzeitig herrscht kein Chaos, sondern eher ein Fraktal aus der Technik. In einem für mich eher schwierigen Moment meines Lebens erkannte ich den Wert von Clustern, die von Amateurentwicklern aus Einplatinencomputern zusammengebaut werden, und begann mit der Arbeit an der Entwicklung einer Clusterplatine.
Heute ist unser Cluster-Board sehr einfach gehalten und richtet sich vor allem an diejenigen, die Cloud-Native-Technologien lieben, Neues lernen und experimentieren.
Bausteine
Was ist also die Lösung, was ist das Wesentliche? Es geht darum, einen Konstrukteur bereitzustellen, Bausteine (Building Blocks), aus denen man Edge-Infrastruktur günstiger als auf klassischen Servern zusammenbauen kann, mobil ohne sperrige Metallboxen, anspruchslos für besondere Betriebsbedingungen wie Serverräume, energieeffizient, standardisiert in der Terminologie von Modulen und mit der Fähigkeit zur schnellen Skalierung über Dutzende oder Hunderte von Rechenknoten (Prozessoren).
Clusterboard
Das Mini-ITX-Board verbindet mehrere Rechenmodule über ein integriertes Netzwerk, bietet Peripherieschnittstellen und Kontrolle über die Module
Rechenmodul
Eine Platine im SO-DIMM-Formfaktor, die einen Prozessor und RAM enthält, optional Flash-Speicher zur Speicherung des Betriebssystems

Eine der geplanten Konfigurationen für Turing V2

Durch die Kombination eines Cluster-Boards und Rechenmodulen lässt sich ganz einfach eine Infrastruktur für beispielsweise 20+ Prozessoren (Beispiele unten) erstellen, geräuschlos und mit geringem Stromverbrauch. Die Clusterplatine selbst erhöht die Effizienz des genutzten Volumens. Beispiele für Cluster zum Vergleich
SBC-basiert*

24 CPUs
Gepostet von Afkham Azeez
Basierend auf Turing Pi

21 CPUs
Autor
* SBC – Einplatinencomputer
Dem Mitbegründer von Rancher Labs und Autor von k3s war dieser Ansatz nicht gleichgültig.

Lesen Sie weiter unten mehr über Bausteine.
Rechenmodul
Für den Proof of Concept haben wir uns für das Raspberry Pi Compute Module entschieden – das ist die ideale Konfiguration für den Anfang. Die RPi-Community ist aktiv, es gibt keine Probleme mit der Software, das Modul selbst ist im SO-DIMM-Format (6 x 3 cm), ist erschwinglich, enthält an Bord eine 4-Kern-CPU, 1 GB RAM und optionalen Flash-Speicher 8, 16 oder 32 GB für Betriebssystem und andere Systemanforderungen. Dieser Formfaktor wird häufig in industriellen IoT-Lösungen verwendet.
Raspberry Pi 1/3/3+ Rechenmodul

Aber auch das CM3-Modell hat gravierende Einschränkungen – max. 1 GB RAM und Ethernet über USB-HUB mit einer maximalen Geschwindigkeit von bis zu 100 Mbit/s. Daher wird die zweite Version von Turing Raspberry Pi 4 und bis zu 8 GB RAM pro Modul unterstützen. Nachfolgend finden Sie ein Beispiel für Nvidia Jetson-Module für Accelerated Computing-Aufgaben. Vielleicht werden sie in der zweiten Version unterstützt. Wenn wir einige technische Probleme lösen, können wir Module mischen.
Nvidia Jetson-Rechenmodule

Die Module enthalten das wichtigste Feature, das nicht auf den ersten Blick ersichtlich ist. Die Möglichkeit, andere Module in einem ähnlichen Formfaktor mit einem anderen Satz an CPU, RAM und eMMC für verschiedene Arten von Aufgaben zu erstellen, von allgemeinem Rechnen bis hin zu maschinenlernintensivem Computing. Dies ist den AWS EC2-Instanzen sehr ähnlich, jedoch nur für Edge. In diesem Fall bleibt die Clusterplatine unverändert oder mit geringfügigen Änderungen.
Clusterboard
Es kann auch als Motherboard oder Basisplatine bezeichnet werden, eine ziemlich neue Richtung und heute gibt es nicht viele Hersteller solcher Lösungen und sind immer noch recht auf der Einstiegsebene, darunter Pine64, MiniNodes, Clover Pi, Bitscope Blade, PicoCluster (SBC-Cluster). ). Das Cluster-Board verbindet die Module mit einem Netzwerk, liefert Strom und stellt einen Cluster-Management-Bus (Cluster Management Bus) bereit. Zumindest haben wir uns entschieden, diesen Bus hinzuzufügen, und er scheint sich etabliert zu haben.
Vorderreifen

Zurück

Backplane-Bandbreite 12 Gbit/s
SD-Steckplätze für Module ohne eMMC, zum Beispiel können Sie ein paar Module mit SD behalten, um schnell auf Knotendaten zuzugreifen
Das Cluster-Board basiert auf einem Switch-Chip, um die Netzwerkverbindung von Modulen und den Zugriff auf ein externes Netzwerk sicherzustellen. In der aktuellen Version verwenden wir einen nicht verwalteten Switch, weil Es blieb keine Zeit für umfassende Forschungs- und Entwicklungsarbeiten, aber für die zweite Version haben wir uns für einen gut verwalteten Switch entschieden. Es ist möglich, ihn im Modus „Masterknoten als Router“ zu konfigurieren, um das Netzwerk an die Platine zu verteilen; dies ist der Fall, wenn ein höheres Maß an Sicherheit und Isolation der Mitarbeiter vor Zugriffen von außen erforderlich ist. In diesem Fall ist es auch erforderlich, dies beizubehalten ein DHCP-Server auf dem Masterknoten.
Anwendung
Die aktuelle Version ist experimentell und wir positionieren sie als Einstiegslösung, um zu lernen, was Cluster sind, mit der Software zu arbeiten oder um Hypothesen in Organisationen zu testen und nach neuen Ideen zu suchen. Im Allgemeinen handelt es sich hierbei um eine Lite-Version.
Zum Einstieg empfehlen wir eine Serie des wunderbaren Jeff Girling, der über uns bei Y Combinator gelesen hat und Autor des Bestsellers „Ansible for DevOps“ ist. Er war so begeistert, dass er einen 6-teiligen Testbericht verfasste, der von der Idee des Clusterings im Allgemeinen bis hin zu praktischen Beispielen für die Arbeit mit dem Board, dem Studium von Kubernetes und der installierbaren Software reichte
Serie über die Installation von k3s auf einem Cluster

Im Allgemeinen empfehle ich, den ersten Teil anzuschauen, dort geht es allgemein um Clustering und Kubernetes in einer zugänglichen Sprache. Und ein paar Bilder aus der Community

Was kommt als nächstes?
Zunächst einmal hoffe ich wirklich, dass es interessant war. Das ist absolut origineller Inhalt, ein Versuch, über den Tellerrand hinauszuschauen. Zweitens habe ich vor, einen zweiten Teil über das Design von Turing V2 zu schreiben. Wie die Suche nach dem Produkt ablief, logische Urteile, die Suche nach den wichtigsten Eigenschaften, die wichtig sind. Der Artikel enthält Produktskizzen von den ersten bis zu den letzten. Der zweite Artikel ist vor allem für Produktwissenschaftler interessant, die in Unternehmen für Produkte und deren Entwicklung verantwortlich sind.
Und höchstwahrscheinlich wird es eine wirklich lange Lektüre geben.
Source: habr.com
