Garden v0.10.0: jÅ«su klēpjdatoram nav nepiecieÅ”ams Kubernetes

Piezīme. tulk.: Ar Kubernetes entuziastiem no projekta Dārzs mēs tikāmies nesenā pasākumā KubeCon Europe 2019, kur viņi uz mums atstāja patīkamu iespaidu. Šis viņu materiāls, kas rakstīts par aktuālu tehnisku tēmu un ar manāmu humora izjūtu, tam ir nepārprotams apliecinājums, un tāpēc nolēmām to iztulkot.

ViņŔ runā par galveno (ar tādu paÅ”u nosaukumu) produkts uzņēmums, kura ideja ir automatizēt darbplÅ«smas un vienkārÅ”ot lietojumprogrammu izstrādi Kubernetes. Lai to izdarÄ«tu, utilÄ«ta ļauj viegli (burtiski ar vienu komandu) izvietot jaunas izmaiņas kodā izstrādātāju klasterÄ«, kā arÄ« nodroÅ”ina koplietotus resursus/keÅ”atmiņas, lai komanda paātrinātu koda izveidi un testÄ“Å”anu. Pirms divām nedēļām Garden uzņēma izlaidums 0.10.0, kurā kļuva iespējams izmantot ne tikai vietējo Kubernetes klasteru, bet arÄ« attālo: tas ir notikums, kam Å”is raksts ir veltÄ«ts.

Mana vismazākā lieta, ko darīt, ir darbs ar Kubernetes klēpjdatorā. "Stūrmanis" apēd savu procesoru un akumulatoru, liek dzesētājiem bez pārtraukuma griezties, un to ir grūti uzturēt.

Garden v0.10.0: jÅ«su klēpjdatoram nav nepiecieÅ”ams Kubernetes
Fonda fotogrāfija motīvā, lai iegūtu papildu efektu

Minikube, kind, k3s, Docker Desktop, microk8s utt. - izcili rÄ«ki, kas radÄ«ti, lai Kubernetes lietoÅ”ana bÅ«tu pēc iespējas ērtāka, un paldies viņiem par to. Nopietni. Bet neatkarÄ«gi no tā, kā skatās, viens ir skaidrs: Kubernetes nav piemērots darbam ar manu klēpjdatoru. Un pats klēpjdators nav paredzēts darbam ar konteineru kopu, kas izkaisÄ«ta pa virtuālo maŔīnu slāņiem. NabadziņŔ cenÅ”as, bet nepārprotami nepatÄ«k Ŕī nodarbe, izrādot savu neapmierinātÄ«bu ar dzesētāju gaudoÅ”anu un cenÅ”oties apdedzināt augÅ”stilbus, kad es viņu neapdomÄ«gi nolieku uz ceļiem.

Teiksim: klēpjdators - klēpjdators.

Dārzs ir izstrādātājiem paredzēts rÄ«ks, kas ieņem tādu paÅ”u niÅ”u kā Skaffold un Draft. Tas vienkārÅ”o un paātrina Kubernetes lietojumprogrammu izstrādi un testÄ“Å”anu.

No brīža, kad sākām strādāt pie Garden, apmēram pirms 18 mēneÅ”iem, mēs to zinājām vietējais SadalÄ«to sistēmu izstrāde ir pagaidu risinājums, tāpēc dārzā ir iebÅ«vēta ievērojama elastÄ«ba un stabils pamats.

Tagad esam gatavi atbalstÄ«t gan lokālo, gan attālo Kubernetes vidi. Darbs ir kļuvis daudz vienkārŔāks: montāžu, izvietoÅ”anu un testÄ“Å”anu tagad var veikt attālā klasterÄ«.

ÄŖsāk sakot:

Izmantojot Garden v0.10, varat pilnībā aizmirst par vietējo Kubernetes klasteru un joprojām ātri reaģēt uz koda izmaiņām. Tas viss ir bezmaksas un atvērtā koda.

Garden v0.10.0: jÅ«su klēpjdatoram nav nepiecieÅ”ams Kubernetes
Izbaudiet to paÅ”u pieredzi vietējā un attālā vidē

Vai pievērsāt uzmanību?

Un es par to priecājos, jo mums ir daudz vairāk interesantu iespēju! Izstrādātāju kopu vispārējai izmantoÅ”anai ir plaŔākas sekas, Ä«paÅ”i sadarbÄ«bas komandām un CI konveijeriem.

Kā tā?

Pirmkārt, tiek koplietots klastera iekŔējais savācējs ā€” vai tas bÅ«tu standarta Docker dēmons vai Kaniko ā€”, kā arÄ« klastera iekŔējais reÄ£istrs. visam klasterim. JÅ«su komanda var koplietot izstrādātāju kopu ar keÅ”atmiņām un attēliem, kas ir pieejami visiem izstrādātājiem. Tā kā Garden atzÄ«mē attēlus, pamatojoties uz avota jaucējkodiem, tagi un slāņi tiek definēti unikāli un konsekventi.

Tas nozÄ«mē, ka, tiklÄ«dz izstrādātājs izveido attēlu, tas kļūst pieejams visai komandai. Dienu no dienas mēs lejupielādējam vienus un tos paÅ”us bāzes attēlus un veidojam tos paÅ”us datoros. Interesanti, cik daudz satiksmes un elektrÄ«bas tiek iztērēts?

To paŔu var teikt par testiem: to rezultāti ir pieejami visam klasterim un visiem komandas dalībniekiem. Ja kāds no izstrādātājiem ir pārbaudījis noteiktu koda versiju, nav nepiecieŔams atkārtoti palaist to paŔu testu.

Citiem vārdiem sakot, runa nav tikai par minikube nedarbināŔanu. Å is lēciens paver ceļu jÅ«su komandai daudzi optimizācijas iespējas ā€“ vairs nav lieku bÅ«vējumu un testa palaiÅ”anas!

Kā ar CI?

Lielākā daļa no mums ir pieraduÅ”i, ka CI un vietējais izstrādātājs ir divas atseviŔķas pasaules, kas ir jākonfigurē atseviŔķi (un tām nav kopÄ«ga keÅ”atmiņa). Tagad jÅ«s varat tos apvienot un atbrÄ«voties no liekā:

JÅ«s varat izpildÄ«t tās paÅ”as komandas CI un izstrādes procesā, kā arÄ« izmantot vienu vidi, keÅ”atmiņas un testa rezultātus.

BÅ«tÄ«bā jÅ«su CI kļūst par izstrādātāju robotprogrammatÅ«ru, kas darbojas tajā paŔā vidē, kur jÅ«s.

Garden v0.10.0: jÅ«su klēpjdatoram nav nepiecieÅ”ams Kubernetes
Sistēmas elementi; nepārtraukta izstrāde un testÄ“Å”ana

CI cauruļvada konfigurācijas var ievērojami vienkārÅ”ot. Lai to izdarÄ«tu, vienkārÅ”i palaidiet Garden no CI, lai veiktu bÅ«vÄ“Å”anu, testus un izvietoÅ”anu. Tā kā jÅ«s un CI izmantojat vienu un to paÅ”u vidi, ir daudz mazāka iespēja saskarties ar CI problēmām.

RakÅ”anās pa neskaitāmām konfigurāciju un skriptu rindām, tad stumÅ”ana, gaidÄ«Å”ana, cerÄ“Å”ana un nebeidzami atkārtojumi... Tas viss ir pagātnē. JÅ«s tikai veicat attÄ«stÄ«bu. Nav nevajadzÄ«gu kustÄ«bu.

Un, lai beidzot noskaidrotu situāciju: kad jÅ«s vai kāds cits komandas loceklis kaut ko uzbÅ«vēja vai testēja ar Garden, tas pats notika ar CI. Ja kopÅ” testa palaiÅ”anas neko neesat mainÄ«jis, jums nav jāveic CI testi (vai pat bÅ«vējumi). Garden visu dara pats un pēc tam pāriet uz citiem uzdevumiem, piemēram, pirms palaiÅ”anas vides organizÄ“Å”anu, artefaktu stumÅ”anu utt.

Izklausās kārdinoÅ”i. Kā mēģināt?

Laipni lÅ«dzam vietnē mÅ«su GitHub repozitorijs! Instalējiet Garden un spēlējiet ar piemēriem. Tiem, kas jau izmanto Garden vai vēlas to iepazÄ«t tuvāk, piedāvājam TālvadÄ«bas Kubernetes ceļvedis. Pievienojieties mums kanālā #dārzs Kubernetes Slackā, ja jums ir jautājumi, problēmas vai vienkārÅ”i vēlaties tērzēt. Mēs vienmēr esam gatavi palÄ«dzēt un gaidÄ«t atsauksmes no lietotājiem.

PS no tulka

Drīzumā publicēsim arī Kubernetes aplikāciju izstrādātājiem noderīgu utilītu apskatu, kurā bez Garden iekļauti arī citi interesanti projekti... Tikmēr lasiet arī mūsu blogā:

Avots: www.habr.com

Pievieno komentāru