Turing Pi — cluster board for self-hosted applications and services.

Turing Pi — cluster board for self-hosted applications and services.

Turing Pi je řešení pro self-hosted aplikace postavené na principech rackových skříní v datovém centru, ale na kompaktní základní desce. Toto řešení je zaměřeno na budování místní infrastruktury pro místní vývoj a hostování aplikací a služeb. Obecně jde o něco jako AWS EC2, ale pro edge.

Jsme malý tým vývojářů, který se rozhodl vytvořit řešení pro budování bare-metal clusterů na edge a nazvali jsme projekt Turing Pi. Produkt začal jako „hobby“, ale nyní ho objednaly vývojové týmy v Red Hat, Rancher (SUSE), Toyota Connected, Sony, Electrolux, Facebook a shromažďujeme komunitu vývojářů pod 10K.

Ale všechno to začalo s objevem.

Objev produktu

Kdysi jsem udělal objev, že nic nevymýšlíme. Všechny věci, které v tomto světě existují, objevujeme. Objevujeme, že některé části lze kombinovat, čímž získáváme nové vlastnosti produktů, nebo objevujeme zákony a pak znovu kombinujeme. Nic nevymyslíme, ale můžeme objevit během výzkumu. Podle mého názoru je vynález výsledek neustálého pozorování, experimentování a hledání + kombinace znalostí.

V průběhu posledního desetiletí jsem pozoroval, jak se rozrůstá hnutí činovníků homelab (zdroj subreddit), self-hosted (zdroje subreddit a awesome-selfhosted), jednodeskové počítače, jak roste zájem o spouštění kontejnerů na jednodeskových počítačích typu Raspberry Pi, a roste hnutí, které shromažďuje clustery z jednodeskových počítačů. Pomalu se tam dostává i myšlenka Kubernetes. Již se objevila její lehká verze k3s zaměřená na Edge/IOT. Velká síť rychlého občerstvení Chick-fil-A byla jednou z prvních na světě, která umístila clustery Kubernetes do svých kuchyní. kubectl make me a sandwich.

Vidím to jako sněhovou kouli, jak se jedna technologie obaluje kolem druhé, čímž vytváří složitější systém. Přitom zde není žádný chaos, spíše to připomíná fraktál technologií. V jednom z dost složitých okamžiků mého života jsem viděl hodnotu v clusterech, které se skládají z jednodeskových počítačů, které budují nadšenci, a začal jsem pracovat na vytvoření clusterové desky.

Dnes je naše clusterová deska velmi jednoduchá a primárně zaměřená na ty, kteří mají rádi cloud native technologie, chtějí se učit nové věci a experimentovat.

Stavební bloky (Building Blocks)

Co tedy toto řešení představuje, v čem spočívá. Jde o to poskytnout konstruktor, stavební bloky (Building Blocks), jejichž prostřednictvím lze sestavit edge infrastrukturu levněji než na klasických serverech, mobilní bez těžkých kovových boxů, nenáročnou na speciální podmínky provozu, energeticky efektivní, standardizovanou z hlediska modulů a s možností rychlého škálování na desítky a stovky výpočetních uzlů (procesorů).

Klastrová deska (Clusterboard)

Mini ITX deska spojuje několik výpočetních modulů pomocí sítě na desce, poskytuje periferie a kontrolu nad moduly.

Výpočetní modul (Compute Module)

Deska ve formátu SO-DIMM obsahující procesor a operační paměť, volitelně flash paměť pro uchování operačního systému.

Turing Pi — cluster board for self-hosted applications and services.
Jedna z navrhovaných konfigurací verze Turing V2.

Turing Pi — cluster board for self-hosted applications and services.

Kombinací klastrové desky a výpočetních modulů je snadné vytvořit infrastrukturu například pro 20+ procesorů (příklady níže), tichou a s nízkou spotřebou energie. Samotná klastrová deska zvyšuje efektivitu využitého objemu. Příklady clusterů pro srovnání.

SBC based*
Turing Pi — cluster board for self-hosted applications and services.
24 CPU’s
Autor Afkham Azeez

Turing Pi based
Turing Pi — cluster board for self-hosted applications and services.
21 CPU’s
Autor th3st0rmtr00p3r

* SBC — Single Board Computer

Spoluzakladatel Rancher Labs a autor k3s, tento přístup ho nenechal chladným.

Turing Pi — cluster board for self-hosted applications and services.

Dále podrobněji o stavebních blocích.

Výpočetní Modul (Compute Module)

Pro ověření konceptu jsme vybrali Raspberry Pi Compute Module, což je ideální konfigurace pro začátek. Komunita RPi je aktivní, nejsou problémy se softwarem, samotný modul ve formátu SO-DIMM (6 x 3 cm) je cenově dostupný, obsahuje 4-jádrový CPU, 1 GB RAM a volitelně flash paměť 8, 16 nebo 32 GB pro OS a další systémové potřeby. Tento formát se často používá v průmyslových IoT řešeních.

Raspberry Pi 1/3/3+ Compute Module

Turing Pi — cluster board for self-hosted applications and services.

Ale model CM3 má i vážná omezení - max. 1 GB RAM a Ethernet přes USB HUB s maximální rychlostí až 100 Mbps. Proto druhá verze Turing bude podporovat Raspberry Pi 4 a až 8 GB operační paměti na modul. Níže příklad modulů Nvidia Jetson pro úlohy zrychleného výpočtu. Možná bude podpora v druhé verzi, pokud vyřešíme některé technické problémy, pak je možné mixovat moduly.

Nvidia Jetson Compute Modules

Turing Pi — cluster board for self-hosted applications and services.

V modulech se skrývá nejdůležitější možnost, která na první pohled není zřejmá. Možnost vytváření dalších modulů v podobném formátu s různými sestavami CPU, RAM a eMMC pro různé typy úloh od obecného výpočtu po strojové učení a intenzivní výpočty. Je to velmi podobné instancím AWS EC2, ale pouze pro edge. Přitom zůstává klastrová deska nezměněna nebo s drobnými úpravami.

Klastrová deska (Clusterboard)

Můžeme ji také nazvat základní deskou nebo mateřskou deskou, je to relativně nové zaměření a výrobců podobných řešení dnes není mnoho a stále jsou na začátku, mezi nimi Pine64, MiniNodes, Clover Pi, Bitscope Blade, PicoCluster (SBC clustery). Klastrová deska propojuje moduly sítí, zajišťuje napájení a poskytuje sběrnici pro řízení clustera (Cluster Management Bus), alespoň tuto sběrnici jsme se rozhodli přidat a zatím se zdá, že se ujala.

Přední
Turing Pi — cluster board for self-hosted applications and services.

Zadní
Turing Pi — cluster board for self-hosted applications and services.

Šířka pásma zadní desky 12 Gbps
SD sloty pro moduly bez eMMC, například, můžete mít pár modulů se SD pro rychlý přístup k datům uzlu

Základem klastrové desky je čip přepínače pro zajištění síťového spojení modulů a připojení k externí síti. V aktuální verzi používáme unmanaged switch, protože nebyl čas provádět důkladný R&D, ale pro druhou verzi jsme vybrali docela solidní managed switch. Je možná konfigurace v režimu ‚master uzel jako router‘ pro distribuci sítě na desku, pokud je zapotřebí vyšší úroveň zabezpečení a izolace pracovníků od externího přístupu, v takovém případě je také nutné na master uzlu mít DHCP server.

Použití

Aktuální verze je experimentální a prezentujeme ji jako řešení pro začátečníky, abychom prozkoumali, co jsou clustery, pracovali se softwarem nebo jako testování hypotéz v organizacích, hledání nových nápadů, zkrátka taková Lite verze.

Pro začátek doporučujeme sérii od skvělého Jeffa Geerlinga, který se o nás dozvěděl na Y Combinator, je autorem bestseleru Ansible for DevOps. Byl tak inspirován, že vytvořil šestisériový přehled od myšlenky klastrování obecně až po praktické příklady práce s deskou, studium Kubernetes a jaký software je možné instalovat.

Série o instalaci k3s na cluster

Přehrát video

A vůbec doporučuji začít od první, tam je obecně o klastrování a Kubernetes dostupným jazykem. A také trochu obrázků od komunity.

Turing Pi — cluster board for self-hosted applications and services.

Co dál?

Za prvé, doufám, že to bylo zajímavé. Je to zcela originální obsah, pokus o pohled za obzor. Zadruhé, plánuji napsat druhou část o návrhu Turing V2. Jak probíhal hledání produktu, logické úvahy, identifikace hlavních vlastností, které jsou důležité. Článek bude obsahovat skici produktu od nejranějších po finální. Druhý článek bude obzvlášť zajímavý pro produktové manažery, kteří odpovídají za produkty a jejich rozvoj ve firmách.

A pravděpodobně to skutečně bude dlouhé čtení.

Zdroj: habr.com

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster