Ostatnie Patoszkolenie w tym roku👇
➡️ 04.06.2024 Architektura 101
Nowy Short, tym razem jako temat dokumentacja - a dokładniej o narzędziu Hermes od HashiCorp. Dodatkowo o Kubernetes Benchmark Report z 2023 od Fairwinds, Aqua Security Trivy - i nie tylko!
Słuchasz Patoarchitektów dzięki Protopii. Sprawdź, jak Patoarchitekci i Protopia mogą Ci pomóc ➡️ protopia.tech
Linki i ciekawe znaleziska:
Szymon Warda: Cześć Słuchacie Patoarchitektów. Prowadzą Szymon Warda…
Łukasz Kałużny: …I Łukasz Kałużny.
Łukasz Kałużny: Wszystkie linki do tego odcinka klasycznie na Patoarchitekci.io, / tym razem 61 lub gdzieś w Twoim playerze do podcastów tu na dole. Dobra, to od czego zaczynamy, Szymon?
Szymon Warda: No, od WOŚP-a, wygranej. Aukcję WOŚP wygrał Kuba Wojtczak z LeanCode. Mały disclaimer w ogóle, z Kubą się znamy jak najbardziej, ale nawet fajnie, bo nie wiedzieliśmy, że to właśnie Kuba licytuje. Ale chłopaki z LeanCode, znamy się i trochę tak fajnie, bo faktycznie, o ile my tu głównie mówimy o architekturze, to chłopaki zajmują się fajnymi rzeczami jeżeli chodzi o Fluttera i nie tylko. Także coś się będzie pewnie kroiło w przyszłości. Jeszcze nie określiliśmy, co będziemy właściwie robili, ale coś będzie.
Łukasz Kałużny: Czekamy i zobaczymy.
Szymon Warda: Dokładnie tak. To linki, Łukaszu, tak.
Łukasz Kałużny: Dobra, ja mam wykopek z HashiCorpu. Ciekawa rzecz, bo po raz pierwszy… Raczej… Kolejne narzędzie, ale pierwsze wokół architektury. To jest ciekawe i to co HashiCorp zrobił, to wydał teraz takie narzędzie, które się ładnie nazywa - Hermes. Służy do - jak to określili ładnie - Open Source Document Management System. Zarządzanie dokumentami może wydać się trywialną rzeczą, ale de facto podeszli do procesu uzgadniania RFC i różnych takich rzeczy architektonicznych. Implementacyjnych - i w jaki sposób powinien żyć cykl życia, czyli w jaki sposób wyglądają akceptacje i archiwizacje takich dokumentów. Share’owanie tego. Pod spodem jest to nakładka w tym momencie na Google Docsa, na Google Workspace’a w tym momencie, bo jest to świeżynka i to też wynika… Ten produkt wynika z ich wewnętrznej potrzeby, bo w sumie z Big Techu, HashiCorp… Do tego jeszcze AWS, Google chwalą się tą silną kulturą…
Szymon Warda: Pisania i pisania.
Łukasz Kałużny: Pisania. Także pisanie w teorii po spotkaniu i to jest gdzieś z ich wewnętrznej potrzeby. Pokazało się właśnie w jaki sposób można tym zarządzić.
Szymon Warda: Jest to ciekawy w ogóle ruch, bo mam wrażenie, że coraz więcej teraz toolingu powstaje nie wokół technologii jako takiej samej, tylko właśnie wokół komunikacji; wokół budowania wewnętrznej platformy, ale na poziomie wiedzowym. Backstage Spotify to jest dokładnie też bardzo bliskie tego problemowi tak naprawdę. A Hermes - jak się patrzy na to, co HashiCorp oferuje, to jest totalnie inna bajka względem tego, co oni właściwie mają. Więc faktycznie musieli zauważyć… Konkretną dziurę w rynku.
Łukasz Kałużny: I ona jest.
Szymon Warda: Tak, chodzi o to, że taka firma HashiCorp, inwestuje czas, bo to jest czas, który mają określony - inwestuje czas w ruszenie produktu od docsów. To pokazuje tylko, że faktycznie dziura jest i że ludzie są w stanie za to zapłacić i to nie mało, bo HashiCorp z reguły tani nie jest. Ale też zgodzę się jak najbardziej. Jak to przejrzałem, to są toole, które są potrzebne, bo potem takie rzeczy: u jednego klienta jest… Gdzie rzeczy na wiki leżą od 10 lat i już nikt nie wie co jest aktualne, a co jest nieaktualne.
Łukasz Kałużny: Wiesz… To jedno to jest wiki… Drugie: potem jakoś dziwnie uchwalane standardy, implementacje.
Szymon Warda: Tak.
Łukasz Kałużny: Ktoś został po drodze czasami skrzywdzony jakimś SharePoint’em albo Girą z customowym procesem.
Szymon Warda: Każdy został skrzywdzony SharePointem. Nie ktoś, każdy ma jakiegoś SharePointa gdzieś. <śmiech>śmiech>
Łukasz Kałużny: No tak, nie jesteśmy w Dolinie Krzemowej, że mogło nas to obejść.
Szymon Warda: Tak, ale jak patrzę na to, właśnie mówisz o RFC, ja jeszcze… mi od razu akurat weszło do głowy RFP samo. Jak to wychodzi. Czyli proces akceptacji dokumentu jak wychodzi np. gdzieś na zewnątrz, żeby mieć wszystkie approvale, które musimy mieć. To też jest bardzo ważne.
Łukasz Kałużny: Tak, ale skupmy się, że to jest pomyślane dla ludzi technicznych. To jest istotna rzecz, to nie jest management system. Moim zdaniem to, w którym kierunku zacznie to iść. Oczywiście rzucam kostką, ale to jest management system dla ludzi technicznych.
Szymon Warda: A ja bym się tu nie zgodził, bo gdyby to był ludzi technicznych, gdyby to było pomyślane jako coś dla ludzi technicznych, to byłoby to w markdownie, a nie w Google Docsach. Wydaje mi się, że jednak szerszy jest zakres.
Łukasz Kałużny: Nie, wiesz co, jak popatrzysz - tak, jak gdzieś tam porozmawia się ze znajomymi, to w wielu firmach tego typu pisanie króluje.
Szymon Warda: Spoko, zobaczymy jak to się rozwinie, zobaczymy jak to będzie przyjęte. Ja widzę już, że pewne rzeczy chętnie bym to… lepiej bym w ten proces wrzucił zdecydowanie. Podoba mi się, zdecydowanie.
Łukasz Kałużny: Raczej jako początek produktu, bo to jest pierwsza wersja. To jest… Po prostu to wyszło, zostało opublikowane raptem tydzień temu jako pierwszy kawałek, zalążek, który niewiele jeszcze potrafi, ale pokazuje ciekawy, tak naprawdę ciekawy kierunek tego.
Szymon Warda: Dobra, to teraz ja wchodzę z moim linkiem.
Łukasz Kałużny: Jeszcze jedna ciekawostka, bo tak patrzyłem na tego Hermesa. Szkoda mi trochę dziewczyn i chłopaków z allegro, bo ich nakładka na kawkę, którą napisali i z opensource’owali, również nazywa się Hermes.
Szymon Warda: Faktycznie, wiedziałem, że skądś to słyszałem.
Łukasz Kałużny: Tak dokładnie, bo teraz przed chwilą właśnie to sprawdziłem i ich nakładka właśnie zwie się Hermes, więc trochę mi ich szkoda i projektu. Ciekawe czy zrename’ują!
Szymon Warda: Dobrze, mój link. Będzie to kolejny z raportów, bo widzę, że ostatnio robienie raportów odnośnie czegoś stało się sposobem na to, żeby zyskać linki i różne kontakty. Ten jest, ja bym powiedział, że ciekawy. Zobaczymy. Od Fairwinds. Oni zajmują się softem w około Kubernetesa tak naprawdę. Wypuścili raport, raport tam jest. Niby przeanalizowali 150 000 workloadów i tak dalej. OK, ale jak ten raport przekartkowałem to było: o Boże, tu nic ciekawego nie ma. Ale potem do niego wróciłem i pomyślałem sobie o tym, że de facto ta samą reakcje miałem jak przeglądałem OWASP Top Ten jakiś czas temu, parę lat temu, de facto. To jest: o Jezu, tu nic ciekawego nie ma. Ale to tylko pokazuje jedną rzecz, że de facto czasami oceniamy nasze klasy np. Jezu, nie ma X, Y, Z, jakiejś technologii albo czegoś nie adresujemy, a okazuje się, że - de facto - że baseline jest zupełnie w innym miejscu. A druga rzecz to jest to, że często jest łatwo pominąć te oczywiste oczywistości, typu jak np: w kontekście OWASP’a, SQL injection i te sprawy. Trochę nie będę wchodził, bo w raporcie jest odnośnie różnicy między 2022 a 2023, bo są straszne różnice jeżeli chodzi właśnie o niektóre wartości, ale taki zdrowy rozsądek, zdrowy check na to co faktycznie jest i na co zwracają uwagę.
Szymon Warda: Pierwszy, jeżeli chodzi o reliability, Memory Limits i Memory Requests. Sporo firm tego nie ma włączonego i tu bym się z tym zgodził, bo faktycznie ustawienie limitów i requestów nie jest takie popularne jak przeglądam te klastry. Często o tym zapominamy. Nie wiem jakie są Twoje wrażenia Łukaszu.
Łukasz Kałużny: Wiesz co, tak, jest to zapominane. W ogóle patrząc na cały ten raport… Zupełnie oddaje rzeczywistość audytów.
Szymon Warda: No właśnie tak… Bo drugą pozycją jest brak Liveness i Readiness probe’ów. I przyznam się, że już dawno nie było takiej sytuacji, żebym ich nie widział w ogóle. Na przykład to z reguły występuje prawie zawsze.
Łukasz Kałużny: Ale zobacz: jak wejdziesz, dobra, bo to jest pytanie jak oni na to patrzą. Jeżeli miałbym policzyć sposób działania poprawny - czyli raczej, słuchaj, Szymon: wystarczy, że załóżmy, że robisz taki raport. Można sobie różnie na to patrzeć, ale ludzie: tak po dziś dzień pewne rzeczy w IT robi się na pałę, zamiast zrozumieć.
Szymon Warda: Nie no, ale to to oczywiste.
Łukasz Kałużny: Inaczej: tydzień debugowania uchroni Cię przed godziną czytania dokumentacji.
Szymon Warda: Oczywiście że tak.
Łukasz Kałużny: A całość, jak popatrzymy, zobacz: że Liveness Probe czy Readiness Probe - jeżeli mamy takie Kubernetesy. No przepraszam, ale ile osób potrafi wpisać tam te same wartości? Więc możesz równie dobrze wtedy nie wykluczyć, uznać, że impacted.
Szymon Warda: Te same wartości, ale żeby serwis nie wystawał niczego? To to jest już… naprawdę ciężko jest po prostu.
Łukasz Kałużny: Ale jest tego, Szymon, ale jest tego sporo. Tak, nie oszukujmy się, jest tego sporo.
Szymon Warda: Tyle, że ja miałem farta i po prostu widziałem lepsze, no nie wiem…
Łukasz Kałużny: Tak, ale tak patrząc się z tych wszystkich moich… Chodzenia na gaszenie pożarów, to te braki, które są wyszczególnione w raporcie… Jest to standard. Jeżeli weźmiemy jakiegokolwiek toola opensource’owego. Ja nie mówię, że trzeba w ogóle mieć komercyjny, wrzucimy jakiekolwiek narzędzie opensource’owe do skanów security, bo to jest ciekawe, ale reliability jest dziedzina, security również. Jeżeli popatrzymy sobie.
Szymon Warda: Tak.
Łukasz Kałużny: Ciągłości. Jeżeli wrzucimy jakiekolwiek narzędzie już nie dając… Nie lecąc po przykładach, bo jest tego mnóstwo, każde z nich te braki wyszczególni.
Szymon Warda: Tak. Ja absolutnie nie neguję, że tych braków nie ma, właśnie tak samo było w OWASP’ie generalnie, że to są rzeczy, które występują tak naprawdę jak najbardziej. Probe’y mnie zaskoczyły mimo wszystko.
Łukasz Kałużny: Czyli probe’y, tak. Ja popatrzę na cały raport, on jest taki, hmm… Ma jedną ciekawą tendencję, bo de facto jedna rzecz: wizualizacje są tragiczne w nim.
Szymon Warda: Ale to pokazuje w ogóle rozstrzał danych jakie są itd. Wartości, tak.
Łukasz Kałużny: Wolałbym jakieś grupy klastrów i inne rzeczy. Poza tym brakuje mi informacji, którą można pociągnąć ile workload’ów było na tym danym np. klastrze. W tym raporcie, bo często zobaczysz, że jeżeli ktoś ma więcej workload’ów, zazwyczaj one będą wyglądać lepiej.
Szymon Warda: Bo ma i czas i ludzi od tego, żeby przerzucać na tą platformę.
Łukasz Kałużny: Im masz mniej serwisu, im masz mniej serwisów, tym jest zazwyczaj gorzej, bo trafiasz na mniej problemów.
Szymon Warda: I masz mniej czasu, żeby te wszystkie rzeczy dookoła. Bo to są rzeczy dookoła - skonfigurować de facto.
Łukasz Kałużny: Więc to druga rzecz tendencyjna np. nikt nie napisał tutaj i domyślam się dlaczego - nie napisał o np. Pod Disruption Budgetach.
Szymon Warda: Tak, te rzeczy, które są bardziej zaawansowane, powiedzmy sobie - bo mówimy o rzeczach bardziej zaawansowanych, tak naprawdę. Nie ma ich, to raport jest dość, mimo wszystko raczej taki entry level co musi być absolutnie. I taki, dość… Rzeczy, które łatwo jest sprawdzić. Dlatego… Ja go chciałem właśnie wrzucić z jednego powodu, że to jest taki według mnie plan minimum, który powinien być ustawiony.
Łukasz Kałużny: Tak.
Szymon Warda: I tyle.
Łukasz Kałużny: Tak, to jest plan minimum, a jeszcze lepiej zerknąć sobie na, nie wiem, na to co skanuje na przykład; już jak dajemy przykłady, Trivy od Aqua Security open source’owe, bo ona to wszystko wyrzuci.
Szymon Warda: Tak, tu bardziej wrzucam to jako taka walka z impostor syndrome, że tak powiem.
Łukasz Kałużny: Tak.
Szymon Warda: Dobra, o raporcie tyle. Ale mam jeszcze drugi link z rzeczy “małe, ale fajne”. Od jakiegoś czasu siedziałem w całym Open Telemetry i to jest dużo… Znaczy, to jest niespodziewanie większe niż powinno być. Bym tak może powiedział. Faktycznie te wszystkie elementy mają sens i standard jako taki ma sens jak najbardziej, ale jest bardziej rozbudowany, niż się możemy spodziewać po standardzie odnośnie trace’ów, logów i metryk. Przebicie się przez tą dokumentację też jest takie nieoczywiste, ale natknąłem się jakiś czas temu na prezentację. 18 minut i człowiek przechodzi przez całe pierwsze Open Telemetry. Dużo lepsza inwestycja czasu, niż czytanie całej dokumentacji. Znaczy dokumentacja, późna jako taka, ale… Jest w porządku. Naprawdę, naprawdę można obejrzeć.
Łukasz Kałużny: Mam tą kwestię - nie wiem, co powiedzieć, bo mam ją dopiero na liście to-do, do obejrzenia.
Szymon Warda: Dobry… Od zera do “Wiem o co chodzi, rozumiem i faktycznie rozumiem pojęcia”. Bo w Open Telemetry jest niestety dużo pojęć i trzeba dokładnie wiedzieć do czego one się odnoszą, bo mogą nazwy produktów też występować na kilku poziomach de facto. I też to daje fajny przegląd jeżeli chodzi o providerów, co dostarczają, z czym są zgodni itd. Naprawdę niezła. Byłem pod wrażeniem.
Łukasz Kałużny: Dobra.
Szymon Warda: No, to chyba tyle.
Łukasz Kałużny: To kończymy.
Szymon Warda: Dobra, na razie.
Łukasz Kałużny: Na razie, hej!