Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Turing Pi je rješenje za self-hosted aplikacije temeljeno na principu rack kabineta u data centru, ali na kompaktnom matičnom ploči. Rješenje je usmjereno na izgradnju lokalne infrastrukture za lokalni razvoj i hosting aplikacija i servisa. Ukratko, to je kao AWS EC2, ali za edge.

Mi smo mali tim developera koji je odlučio stvoriti rješenje za izgradnju bare-metal klastera na edge-u i nazvali smo projekt Turing Pi. Proizvod je započeo kao improvizacija, međutim, sada su ga naručili razvojni odjeli u Red Hat, Rancher (SUSE), Toyota Connected, Sony, Electrolux, Facebook, i prikuplja zajednicu developera od gotovo 10.000.

Ali sve je počelo s otkrićem.

Otkriće proizvoda

Jednom sam za sebe otkrio da ništa ne izmišljamo. Sve stvari koje postoje u ovom svijetu, mi otkrivamo. Otkrivamo da se neki dijelovi mogu kombinirati zajedno, dobivajući nove osobine proizvoda ili otkrivamo zakone i onda ponovo kombiniramo. Ništa se ne može izmisliti, ali se može otkriti tijekom istraživanja. Po mom mišljenju, izum je rezultat stalnog promatranja, eksperimentiranja i traženja + kombinacije znanja.

Tijekom posljednjeg desetljeća, promatrao sam kako se širi amaterski pokret homelab (resurs subreddit), self-hosted (resursi subreddit i awesome-selfhosted), jednoplatni računari, kako raste interes za pokretanje kontejnera na jednoplatnim računarima poput Raspberry Pi, raste pokret koji okuplja klastere od jednoplatnih računara. Postepeno se tu širi i ideja Kubernetes-a. Već je pojavljena njegova lagana verzija k3s usmjerena na Edge/IoT. Velika mreža restorana brze hrane Chick-fil-A jedni su od prvih na svijetu postavili Kubernetes klastere u svojim kuhinjama. kubectl napravi mi sendvič.

To vidim kao snježnu grudvu, kako se jedna tehnologija omotava oko druge, stvarajući složeniji sustav. Pri tome nema nikakvog kaosa, više nalikuje na fraktal tehnologija. U jednom od prilično teških trenutaka u mom životu, vidio sam vrijednost klastera koji su sastavljeni od jednoplatnih računara koje razvijaju hobisti i počeo sam raditi na stvaranju klasterne ploče.

Danas je naša klasterna ploča vrlo jednostavna i prvenstveno je usmjerena na one koji vole cloud native tehnologije, istraživati novo, eksperimentirati.

Građevinski blokovi (Building Blocks)

Dakle, što je rješenje i koja mu je suština? Suština je pružiti konstruktor, građevne jedinice (Building Blocks) od kojih se može sastaviti edge infrastruktura jeftinije nego na klasičnim serverima, mobilne bez glomaznih metalnih kutija, neovisne o posebnim uvjetima rada poput servera, energetski učinkovite, standardizirane u smislu modula i s mogućnošću brzog skaliranja na desetke i stotine računalnih čvorova (procesora).

Klasterna ploča (Clusterboard)

Mini ITX ploča spaja nekoliko računalnih modula putem unutarnje mreže, omogućava periferne sučelje i kontrolu nad modulima.

Računalni modul (Compute Module)

Ploča u SO-DIMM formatu koja sadrži procesor i radnu memoriju, opcionalno flash memoriju za pohranu operativnog sustava.

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge
Jedna od projektiranih konfiguracija verzije Turing V2

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Kombiniranjem klasterne ploče i računalnih modula lako je stvoriti infrastrukturu, primjerice, sa 20+ procesora (primjeri u nastavku), tiha i s niskom potrošnjom energije. Sama klasterna ploča povećava učinkovitost iskorištenog volumena. Primjeri klastera za usporedbu.

SBC bazirano*
Turing Pi — klasterska ploča za self-hosted aplikacije i usluge
24 CPU-a
Autor Afkham Azeez

Turing Pi bazirano
Turing Pi — klasterska ploča za self-hosted aplikacije i usluge
21 CPU-a
Autor th3st0rmtr00p3r

* SBC — Računar na jednoj ploči (Single Board Computer)

Su-osnivača Rancher Labs i autora k3s ovaj pristup nije ostavio ravnodušnim.

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Dalje detaljnije o građevnim jedinicama.

Računalni Modul (Compute Module)

Za provjeru koncepta odabrali smo Raspberry Pi Compute Module, idealna konfiguracija za početak. RPi zajednica je aktivna, nema problema sa softverom, a sam modul u SO-DIMM formatu (6 x 3 cm) je povoljan, sadrži 4-jezgreni CPU, 1 GB RAM-a i opcionalno flash memoriju od 8, 16 ili 32 GB za OS i druge sistemske potrebe. Sličan format često se koristi u industrijskim IoT rješenjima.

Raspberry Pi 1/3/3+ Compute Module

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

No, model CM3 ima i ozbiljna ograničenja — max. 1 GB RAM-a i Ethernet preko USB HUB-a s maksimalnom brzinom do 100 Mbps. Stoga će druga verzija Turing podržavati Raspberry Pi 4 i do 8 GB radne memorije po modulu. U nastavku je primjer Nvidia Jetson modula za zadatke ubrzanog računalstva. Moguće je da će ih podržati druga verzija, ako riješimo neka tehnička pitanja, tada se mogu miješati moduli.

Nvidia Jetson Računalni Moduli

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

U modulima se skriva najvažnija mogućnost koja na prvi pogled nije očita. Mogućnost stvaranja drugih modula u sličnom formatu s različitim skupovima CPU, RAM i eMMC, za različite vrste zadataka od općeg računarstva do intenzivnih proračuna strojno učenja. To je vrlo slično AWS EC2 instancama, ali samo za edge. Pri tome, klasterska ploča ostaje nepromijenjena ili s manjim promjenama.

Klasterna ploča (Clusterboard)

Također se može nazvati matičnom pločom ili osnovnom pločom, što je prilično nova orijentacija, a proizvođača sličnih rješenja danas nema mnogo i još su uvijek na početnom nivou, među njima Pine64, MiniNodes, Clover Pi, Bitscope Blade, PicoCluster (SBC klasteri). Klasterska ploča povezije module mrežom, osigurava napajanje i daje sabirnicu za upravljanje klasterom (Cluster Management Bus), barem smo ovu sabirnicu odlučili dodati i čini se da se uklopila.

Prednja strana
Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Stražnja strana
Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Propusnost stražnje ploče 12 Gbps
SD slotovi za modules bez eMMC, na primjer, mogu se držati dva modula s SD za brzi pristup podacima čvora

U osnovi klasterske ploče leži čip prekidača za osiguranje mrežne povezanosti modula i izlaza u vanjsku mrežu. U trenutnoj verziji koristimo unmanaged switch jer nije bilo vremena provesti sveobuhvatan R&D, ali za drugu verziju odabrali smo dobar managed switch. Moguće je konfigurirati u režimu ‘glavni čvor kao usmjerivač’ za davanje mreže na ploču, ako je potrebna viša razina sigurnosti i izolacije radnika od vanjskog pristupa, u tom slučaju na glavnom čvoru također treba držati DHCP server.

Primjena

Trenutna verzija je eksperimentalna i pozicioniramo je kao rješenje za početnu razinu kako bismo istražili što su klasteri, rad s softverom ili kao provjera hipoteza u organizacijama, traženje novih ideja, općenito neka Lite verzija.

Za početak preporučujemo seriju sjajnog Jeffa Geerlinga, koji je čuo za nas na Y Combinatoru, on je autor bestselera Ansible for DevOps. Tako se inspirirao da je napravio šestoserični pregled počevši od ideje klasterizacije u cjelini do praktičnih primjera rada s pločom, učenja Kubernetes-a i kojeg softvera se može instalirati.

Serija o instalaciji k3s na klaster

Pogledajte video

Uopće preporučujem gledati od prve, tu se u cjelini govori o klasterizaciji i Kubernetes-u na pristupačan način. I malo slika iz zajednice.

Turing Pi — klasterska ploča za self-hosted aplikacije i usluge

Što dalje?

Prvo, jako se nadam da je bilo zanimljivo. Ovo je potpuno autorski sadržaj, pokušaj da zavirim iza horizonta. Drugo, planiram napisati drugi deo o projektovanju Turing V2. Kako se odvijalo pretraživanje proizvoda, logičke analize, pronalaženje ključnih osobina koje su važne. Članak će sadržavati skice proizvoda od najranijih do finalnih. Drugi članak će biti posebno zanimljiv proizvodnim menadžerima koji su odgovorni za proizvode i njihov razvoj u kompanijama.

I najverovatnije će to biti stvarno long read.

Izvor: habr.com

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster