Artykuł z magazynu ITwizArchitektura ITPolecane tematy
Czym jest koncepcja Chaos Monkey opracowana przez Netflix
Funkcjonalność Chaos Monkey jest sposobem na ciągłe testowanie systemu IT Onet.pl na awarie pojedynczych elementów jego infrastruktury. To ciągłe niszczenie i tworzenie maszyn wirtualnych.
W chmurze OnetCloud – świadczącej usługi IaaS i PaaS dla aplikacji portalu Onet i innych przedsiębiorstw – funkcjonalność Chaos Monkey zaimplementowaliśmy bezpośrednio w systemie naszej automatyzacji. Jej działanie polega na wyłączaniu i niszczeniu maszyn wirtualnych, których czas życia przekroczył 2 godziny.
Największą zaletą Chaos Monkey jest integracja zespołu IT w kierunku budowania infrastruktury IT, jako większego ekosystemu usług zamiast ciągłego i mozolnego utrzymania pojedynczych zasobów serwerowych zarówno fizycznych, jak i wirtualnych.
Taki zasób jest niszczony bezpowrotnie i – aby zdarzenie to nie wpływało na działanie aplikacji – musi być ona w odpowiedni sposób zaprojektowana i zabezpieczona. Na miejsce zniszczonego serwera powoływana jest jego nowa instancja, o ile wymagana jest do poprawnej pracy platformy. W sytuacji jednak, kiedy system posiada jeszcze wolne zasoby nowa instancja nie musi być natychmiast uruchamiana.
Zalety Chaos Monkey
Korzyści z zastosowania tej funkcjonalności jest jednak znacznie więcej. Dotyczą one zarówno developmentu, jak i utrzymania systemów informatycznych i są to m.in.:
- · budowa architektury aplikacji pozbawionych pojedynczych punktów awarii,
- · uniemożliwianie lokalnego przechowywanie danych, przez co wymuszane jest przechowywanie danych w systemach bazodanowych relacyjnych lub no_sql,
- · budowa centralnego systemu logów systemów operacyjnych i aplikacji, jakże cennego dla późniejszego monitoringu i przetwarzania danych Big Data,
- · automatyczne odświeżanie zasobów serwerów wirtualnych,
- · brak konieczności zarządzania pojedynczymi hostami, zespół IT zarządza obrazami systemów operacyjnych, a nie samymi hostami,
- · automatyczne skalowanie infrastruktury i oszczędności energii, zabijana maszyna wirtualna w sytuacji niskiego obciążenia całego systemu nie wymaga provisioningu nowej na jej miejsce.
Niezbędne zmiany w zarządzaniu IT
Oczywiści korzystanie z Chaos Monkey wymaga dodatkowych funkcjonalności w systemie automatyzacji, który w każdym momencie musi był przygotowany na wyłącznie części zasobów serwerów wirtualnych zapewniając jednocześnie bezpieczne działania aplikacji w warstwie PaaS, czy SaaS.
Największą jednak zaletą stosowania takiego rozwiązania jest integracja zespołu IT – zarówno developerów jak i administratorów – w kierunku automatyzacji dynamicznej infrastruktury i budowania infrastruktury, jako większego ekosystemu usług zamiast ciągłego i mozolnego utrzymania pojedynczych zasobów serwerowych bez względu na to czy są fizyczne, czy wirtualne.
Wojciech Ehrenfeld jest dyrektorem Pionu IT Operations w Grupie Onet.pl.
Tekst pochodzi z numeru ITwiz 3/2014. Więcej o koncepcji Chaos Monkey opracowanej przez Netflix. Wdrożenie koncepcji Chaos Monkey w kilku podstawowych krokach.