Garden v0.10.0: Vaše prijenosno računalo ne treba Kubernetes

Bilješka. prev.: S Kubernetes entuzijastima iz projekta Vrt upoznali smo se na nedavnom događaju KubeCon Europe 2019gdje su na nas ostavili dobar dojam. Ovaj njihov materijal, napisan na aktualnu tehničku temu i s primjetnim smislom za humor, tomu je jasna potvrda, pa smo ga odlučili prevesti.

On govori o glavnom (istoimenom) proizvod tvrtka čija je ideja automatizirati tijek rada i pojednostaviti razvoj aplikacija u Kubernetesu. Da biste to učinili, uslužni program vam omogućuje jednostavnu (doslovno jednom naredbom) implementaciju novih promjena napravljenih u kodu u dev cluster, a također pruža zajedničke resurse / predmemorije za ubrzanje sklapanja i testiranja koda od strane tima. Prije dva tjedna Garden je bio domaćin izdanje 0.10.0, u kojem je postalo moguće koristiti ne samo lokalni Kubernetes klaster, već i udaljeni: ovaj je članak posvećen ovom događaju.

Zadnje što volim raditi je raditi s Kubernetesom na prijenosnom računalu. Pilot troši procesor i bateriju, hladnjaci se vrte bez prestanka i teško ga je održavati.

Garden v0.10.0: Vaše prijenosno računalo ne treba Kubernetes
Stock fotografija u temi za pojačani učinak

Minikube, kind, k3s, Docker Desktop, microk8s itd. — izvrsni alati osmišljeni kako bi korištenje Kubernetesa učinili što praktičnijim, i hvala im na tome. Ozbiljno. No kako god na to gledali, jedno je jasno: Kubernetes nije dizajniran za rad na mom prijenosnom računalu. A samo prijenosno računalo nije dizajnirano za rad s klasterom spremnika razbacanih po slojevima virtualnih strojeva. Jadnik se maksimalno trudi, ali mu se to očito ne sviđa, negodovanje pokazuje urlikom hladnjaka i pokušava opeći bedra kad ga nesmotreno spustim na koljena.

Recimo: laptop - laptop.

Vrt je razvojni alat u istoj niši kao Skaffold i Draft. Pojednostavljuje i ubrzava razvoj i testiranje Kubernetes aplikacija.

Od samog početka rada na Gardenu, prije nekih 18 mjeseci, to smo znali lokalni Razvoj distribuiranih sustava je privremeno rješenje, tako da Garden ima puno fleksibilnosti i čvrste temelje.

Sada smo spremni podržati i lokalna i udaljena Kubernetes okruženja. Postao je mnogo lakši za rad: montaža, implementacija i testiranje sada se mogu provesti u udaljenom klasteru.

Kratko rečeno:

Uz Garden v0.10 možete potpuno zaboraviti na lokalni Kubernetes klaster i još uvijek dobiti brz odgovor na promjene u kodu. Sve je ovo besplatno i otvorenog koda.

Garden v0.10.0: Vaše prijenosno računalo ne treba Kubernetes
Uživajte u istoj pogodnosti u lokalnim i udaljenim okruženjima

Dobili ste pozornost?

I drago mi je zbog toga, jer imamo mnogo više zanimljivih značajki! Opća upotreba razvojnih klastera ima šire implikacije, posebno za timove za suradnju i CI cjevovode.

Kak tak?

Prije svega, intra-cluster builder - bio to standardni Docker demon ili Kaniko - kao i unutar-cluster registar se dijele za cijeli klaster. Vaš tim može dijeliti razvojni klaster s predmemorijama i slikama dostupnim svim programerima. Budući da Garden dodjeljuje oznake slikama na temelju izvornih hashova, oznake i slojevi definirani su jedinstveno i dosljedno.

To znači da nakon što programer stvori sliku, ona postaje dostupan cijelom timu. Dan za danom preuzimamo iste osnovne slike i izrađujemo iste nadogradnje na računalima. Zanima vas koliko se prometa i struje gubi?..

Isto se može reći i za testove: njihovi rezultati dostupni su cijelom klasteru i svim članovima tima. Ako je jedan od programera testirao određenu verziju koda, nema potrebe za ponovnim pokretanjem istog testa.

Drugim riječima, ne samo da ne trebate pokretati minikube. Ovaj skok utire put vašem timu puno mogućnosti optimizacije - nema više nepotrebnih nadogradnji i testiranja!

Što kažete na CI?

Većina nas je navikla na činjenicu da su CI i lokalni razvoj dva odvojena svijeta koja se moraju zasebno konfigurirati (i ne koriste zajedničku predmemoriju). Sada ih možete kombinirati i riješiti se viška:

Možete pokrenuti iste naredbe u CI-ju i tijekom razvoja, kao i koristiti jedno okruženje, predmemorije i rezultate testiranja.

U biti, vaš CI se pretvara u razvojnog bota koji radi u istom okruženju kao i vi.

Garden v0.10.0: Vaše prijenosno računalo ne treba Kubernetes
Elementi sustava; besprijekoran razvoj i testiranje

Možete značajno pojednostaviti konfiguracije CI cjevovoda. Da biste to učinili, samo pokrenite Garden iz CI-ja za izgradnju, testiranje i implementaciju. Budući da vi i CI koristite isto okruženje, mnogo je manja vjerojatnost da ćete naići na probleme s CI-jem.

Kopanje po nebrojenim redovima konfiguracija i skripti, zatim guranja, čekanja, nadanja i beskrajna ponavljanja... Sve je to prošlost. Ti se samo razvijaš. Bez dodatnih pokreta.

I da razjasnimo stvari: kada ste vi ili neki drugi član tima napravili ili testirali nešto s Gardenom, ista se stvar dogodila za CI. Ako niste ništa promijenili od pokretanja testa, tada ne morate pokretati testove (ili čak međugradnje) za CI. Garden sve radi sam, a zatim prelazi na druge zadatke kao što je postavljanje okruženja prije pokretanja, guranje artefakata i tako dalje.

Zvuči primamljivo. Kako probati?

Dobrodošli u naše GitHub spremište! Instalirajte Garden i igrajte se s primjerima. Za one koji već koriste Garden ili ga žele bolje upoznati nudimo Udaljeni vodič za Kubernetes. Pridružite nam se na kanalu #vrt u Slack Kubernetesuako imate pitanja, nedoumica ili samo želite razgovarati. Uvijek smo spremni pomoći i pozdravljamo povratne informacije korisnika.

PS od prevoditelja

Uskoro ćemo objaviti i recenziju korisnih alata za programere aplikacija koji rade u Kubernetesu, koja osim Gardena uključuje i druge zanimljive projekte ... U međuvremenu, pročitajte i na našem blogu:

Izvor: www.habr.com

Dodajte komentar