Co to jest inżynieria SRE i dlaczego jest istotna?

Ukończone

Zazwyczaj najlepiej zaczynać od początku. Zacznijmy od pytania podstawowego "Co to jest inżynieria niezawodności lokacji?" Istnieje wiele odpowiedzi na to pytanie unoszące się, w tym ten często cytowany przez osobę, która ukuła termin (Ben Treynor Sloss w Google), ale najbardziej praktyczną odpowiedzią, którą możemy zaoferować, jest:

Inżynieria niezawodności lokacji to dyscyplina poświęcona pomaganiu organizacji w trwałym osiągnięciu odpowiedniego poziomu niezawodności w zakresie systemów, usług i produktów.

Później możemy omówić kolejne definicje, ale zacznijmy od tego. Istnieją trzy kluczowe części tej definicji, które musimy rozpakować, które prowadzą nas bezpośrednio do "Dlaczego ma to znaczenie?" .

Niezawodność

W samym sercu tej idei (oraz w samym środku nazwy „inżynieria niezawodności lokacji”) znajduje się słowo „niezawodność”. Definicja nie mówi o „odpowiednim poziomie wydajności”, „odpowiednim poziomie efektywności”, „odpowiednim poziomie stabilności” ani o „osiąganiu odpowiedniego poziomu przychodów”. Mówi o „odpowiednim poziomie niezawodności”. Dlaczego?

Spójrzmy na krótką demonstrację. Poniżej znajduje się zrzut ekranu. Co myślisz, że to pokazuje? Postaraj się nie przechodzić dalej, dopóki nie wpadniesz na jakiś pomysł albo poddasz się. Uwaga: jeśli trudno jest wykryć bardzo dużo szczegółów na tym obrazie, jest to renderowanie doskonale w przeglądarce.

Pusty zrzut ekranu reprezentujący aplikację PHP, której nie można załadować.

Ten obraz przedstawia zrzut ekranu aplikacji PHP (bez dodania obsługi innych metod debugowania) w momencie, w którym występuje awaria. W przypadku aplikacji Java możesz zobaczyć coś takiego:

Zrzut ekranu przedstawiający aplikację Java z błędem Stan HTTP 500.

Dlaczego przyglądamy się tym przykładom? Każdy z nich reprezentuje aplikację, której utworzenie potencjalnie wymagało od firmy poświęcenia ogromnych nakładów czasu, energii i zasobów. Jeśli jednak aplikacja nie działa, jeśli nie działa, gdy klient musi uzyskać do niej dostęp, jeśli nie jest wiarygodny, nie robi nikogo, zwłaszcza firmy. W rzeczywistości brak niezawodności może wyrządzić faktyczne szkody (w kontekście reputacji, ekonomii, umów, morale itp.) w firmie.

Dlatego usługa SRE decyduje się skupić na niezawodności jako podstawowej właściwości, być może podstawowej właściwości usługi, systemu lub produktu. Niezawodność może obejmować wiele rzeczy (jak omawiamy później), ale przejdźmy do drugiej kluczowej części definicji.

Odpowiednie poziomy niezawodności

Możliwe, że umknęło Ci to podczas pierwszego przeczytania definicji, ale podkreślmy kolejne ważne słowo:

Inżynieria niezawodności lokacji to dyscyplina poświęcona pomaganiu organizacji w trwałym osiągnięciu odpowiedniego poziomu niezawodności w zakresie systemów, usług i produktów.

Dlaczego to słowo jest tak bardzo istotne?

Ważną obserwacją w świecie SRE jest to, że istnieje kilka systemów i usług, które muszą być w 100% niezawodne. Rozwiązania decydujące o życiu i śmierci, np. w lotnictwie, medycynie itp. są istotnym wyjątkiem.

W rzeczywistości istnieje kilka sytuacji, w których jest to nawet pożądane. Wymagania dotyczące nakładów pracy i zasobów (a tym samym koszty) rosną bardzo szybko w przypadku osiągania większej niezawodności. Innymi słowy, goni po niezawodności, której nie potrzebujesz, to strata czasu i pieniędzy. Chcesz osiągnąć odpowiedni poziom niezawodności systemu, usług i produktów.

Poziom musi być dopasowany do potrzeb biznesowych oraz musi być pragmatyczny. Na przykład nasi klienci mogą łączyć się z Tobą za pośrednictwem sieci, która nie jest w 100% niezawodna (załóżmy, że to nawet 90% czasu). Wydatki na nakład pracy i pieniądze, aby upewnić się, że twoja usługa jest w 95% niezawodna, jest z definicji stratą czasu i pieniędzy. Chcesz osiągnąć odpowiedni poziom niezawodności systemu, usług i produktów.

Inżynieria SRE przenosi ten pragmatyzm na kolejny poziom. Jeśli teraz możemy myśleć o pożądanym poziomie niezawodności, czy jest coś, co powinniśmy zrobić, jeśli uda nam się osiągnąć spotkanie lub przekroczyć ten poziom? Podobnie, co mamy zrobić, jeśli nie osiągniemy tego poziomu? Odpowiemy na te pytania w dalszej części modułu.

Trwale zapewnić

Zanim przejdziemy dalej, ostatnim wyrazem z naszej definicji, który musimy wyróżnić jest trwale. Podtrzymuje rolę ludzi. Niezwykle ważne jest, aby stworzyć zrównoważoną praktykę operacyjną. Ludzie tworzą niezawodne systemy, usługi i produkty. Jeśli nie robimy rzeczy, aby upewnić się, że nasza praca jest zrównoważona. Jeśli obudzimy naszych ludzi o godzinie 3:00 każdej nocy ze stroną i nie daj im czasu z rodziną. Jeśli nie mają okazji spędzać czasu, dbając o siebie. Następnie nie ma możliwości tworzenia niezawodnych systemów. SRE uważa, że kluczowe jest wdrożenie praktyki operacyjnej, która jest zrównoważona w czasie, więc nasi ludzie są w stanie jak najlepiej pracować.

Sprawdź swoją wiedzę

1.

Na której właściwości usługi, systemu lub produktu przede wszystkim skupia się inżynieria SRE?

2.

Do jakiego poziomu niezawodności dąży inżynieria SRE dla prawie wszystkich usług, systemów i produktów?