Rewizja obserwowalności: Dogłębna analiza stanu monitorowania, kosztów i własności danych na dzisiejszym rynku

Hej ludzie internetu! Niedawno ponownie wkroczyłem do świata obserwowalności i monitorowaniem po krótkim pobycie w przestrzeni wewnętrznego portalu dla deweloperów. Po powrocie poczułem silną potrzebę omówienia ogólnego smutnego stanu obserwowalności na dzisiejszym rynku.

Wciąż mam silne wspomnienie siebie, zanurzonego po kolana w Kubernetes konfiguracje, tonąc w morzu technicznego żargonu, nie wiedząc dokładnie, czy faktycznie monitorowałem wszystko w moim stosie, wdrażając ciężkich agentów i walcząc z menedżerami inżynierii i deweloperów tylko po to, aby ich kod został oprzyrządowany, tylko po to, aby dowiedzieć się, że nie mam połowy rzeczy, które myślałem, że mam. Brzmi znajomo? Większość z nas była w takiej sytuacji. To jak próba znalezienia wyjścia z labiryntu z opaską na oczach, podczas gdy ktoś wielokrotnie kręci się w kółko i podaje błędne wskazówki dotyczące wyjścia. Niezupełnie spacer po parku, prawda?

Trzy punkty bólu, które są dla mnie obecnie najważniejsze, to:

  1. Stan oprzyrządowania dla obserwowalności
  2. Okropne rachunki-niespodzianki wystawiane klientom przez sprzedawców i szalenie mylące modele cenowe, których nie da się nawet obliczyć.
  3. Własność i przechowywanie danych – kwestie rezydencji danych, zgodności i kontroli

Oprzyrządowanie

Społeczność monitorująca ma do dyspozycji fantastyczne nowe narzędzie: eBPF. Słyszał Pan o tym? Jest to przełomowa technologia (kod do oszukiwania, jeśli wolą Państwo, aby obejść tę okropną ręczną instrumentację), która pozwala nam śledzić, co dzieje się w naszych systemach bez wszystkich typowych bólów głowy. Bez skomplikowanych konfiguracji, bez inwazyjnej instrumentacji – po prostu jasny, szczegółowy wgląd w wydajność naszej aplikacji. Dzięki eBPF możemy zagłębić się w wewnętrzne funkcjonowanie aplikacji i infrastruktury, przechwytując dane na poziomie jądra przy minimalnym obciążeniu. To jak posiadanie wizji rentgenowskiej dla naszego stosu oprogramowania bez bólu związanego z koniecznością zebrania wszystkich inżynierów w celu ręcznego oprzyrządowania kodu.

Miałem doświadczenie z pierwszej ręki we wdrażaniu rozwiązań monitorujących na dużą skalę podczas mojej kadencji w takich firmach jak Datadog, Splunk i, zanim mikrousługi stały się fajne, CA Technologies. Widziałem mozaikę APM, infrastruktura, logi, OpenTelemetry, niestandardowe oprzyrządowanie, open-source itp., które są często łączone (zwykle słabo), aby po prostu spróbować uzyskać podstawy. Każdy z nich wiąże się zwykle z wysokimi kosztami utrzymania technicznego i wymaga od SRE, inżynierów platform, programistów, DevOps itp. koordynacji (również zwykle nieskutecznej) w celu oprzyrządowania kodu, wdrożenia wszędzie, gdzie są świadomi, i trzymania kciuków w nadziei, że uda im się uzyskać większość tego, co powinno być monitorowane.

W tym momencie dzieją się dwie rzeczy:

  1. Nie wszystko jest monitorowane, ponieważ nie mamy pojęcia, gdzie wszystko się znajduje. W rezultacie mamy znacznie mniej niż 100% pokrycia.
  2. Zaczynamy prowadzić te godne skrępowania dyskusje na temat “czy powinniśmy to monitorować” ze względu na sam koszt monitorowania, często kosztujący więcej niż infrastruktura, na której działają nasze aplikacje i mikrousługi. Powiedzmy sobie jasno: to nie jest rozmowa, którą powinniśmy prowadzić.

Rzeczywiście, OpenTelemetry jest fantastyczne pod wieloma względami: Rozwiązuje problem vendor lock-in i pracuje nad nim znacznie większa społeczność, ale muszę tu być brutalnie szczery: wymaga to DUŻO PRACY. Potrzeba prawdziwej współpracy między wszystkimi zespołami, aby upewnić się, że wszyscy są oprzyrządowani ręcznie i że każda biblioteka, której używamy, jest dobrze obsługiwana, zakładając, że możemy odpowiednio zweryfikować, że starszy kod który próbujemy oprzyrządować, ma w sobie to, o czym Pan myśli. Z moich obserwacji wynika, że w 95% przypadków jest to niekompletna mozaika rzeczy, która daje nam bardzo niepełny obraz.

Wracając do technologii eBPF: Dzięki odpowiedniemu wdrożeniu i pewnemu tajnemu sosowi, są to dwie podstawowe obawy, o które po prostu nie musimy się martwić, o ile istnieje uproszczony model cenowy. Możemy uzyskać pełną 360-stopniową widoczność w naszych środowiskach dzięki śledzeniu, metrykom i dziennikom bez kłopotów i bez zastanawiania się, czy naprawdę możemy sobie pozwolić na zobaczenie wszystkiego.

Słoń w pokoju: Koszt i okropny stan cen na dzisiejszym rynku obserwowalności

Gdybym miał grosza za każdym razem, gdy słyszę powiedzenie: “Potrzebuję narzędzia obserwowalności, aby monitorować koszt mojego narzędzia obserwowalności”.

Tradycyjne narzędzia do monitorowania często wiążą się z wysoką ceną, która często jest dużym zaskoczeniem, gdy dodamy metrykę lub wiersz dziennika… zwłaszcza gdy jest na dużą skalę! Nie chodzi tylko o początkową inwestycję – to nieoczekiwane rachunki za nadwyżkę, które naprawdę kłują w oczy. Narzędzia te zazwyczaj pobierają opłaty w oparciu o ilość pozyskanych danych i łatwo jest nie docenić, jak szybko te koszty mogą się sumować.

Każdy z nas był już w takiej sytuacji. monitorowanie klastra Kubernetes z setkami podów, z których każdy generuje logi, ślady i metryki. Zanim się zorientujemy, mamy do czynienia z górą danych i niespodziewanie wysokim rachunkiem. A może zdecydowaliśmy, że potrzebujemy nowego aspektu tej metryki i otrzymaliśmy nieoczekiwanie ogromną opłatę za kardynalność metryki. A może deweloper zdecydował, że dodanie dodatkowej linii logów do naszej aplikacji o dużym wolumenie jest świetnym pomysłem i nasz rachunek za logi rośnie wykładniczo z dnia na dzień. To trudna pigułka do przełknięcia, zwłaszcza gdy staramy się zrównoważyć potrzebę kompleksowego i pełnego monitorowania z ograniczeniami budżetowymi.

Widziałem klientów otrzymujących dziesiątki tysięcy dolarów (czasem setki tysięcy) w rachunkach za “nadwyżkę”, ponieważ jakiś programista dodał kilka dodatkowych wierszy dziennika lub ktoś potrzebował dodatkowej kardynalności w metryce. Te koszty to bardzo prawdziwe dla tych bardzo prostych błędów (gdy często nie ma kontroli, aby zapobiec ich popełnieniu). Z mojego osobistego doświadczenia: Życzę Panu powodzenia w próbie wynegocjowania niższych rachunków. Teraz utknął Pan w martwym punkcie, ponieważ firmy te nie są zainteresowane tym, by klienci płacili mniej, gdy otrzymają takie rachunki. Jako architekt zajmujący się kontaktami z klientami, miałem klientów, którzy widzieli na czerwono, i chłopcze, to jest do bani. Etyka stojąca za niespodziewanymi cenami jest w najlepszym razie wątpliwa.

To właśnie wtedy nowoczesne rozwiązanie powinno wkroczyć, by uratować sytuację. Odwracając scenariusz tradycyjnych modeli cenowych, oferując przejrzyste ceny oparte na wykorzystaniu, a nie na wolumenie, wejściu, wyjściu lub nieznanych metrykach, których nie masz pojęcia, jak obliczyć, powinniśmy być w stanie uzyskać konkretne informacje na temat kosztów monitorowania i ustalić jasne oczekiwania, wiedząc, że możemy zobaczyć wszystko od końca do końca bez poświęcania się, ponieważ koszt może być zbyt wysoki. Dzięki eBPF i odrobinie sekretnego sosu już nigdy nie będziemy musieli martwić się o niespodziewane opłaty za przekroczenie limitu. Możemy dokładnie wiedzieć, za co płacimy z góry, co daje nam spokój ducha i kontrolę nad kosztami monitorowania.

Nie chodzi tylko o koszty – chodzi o wartość. Nie chcemy tylko narzędzia do monitorowania; chcemy partnera w naszym dążeniu do obserwowalności. Chcemy mieć zespół i społeczność, które pomogą nam w pełni wykorzystać nasze ustawienia monitorowania, zapewniając wskazówki i wsparcie na każdym kroku. Musi się to zmienić z bezosobowego, transakcyjnego podejścia starszych dostawców.

Własność i przechowywanie danych

Kolejnym tematem, który chciałbym poruszyć, jest znaczenie rezydencji danych, zgodności i bezpieczeństwa w sferze rozwiązań obserwowalności. W dzisiejszym krajobrazie biznesowym utrzymanie kontroli nad tym, gdzie i w jaki sposób dane są przechowywane i dostępne, ma kluczowe znaczenie. Różne przepisy, takie jak RODO (ogólne rozporządzenie o ochronie danych), wymagają od organizacji przestrzegania ścisłych wytycznych dotyczących przechowywania danych i prywatności. Tradycyjne rozwiązania obserwowalności oparte na chmurze mogą stanowić wyzwanie w spełnieniu tych wymogów zgodności, ponieważ często przechowują dane na serwerach stron trzecich rozproszonych w różnych regionach. Widziałem, jak to się dzieje i widziałem, jak klienci podejmują nadzwyczajne kroki, aby uniknąć przejścia do chmury, jednocześnie zatrudniając ogromne zespoły wewnętrznych programistów tylko po to, aby utrzymać swoje dane w swoich murach.

Wybór rozwiązania obserwowalności, które pozwala na lokalne przechowywanie danych, skutecznie rozwiązuje te obawy. Przechowując dane monitorowania w centrum danych organizacji, firmy zyskują większą kontrolę nad ich bezpieczeństwem i zgodnością z przepisami. Takie podejście minimalizuje ryzyko nieautoryzowanego dostępu lub naruszenia danych, zwiększając tym samym bezpieczeństwo danych i upraszczając działania związane z zapewnieniem zgodności. Ponadto jest ono zgodne z wymogami i przepisami dotyczącymi miejsca przechowywania danych, zapewniając interesariuszom pewność co do suwerenności i prywatności danych.

Co więcej, wybór rozwiązania obserwowalnego z lokalnym przechowywaniem danych może przynieść znaczne oszczędności w dłuższej perspektywie. Wykorzystując istniejącą infrastrukturę i eliminując potrzebę kosztownego przechowywania danych w chmurze i opłat za transfer danych, organizacje mogą zoptymalizować swoje wydatki operacyjne. Przejrzyste modele cenowe dodatkowo zwiększają efektywność kosztową, zapewniając jasność i przewidywalność, dzięki czemu organizacje mogą efektywnie budżetować bez napotykania nieoczekiwanych wydatków.

Z drugiej strony, poleganie na dostawcy usług obserwacyjnych opartych na oprogramowaniu jako usłudze (SaaS) może wprowadzać złożoność, zagrożenia bezpieczeństwa i problemy. Dzięki rozwiązaniom SaaS organizacje zrzekają się kontroli nad przechowywaniem danych i zarządzaniem nimi, oddając wrażliwe informacje w ręce zewnętrznych dostawców. Zwiększa to ryzyko naruszenia bezpieczeństwa i prywatności danych, zwłaszcza w przypadku przepisów takich jak RODO. Dodatkowo, zależność od zewnętrznych dostawców usług może prowadzić do uzależnienia od dostawcy, co utrudnia migrację danych lub zmianę dostawcy w przyszłości. Co więcej, wahania cen i zakłócenia w świadczeniu usług mogą zakłócać operacje i nadwyrężać budżety, dodatkowo komplikując krajobraz obserwowalności dla organizacji.

Dla organizacji pragnących zapewnić zgodność z przepisami bezpieczeństwo danychi optymalizacji kosztów, rozwiązanie obserwowalności, które ułatwia lokalne przechowywanie danych, stanowi atrakcyjne rozwiązanie. Zachowując kontrolę nad przechowywaniem i bezpieczeństwem danych, a jednocześnie osiągając efektywność kosztową, firmy mogą bez obaw skupić się na swoich podstawowych kompetencjach i działaniach generujących przychody.