Garden v0.10.0: Váš notebook nepotrebuje Kubernetes

Poznámka. preklad.: S nadšencami Kubernetes z projektu Záhrada stretli sme sa na nedávnom podujatí KubeCon Europe 2019, kde na nás urobili príjemný dojem. Tento ich materiál, napísaný na aktuálnu technickú tému a s citeľným zmyslom pre humor, je toho jasným potvrdením, a preto sme sa ho rozhodli preložiť.

Hovorí o hlavnej veci (rovnakého mena) produktu spoločnosť, ktorej myšlienkou je automatizovať pracovné postupy a zjednodušiť vývoj aplikácií v Kubernetes. Na tento účel vám pomôcka umožňuje jednoducho (doslova jedným príkazom) nasadiť nové zmeny vykonané v kóde do klastra dev a tiež poskytuje zdieľané zdroje/vyrovnávacie pamäte na urýchlenie vytvárania a testovania kódu tímom. Pred dvoma týždňami hostila záhrada vydanie 0.10.0, v ktorom bolo možné použiť nielen lokálny klaster Kubernetes, ale aj vzdialený: to je udalosť, ktorej je venovaný tento článok.

Moja najmenej obľúbená vec, ktorú robím, je práca s Kubernetes na mojom notebooku. „Kormidelník“ žerie svoj procesor a batériu, chladiče sa točia nonstop a je náročný na údržbu.

Garden v0.10.0: Váš notebook nepotrebuje Kubernetes
Skladová fotografia v téme pre pridaný efekt

Minikube, kind, k3s, Docker Desktop, microk8s atď. - vynikajúce nástroje vytvorené tak, aby bolo používanie Kubernetes čo najpohodlnejšie, a za to im ďakujeme. vážne. Ale bez ohľadu na to, ako sa na to pozeráte, jedna vec je jasná: Kubernetes nie je vhodný na spustenie na mojom notebooku. A samotný notebook nie je navrhnutý na prácu so zhlukom kontajnerov roztrúsených po vrstvách virtuálnych strojov. Chúďatko sa snaží zo všetkých síl, no zjavne sa mu táto činnosť nepáči, keď dáva najavo svoju nespokojnosť s kvílením chladičov a snaží sa popáliť si stehná, keď si ho neuvážene položím na kolená.

Povedzme: laptop - laptop.

Záhrada je nástroj pre vývojárov, ktorý zaberá rovnaké miesto ako Skaffold a Draft. Zjednodušuje a urýchľuje vývoj a testovanie aplikácií Kubernetes.

Od chvíle, keď sme začali pracovať na záhrade, asi pred 18 mesiacmi, sme to vedeli miestne Vývoj distribuovaných systémov je dočasným riešením, preto Garden vybudovala výraznú flexibilitu a pevný základ.

Teraz sme pripravení podporovať lokálne aj vzdialené prostredia Kubernetes. Práca sa stala oveľa jednoduchšou: montáž, nasadenie a testovanie je teraz možné vykonávať vo vzdialenom klastri.

Stručne povedané:

S Garden v0.10 môžete úplne zabudnúť na lokálny klaster Kubernetes a stále získate rýchlu odozvu na zmeny kódu. To všetko je bezplatné a open source.

Garden v0.10.0: Váš notebook nepotrebuje Kubernetes
Užite si rovnaký zážitok v miestnych a vzdialených prostrediach

Získali ste vašu pozornosť?

A som tomu rád, pretože máme oveľa viac zaujímavých funkcií! Všeobecné používanie klastrov pre vývojárov má širšie dôsledky, najmä pre tímy spolupráce a kanály CI.

Ako to?

V prvom rade je zdieľaný intra-cluster kolektor – či už je to štandardný démon Docker alebo Kaniko – ako aj intra-cluster register pre celý klaster. Váš tím môže zdieľať vývojový klaster s vyrovnávacími pamäťami a obrázkami, ktoré sú dostupné všetkým vývojárom. Pretože záhrada označuje obrázky na základe zdrojových hashov, značky a vrstvy sú definované jedinečne a konzistentne.

To znamená, že keď vývojár vytvorí obrázok, stane sa ním k dispozícii celému tímu. Deň čo deň sťahujeme rovnaké základné obrázky a vytvárame rovnaké zostavy na našich počítačoch. Zaujíma vás, koľko dopravy a elektriny sa zbytočne míňa?...

To isté možno povedať o testoch: ich výsledky sú dostupné celému klastru a všetkým členom tímu. Ak jeden z vývojárov testoval určitú verziu kódu, nie je potrebné opakovať rovnaký test.

Inými slovami, nejde len o to, že minikube nespustíte. Tento skok otvára cestu vášmu tímu veľa možnosti optimalizácie – už žiadne zbytočné zostavovanie a testovanie!

A čo CI?

Väčšina z nás je zvyknutá na to, že CI a lokálny vývoj sú dva samostatné svety, ktoré je potrebné konfigurovať oddelene (a nezdieľajú vyrovnávaciu pamäť). Teraz ich môžete kombinovať a zbaviť sa prebytku:

Rovnaké príkazy môžete vykonávať v CI a v procese vývoja, ako aj používať jednotné prostredie, vyrovnávaciu pamäť a výsledky testov.

V podstate sa vaša CI stane vývojárskym robotom pracujúcim v rovnakom prostredí ako vy.

Garden v0.10.0: Váš notebook nepotrebuje Kubernetes
Systémové prvky; bezproblémový vývoj a testovanie

Konfigurácie potrubia CI sa dajú výrazne zjednodušiť. Ak to chcete urobiť, stačí spustiť Garden od CI pre zostavenia, testy a nasadenia. Keďže vy a CI používate rovnaké prostredie, je oveľa menej pravdepodobné, že narazíte na problémy s CI.

Prehrabávať sa nespočetnými riadkami konfigurácií a skriptov, potom tlačiť, čakať, dúfať a nekonečné opakovania... To všetko je minulosťou. Robíš len vývoj. Žiadne zbytočné pohyby.

A na záver situáciu: keď ste vy alebo iný člen tímu niečo vytvorili alebo otestovali s Garden, to isté sa stalo pre CI. Ak ste od spustenia testu nič nezmenili, nemusíte spúšťať testy (alebo dokonca zostavy) pre CI. Garden robí všetko sama a potom prejde na ďalšie úlohy, ako je organizácia prostredia pred spustením, tlačenie artefaktov atď.

Znie to lákavo. Ako skúsiť?

Vitajte v naše úložisko GitHub! Nainštalujte si Garden a hrajte sa s príkladmi. Pre tých, ktorí už záhradu využívajú alebo ju chcú bližšie spoznať, ponúkame Vzdialený sprievodca Kubernetes. Pridajte sa k nám na kanáli #záhrada v Kubernetes Slack, ak máte otázky, problémy alebo sa len chcete porozprávať. Sme vždy pripravení pomôcť a privítame spätnú väzbu od používateľov.

PS od prekladateľa

Čoskoro zverejníme aj recenziu užitočných utilít pre vývojárov aplikácií pôsobiacich v Kubernetes, ktorá okrem Garden zahŕňa aj ďalšie zaujímavé projekty... Medzitým si prečítajte aj na našom blogu:

Zdroj: hab.com

Pridať komentár