Garden v0.10.0: Twój laptop nie potrzebuje Kubernetesa

Notatka. przeł.: Z entuzjastami Kubernetesa z projektu Ogród poznaliśmy się na niedawnym wydarzeniu KubeCon Europa 2019, gdzie zrobiły na nas miłe wrażenie. Ten ich materiał, napisany na aktualny temat techniczny i z zauważalnym poczuciem humoru, jest tego wyraźnym potwierdzeniem, dlatego postanowiliśmy go przetłumaczyć.

Mówi o najważniejszej rzeczy (o tej samej nazwie) produkt firma, której ideą jest automatyzacja procesów i uproszczenie tworzenia aplikacji w Kubernetesie. Aby to zrobić, narzędzie umożliwia łatwe (dosłownie jednym poleceniem) wdrażanie nowych zmian wprowadzonych w kodzie do klastra deweloperskiego, a także zapewnia współdzielone zasoby/pamięć podręczną, aby przyspieszyć budowanie i testowanie kodu przez zespół. Dwa tygodnie temu Ogród gościł wydanie 0.10.0, w którym możliwe stało się wykorzystanie nie tylko lokalnego klastra Kubernetes, ale także zdalnego: właśnie temu wydarzeniu poświęcony jest ten artykuł.

Moją najmniej ulubioną rzeczą jest praca z Kubernetesem na moim laptopie. „Sternik” zjada procesor i baterię, powoduje, że lodówki kręcą się bez przerwy i jest trudny w utrzymaniu.

Garden v0.10.0: Twój laptop nie potrzebuje Kubernetesa
Fotografia stockowa w motywie dla dodatkowego efektu

Minikube, kind, k3s, Docker Desktop, microk8s itp. - doskonałe narzędzia stworzone, aby korzystanie z Kubernetes było jak najbardziej wygodne i dzięki im za to. Poważnie. Ale jakkolwiek na to nie spojrzeć, jedno jest jasne: Kubernetes nie nadaje się do uruchamiania na moim laptopie. A sam laptop nie jest zaprojektowany do pracy z klastrem kontenerów rozproszonych po warstwach maszyn wirtualnych. Biedak stara się jak może, ale wyraźnie nie podoba mu się ta czynność, okazując swoje niezadowolenie z wycia lodówek i próbując poparzyć sobie uda, gdy lekkomyślnie stawiam go na kolanach.

Powiedzmy: laptop - laptop.

Ogród to narzędzie dla programistów, które zajmuje tę samą niszę, co Skaffold i Draft. Upraszcza i przyspiesza tworzenie i testowanie aplikacji Kubernetes.

Wiedzieliśmy o tym od chwili, gdy zaczęliśmy pracować nad Gardenem, około 18 miesięcy temu lokalny Rozwój systemów rozproszonych jest rozwiązaniem tymczasowym, dlatego Garden zbudował znaczną elastyczność i solidne podstawy.

Jesteśmy teraz gotowi do obsługi zarówno lokalnych, jak i zdalnych środowisk Kubernetes. Praca stała się znacznie łatwiejsza: montaż, wdrażanie i testowanie można teraz przeprowadzać w zdalnym klastrze.

W skrócie:

Dzięki Garden v0.10 możesz całkowicie zapomnieć o lokalnym klastrze Kubernetes i nadal uzyskać szybką reakcję na zmiany w kodzie. Wszystko to jest darmowe i open source.

Garden v0.10.0: Twój laptop nie potrzebuje Kubernetesa
Ciesz się tym samym doświadczeniem w środowiskach lokalnych i zdalnych

Czy zwróciłeś uwagę?

I cieszę się z tego, ponieważ mamy o wiele więcej ciekawych funkcji! Ogólne wykorzystanie klastrów deweloperskich ma szersze implikacje, szczególnie dla zespołów współpracujących i potoków CI.

Jak to?

Po pierwsze, kolektor wewnątrzklastrowy – czy to standardowy demon Dockera, czy Kaniko – oraz rejestr wewnątrzklastrowy są współdzielone dla całego klastra. Twój zespół może udostępnić klaster deweloperów z pamięciami podręcznymi kompilacji i obrazami dostępnymi dla wszystkich programistów. Ponieważ Garden taguje obrazy w oparciu o skróty źródłowe, tagi i warstwy są definiowane w sposób unikalny i spójny.

Oznacza to, że gdy programista stworzy obraz, staje się on dostępne dla całego zespołu. Dzień po dniu pobieramy te same obrazy bazowe i tworzymy te same kompilacje na naszych komputerach. Ciekawi Cię, ile ruchu i energii elektrycznej marnuje się?..

To samo można powiedzieć o testach: ich wyniki są dostępne dla całego klastra i wszystkich członków zespołu. Jeśli jeden z programistów przetestował określoną wersję kodu, nie ma potrzeby ponownego przeprowadzania tego samego testu.

Innymi słowy, nie chodzi tylko o to, że Minikube nie działa. Ten skok toruje drogę Twojemu zespołowi wiele możliwości optymalizacji — koniec z niepotrzebnymi kompilacjami i uruchomieniami testowymi!

A co z CI?

Większość z nas jest przyzwyczajona do tego, że CI i lokalny programista to dwa odrębne światy, które należy skonfigurować osobno (i nie współdzielą pamięci podręcznej). Teraz możesz je połączyć i pozbyć się nadmiaru:

Te same polecenia możesz wykonywać w CI i w procesie programistycznym, oraz korzystaj z jednego środowiska, pamięci podręcznych i wyników testów.

Zasadniczo Twój CI staje się botem programistycznym pracującym w tym samym środowisku co Ty.

Garden v0.10.0: Twój laptop nie potrzebuje Kubernetesa
Elementy systemu; płynny rozwój i testowanie

Konfiguracje potoku CI można znacznie uprościć. Aby to zrobić, po prostu uruchom Garden z CI w celu kompilacji, testów i wdrożeń. Ponieważ Ty i CI korzystacie z tego samego środowiska, prawdopodobieństwo wystąpienia problemów z CI jest znacznie mniejsze.

Przekopywanie się przez niezliczone linie konfiguracji i skryptów, a następnie pchanie, czekanie, nadzieja i niekończące się powtórzenia... Wszystko to należy już do przeszłości. Po prostu zajmujesz się rozwojem. Żadnych zbędnych ruchów.

I żeby na koniec wyjaśnić sytuację: kiedy Ty lub inny członek zespołu zbudowaliście lub przetestowaliście coś w Garden, to samo stało się z CI. Jeśli nic nie zmieniłeś od czasu uruchomienia testu, nie musisz uruchamiać testów (ani nawet kompilacji) dla CI. Garden robi wszystko sam, a następnie przechodzi do innych zadań, takich jak organizacja środowiska przed uruchomieniem, wypychanie artefaktów itp.

Brzmi kusząco. Jak spróbować?

Witamy w naszego repozytorium GitHub! Zainstaluj Garden i baw się przykładami. Dla tych, którzy już korzystają z Garden lub chcą go lepiej poznać, mamy ofertę Przewodnik po zdalnym Kubernetesie. Dołącz do nas na kanale #ogród w Kubernetes Slack, jeśli masz pytania, problemy lub po prostu chcesz porozmawiać. Jesteśmy zawsze gotowi do pomocy i czekamy na opinie użytkowników.

PS od tłumacza

Już niedługo opublikujemy także recenzję przydatnych narzędzi dla twórców aplikacji działających w Kubernetesie, w której oprócz Gardena pojawią się także inne ciekawe projekty... Tymczasem przeczytaj także na naszym blogu:

Źródło: www.habr.com

Dodaj komentarz