Neil Rasmussen, Suzanne Niles 2011-04-08

Systemy modułowe: ewolucja niezawodności

Systemy modułowe: ewolucja niezawodności

Natura już dawno dowiodła, że w przypadku złożonych systemów szansę na przetrwaniei rozwój mają jedynie konstrukcje modułowe. Istotny składnik tego sukcesu stanowipodstawowa cecha niezawodności w postaci odporności na awarie, dzięki której możnaprzenieść wykonywane przez system modułowy operacje z uszkodzonych modułów dotych, które działają prawidłowo, wykonując jednocześnie naprawę. Również w centrachdanych zastosowano już konstrukcje modułowe w postaci nowych, odpornych na awariearchitektur serwerów i systemów pamięci masowych. W miarę ewolucji centrów danych,które zapożyczają z wzorców obecnych w naturze, również infrastruktura fizyczna siecio znaczeniu krytycznym (NCPI) musi się rozwijać, aby obsłużyć nowe strategie przetrwania,odtwarzania i wzrostu.

Modułowość to rozpowszechniona technika organizacji i upraszczania złożonego systemu. Począwszy odpodstawowych elementów, takich jak baterie latarki, aż po skomplikowane komórki organizmu, modułowośćsprawdza się w ogromnej liczbie sytuacji. Mimo to, w przypadku systemów stworzonych przez człowieka,które znajdują się na granicy między konstrukcjami monolitycznymi, a modułowymi, często można zauważyćsceptycyzm i powolną akceptację tej techniki zanim dane rozwiązanie modułowe przyjmie się i zacznieprzynosić sprawdzone korzyści.

W takiej właśnie fazie przejściowej znajduje się infrastruktura fizyczna sieci o znaczeniu krytycznym (NCPI).Fizyczne atrybuty architektury opartej na gotowych elementach konstrukcyjnych — skalowalność,elastyczność, prostota i przenośność — są zrozumiałe i nie stanowią przedmiotu poważnych sporów,ale tematem dyskusji jest ciągle jeden aspekt konstrukcji modułowej w tej branży: niezawodność.Zastosowanie klasycznej, prostej analizy niezawodności do tej nowej koncepcji („więcej części oznaczawiększe ryzyko awarii”) w najlepszym przypadku dostarcza niepełnych wyników, a w najgorszym możewprowadzać w błąd. Celem tego dokumentu jest pokazanie na podstawie kilku studiów przypadków, żemodułowość zapewnia nie tylko bardziej oczywiste i zrozumiałe korzyści, lecz ma także bardziej ukrytąi mniej zrozumiałą zaletę związaną z niezawodnością, jaką jest odporność na awarie. Charakterystycznadla konstrukcji modułowych odporność na awarie gwarantuje nową, skuteczną ochronę przed problemami.Dzięki niej w złożonych systemach możliwe jest zastosowanie strategii niezawodności, która jest nie tylkowystarczająca, ale także zapewnia największe korzyści.

Studium dotyczące natury: początki życia
Historia modułowości jest znacznie dłuższa niż historia centrów danych czy baterii do latarki. Pierwszesystemy niemodułowe — organizmy jednokomórkowe — żyły na Ziemi już trzy miliardy lat temu.Na podstawie skamielin tych organizmów ustalono, że wykształciły one muszle, czułki, otwory gębowe,kończyny, chwytaki i wiele innych skomplikowanych struktur. Niektóre organizmy osiągały zaskakującerozmiary — nawet do 15 cm długości. Te złożone,jednokomórkowe organizmy monolityczne zdominowałypodstawowy łańcuch pokarmowy Ziemi na wiele miliardów lat.W pewnym momencie, mniej więcej 500 milionów lat temu,pojawiły się organizmy wielokomórkowe. W ciągukilkudziesięciu milionów lat rozwinęły się tak szybko,że prześcignęły trwającą trzy miliardy lat ewolucję złożonychorganizmów jednokomórkowych i przejęły dominację naświecie.

Zalety modułowości w przypadku organizmów wielokomórkowych
Dlaczego modułowa budowa wielokomórkowa uzyskała przewagę nad zadomowioną budową monolityczną?

  • Możliwość skalowania i wzrostu. Wzrost systemu,zarówno pod względem rozmiaru, jak i pojawianiasię nowych zdolności był możliwy po prostu przezdodanie nowych modułów (komórek), które mogływspółpracować z istniejącymi modułami zapośrednictwem standardowych interfejsów.
  • Prostszy proces duplikacji. Duplikowanie wielumniejszych i niezbyt skomplikowanych komórek byłoprostsze, szybsze i bardziej niezawodne niż duplikacjapojedynczej, ale bardziej złożonej komórki.
  • Możliwość wyspecjalizowania funkcji modułów. Przekazywanie zadań i specjalizowanieczynności wykonywanych przez komórkę zapewniało podobne korzyści, jak w przypadkupracy zespołowej. W pierwszych organizmach wielokomórkowych jeden rodzaj komórek byłodpowiedzialny za przemieszczanie, inny za ochronę, jeszcze inny za wykrywanie pożywienia itd.
  • Szybka adaptacja do środowiska. Dodawanie, dzielenie i modyfikowanie komórek umożliwiało szybsze sprawdzanie stopniowych zmian w strukturze, które były przyjmowane lub odrzucane.
  • Odporność na awarie. Dzięki nadmiarowości komórek poszczególne komórki mogły ulecuszkodzeniu, co nie wpływało negatywnie na cały system, a także pozwalało na jednoczesnąnaprawę komórki bez wyłączania całego systemu (co w tym przypadku oznaczałoby nieprawidłowefunkcjonowanie lub śmierć).

Ostatnia z powyższych cech, odporność na awarie, stanowi podstawowy atrybut niezawodności systemówmodułowych, która świadczy o ich przewadze nad systemami monolitycznymi. Modułowość umożliwiapodział systemu na wiele mniejszych części, co zapewnia nadmiarowość poszczególnych komponentów.Awaria jednej lub nawet wielu części nie musi wpływać negatywnie na działanie całego systemu. Nawetpojedyncze zadrapanie oznacza ubytek setek komórek ludzkiej skóry, ale nie umieramy na skutek takiejstraty. Inne komórki kontynuują swoją pracę podczas wykonywania naprawy. My, ludzie nie wynaleźliśmymodułowości — my jesteśmy modułowi. Dzięki ogromnej liczbie modułów (komórek) każdego dnia możemycieszyć się odpornością na awarie.

Studium dotyczące informatyki: dyski twarde
W czasach, gdy w centrach danych stosowano komputerymainframe, urządzenia pamięci masowej miały postać dużych,samodzielnych dysków twardych ze stosami 14-calowych,metalowych talerzy, z rozbudowanymi mechanizmami odczytui zapisu oraz obudowami o wielkości pralki. W 1978 roku firmaIBM opatentowała koncepcję użycia macierzy mniejszych dysków,ale nigdy jej nie zastosowała, uznając, że takie rozwiązanie nigdynie będzie tak niezawodne, jak konwencjonalna konstrukcjamonolityczna. Badania nad odpornością na awarie i ichzastosowaniem w praktyce dopiero się rozpoczynały. Była to głównie domena przemysłu lotniczego,gdzie ceną awarii elementu w systemie elektronicznym mogło być życie ludzkie.1.

W 1987 roku naukowcy z Berkeley zaobserwowali rosnącą różnicę między szybkością komputerów,a szybkością dostępu do pamięci masowej. Zauważyli, że pojawienie się zewnętrznych dysków twardychdla komputerów osobistych zapewnia możliwość ich użycia jako elementów konstrukcyjnych dla systemuo większej szybkości przesyłania danych. Rok później przedstawili dokument „A Case for Redundant Arraysof Inexpensive Disks (RAID)” (Omówienie nadmiarowej macierzy niedrogich dysków [RAID]), proponująckilka schematów zapisu danych („poziomów RAID”), które mogły zostać wykorzystane przez macierzeRAID do zapisywania, odczytywania i odzyskiwania danych. W 1990 roku teoria doczekała się praktycznejrealizacji w postaci 5,25-calowych dysków stosowanych w komputerach osobistych, które osiągnęły jużwystarczającą pojemność, wydajność i niezawodność, aby możliwe było ich użycie w pierwszych macierzachRAID. Te nowe, modułowe urządzenia pamięci masowej zapewniły kompromis między nadmiarowością orazszybkością odczytu i zapisu, a także wymagały znacznie mniejszej przestrzeni w porównaniu do urządzeńpamięci masowej komputerów mainframe, które zastąpiły.

Zalety modułowości w przypadku macierzy RAID
Dlaczego modułowe macierze RAID są lepsze od starych, monolitycznych urządzeń pamięci masowej?

  • Możliwość skalowania i wzrostu. Pojemność pamięci masowej można z łatwością zwiększyć przez zwiększenie liczby modułów w macierzy lub przez dodanie macierzy.
  • Prostszy proces duplikacji. Wyprodukowanie wielu małych dysków, które służą jako moduły RAID, jest znacznie prostsze niż wyprodukowanie starszych, skomplikowanych i większych dysków.
  • Możliwość wyspecjalizowania funkcji modułów. Poszczególne dyski w macierzy mogą zostać użyte do zapewnienia dodatkowej pojemności, większej szybkości dostępu lub większej nadmiarowości w zależności od poziomu RAID zdefiniowanego dla macierzy. Ponadto same macierze RAID mogą być traktowane jako moduły wyższego poziomu. Każda macierz RAID może mieć inne zastosowanie.
  • Szybka adaptacja do środowiska. Dyski można dodawać lub usuwać. Można także z łatwością zmieniać poziom RAID w celu uzyskania żądanego kompromisu pod względem pojemności, wydajności i nadmiarowości.
  • Odporność na awarie. Schematy zapisu danych w macierzach RAID uwzględniają nadmiarowość, która zapewnia możliwość odtworzenia danych w przypadku awarii jednego z dysków.


Zaskoczeniem dla projektantów był fakt, że przyczyną entuzjastycznego przyjęcia macierzy RAID przezrynek była nie tyle wyższa szybkość — główny cel tego projektu — ale wyższa niezawodność wynikającaz odporności na awarie. Do momentu, kiedy autorzy dokumentu z 1988 roku przedstawili możliwościtechnologii RAID w zakresie odporności na awarie — podczas prezentacji przed publicznością po prostuwyjmowali jeden z dysków, podczas gdy macierz kontynuowała pracę — powszechnie panowała typowa,choć błędna opinia dotycząca niezawodności: system z wieloma dyskami musi być mniej niezawodny,skoro składa się z większej liczby części.

Studium dotyczące informatyki: serwery kasetowe
W chwili tworzenia tego dokumentu serwery kasetowe znajdują się w połowie drogi do przejścia dokonstrukcji modułowej. Przez wiele lat tradycyjne, samodzielne serwery stawały się coraz większe i szybsze,wykonując coraz większą liczbę zadań w miarę rozwoju komputerowych technik sieciowych. Nowe serwerybyły dodawane do centrów danych, jeśli było to konieczne. Często stanowiły one szybki środek zaradczystosowany bez większej koordynacji lub planowania.Wielu operatorów centrów danych odkrywało, że serweryzostały dodane bez ich wiedzy. Wynikająca z tego złożonastruktura obudów i okablowania w coraz większym stopniuprowadziła do nieporozumień, pomyłek i brakuelastyczności.
Serwery kasetowe, które zaczęły się pojawiać w 2001roku, stanowią bardzo prosty i typowy przykładarchitektury modułowej — kasety w obudowie serwerakasetowego są fizycznie identyczne i mają takie sameprocesory. Są one gotowe do skonfigurowania i użycia w dowolnym celu wybranym przez użytkownika.Wprowadzenie takich serwerów wniosło do środowiska serwerowego wiele zalet modułowości, takich jakskalowalność, łatwość duplikacji, specjalizacja funkcji i możliwość dostosowania.Te tradycyjne zalety modułowości przyczyniły się do rosnącej popularności serwerów kasetowych w centrachdanych, ale ich pełny potencjał w dalszym ciągu oczekuje na szerokie wdrożenie pozostałej podstawowejmożliwości konstrukcji modułowej: odporności na awarie. Odporne na awarie serwery kasetowez wbudowaną logiką przełączania awaryjnego, która przenosi wykonywane operacje z kaset uszkodzonychdo działających prawidłowo, stały się dostępne dopiero od niedawna, a ich ceny są coraz bardziejatrakcyjne. Niezawodność takich serwerów jest znacznie wyższa niż w przypadku stosowanych obecnietechnik obejmujących nadmiarowe oprogramowanie i klastry pojedynczych serwerów. Oznacza to,że serwery kasetowe mogą stać się dominującą architekturą serwerową w centrach danych. Wrazz pojawieniem się zautomatyzowanej odporności na awarie analitycy branżowi przewidują szybką migracjędo serwerów kasetowych w ciągu najbliższych pięciu lat.

Zalety modułowości w przypadku serwerów kasetowych
Dlaczego modułowe serwery kasetowe uzyskają przewagę nad większymi, samodzielnymi serwerami?

  • Możliwość skalowania i wzrostu. Możliwości obliczeniowe można z łatwością zwiększyć przez dodanie kolejnych modułów (kaset).
  • Prostszy proces duplikacji. O wiele prostsze jest wyprodukowanie małych kaset niż całych serwerów. Zasilacze, wentylatory chłodzące, połączenia sieciowe i inne komponenty pomocnicze są scentralizowane w obudowie i współużytkowane przez kasety, dzięki czemu struktura kasety jest uproszczona.
  • Możliwość wyspecjalizowania funkcji modułów. Poszczególne kasety można skonfigurować przy użyciu oprogramowania według wymagań użytkownika.
  • Szybka adaptacja do środowiska. Kasety można dodawać lub usuwać zgodnie z potrzebami biznesowymi lub finansowymi. Możliwa jest także zmiana konfiguracji kaset w celu uruchamiania różnych aplikacji.
  • Odporność na awarie. Awaria kasety może zostać obsłużona automatycznie przez wbudowaną logikę przełączania awaryjnego, która bezproblemowo przenosi wykonywane operacje do innych kaset.


Zmieniająca się definicja awarii dla systemów IT
Powyższe studia przypadków pokazały, że konstrukcja modułowa jest lepsza od złożonej konstrukcji monolitycznej. Wynika to z podstawowych przyczyn, które są ściśle związane z naturą modułowości. Jedna z tych przyczyn, odporność na awarie, ma ogromne znaczenie dla przyszłości centrów danych. Kiedy serwery i urządzenia pamięci masowej w całym centrum danych staną się odporne na awarie, zmieni się definicja awarii systemu IT.

Przyjrzyjmy się dwóm różnym scenariuszom awarii w centrum danych (Rysunek 1). Po prawej stronieprzedstawiono awarię wszystkich szaf, która może wystąpić w przypadku uszkodzenia dużego,pojedynczego zasilacza UPS, który chroni całe centrum danych. W wyniku jego awarii następuje przerwaniezasilania urządzeń. Po lewej stronie przedstawiono awarię pojedynczej szafy. W tradycyjnych centrachdanych obydwa scenariusze byłyby postrzegane przez kierowników działów IT jako identyczna awaria,ponieważ w przypadku awarii pojedynczej szafy wzajemne zależności między serwerami, macierzamidyskowymi, przełącznikami i routerami spowodowałyby kaskadowe skutki, których efektem byłounieruchomienie całego centrum danych.

Ze względu na pojawianie się nowych konstrukcji modułowych typu macierzowego przeznaczonych do celów obliczeniowych i przechowywania danych, awaria pojedynczej szafy (po lewej stronie) zaczyna być postrzegana przez kierowników działów IT jako „lepsza” awaria. Dzieje się tak, gdyż dostępna obecnie nadmiarowość zasobów zapewnia centrum danych możliwość przetrwania nawet w przypadku awarii pojedynczych elementów. Wraz z rosnącą popularnością architektur odpornych na awarie w centrach danych będą dopuszczalne uszkodzenia większej liczby elementów, które nie będą jednak powodować całkowitej awarii systemu. Kiedy spełnią się nadzieje pokładane w serwerach kasetowych odnośnie ich bezproblemowej odporności na awarie, uszkodzenie jednej, dwóch, trzech, a nawet większej liczby szaf będzie zdarzeniem, które nie sprawi większych kłopotów.


Implikacje dla infrastruktury NCPI
Ten nowy paradygmat zarządzania awariami — przewidywanie, że kilka modułów z pewnością ulegnie awarii, w połączeniu z zaawansowanym przygotowaniem w celu uniknięcia skutków tej awarii — wpływa na sposób, w jaki nowa architektura IT powinna być chroniona przez infrastrukturę fizyczną sieci o znaczeniu krytycznym. Na przykład warstwa IT w centrach danych będzie coraz bardziej odporna na awarie, a więc stosowanie pojedynczego, dużego zasilacza UPS będzie stawało się nie optymalne, ponieważ jego awaria spowoduje wyłączenie całego systemu — jest to niepożądany efekt w przypadku odpornego na awarie centrum danych, które może przetrwać utratę szafy. Gdyby zasilacze UPS zostały rozproszone w całym centrum danych (po jednym zasilaczu dla każdej szafy), awaria pojedynczego zasilacza UPS miałaby wpływ tylko na jedną szafę, a nie na cały system. Pomimo że większa liczba zasilaczy UPS powoduje zwiększenie prawdopodobieństwa awarii pojedynczego zasilacza, taka sytuacja może być dopuszczalna dla systemu. Przyjmijmy, że do unieruchomienia całego systemu konieczna jest awaria trzech szaf. W takim przypadku trzy zasilacze UPS musiałyby jednocześnie ulec awarii, aby cały system przestał działać. Prawdopodobieństwo takiego zdarzenia jest bardzo niskie — znacznie mniejsze niż ryzyko awarii pojedynczego, dużego zasilacza UPS. Z tego powodu teoria niezawodności zdecydowanie faworyzuje rozproszoną architekturę zasilania i chłodzenia, gdyż dzięki niej systemy IT są bardziej odporne na awarie.

Porównanie monolitycznej i modułowej infrastruktury NCPI
Architektura infrastruktury fizycznej sieci o znaczeniu krytycznym (NCPI) praktycznie nie zmieniła się w ciągu przeszło 30 lat historii centrów danych. Zarówno w najmniejszych pomieszczeniach komputerowych, jak i w największych obiektach korporacyjnych stosowany jest stały model infrastruktury fizycznej, który stanowi scentralizowaną instalację ochrony zasilania i chłodzenia. Prace konstrukcyjne nad tego rodzaju infrastrukturą prowadzą do stworzenia monolitycznej, unikatowej konfiguracji sprzętu i połączeń. Zastąpienie takiej architektury konstrukcją modułową sprawi, że infrastruktura NCPI nie tylko będzie mogła poprawnie obsługiwać modułowe, odporne na awarie urządzenia IT, lecz również sam sprzęt NCPI będzie mógł korzystać z zalet modułowości — włącznie z niezawodnością zapewnianą przez odporność na awarie.

Zalety modułowości dla infrastruktury NCPI
Dlaczego modułowa infrastruktura NCPI zastąpi konwencjonalną, monolityczną infrastrukturę NCPI?

  • Możliwość skalowania i wzrostu. Modułową infrastrukturę NCPI można skalować zgodnie z aktualnymi wymaganiami informatycznymi centrum danych. Ta zaleta jest szczególnie ważna dla infrastruktury NCPI, w przypadku której stosowano tradycyjną metodę polegającą na jednorazowym wdrożeniu urządzeń zasilających i chłodzących dobranych pod kątem planowanych, maksymalnych wymagań urządzeń IT. Takie postępowanie oznaczało znaczne marnotrawienie zarówno kapitału, jak i kosztów operacyjnych. Prostszy proces duplikacji. Konstrukcja modułowa oznacza produkowanie dużej liczby mniejszych urządzeń zamiast małej liczby dużych urządzeń. Większy wolumen produkcji oznacza niższą liczbę defektów. Mniejsza i prostsza konstrukcja umożliwia większą automatyzację i wymaga mniej pracy ręcznej podczas produkcji, dzięki czemu liczba defektów jest niższa.
  • Możliwość wyspecjalizowania funkcji modułów. Urządzenia do ochrony zasilania i chłodzenia mogą być produkowane w wielu różnych konfiguracjach dostosowanych do określonych wymagań dotyczących dostępności i chłodzenia różnych części centrum danych.
  • Szybka adaptacja do środowiska. Do centrów danych stale dodawane są nowe urządzenia, a sprzęt IT jest wymieniany co 2–3 lata. Oznacza to, że wyposażenie centrum danych ulega ciągłym modyfikacjom. Nowe urządzenia mogą mieć różne rozmiary i kształty, odmienne wymagania w zakresie zasilania lub chłodzenia, różne wtyczki itd. Modułowa infrastruktura NCPI ułatwia skalowanie lub zmianę konfiguracji w celu zaspokojenia tych zmieniających się potrzeb w branży IT.
  • Odporność na awarie. Tak jak odporny na awarie sprzęt IT umożliwia kontynuację pracy centrum danych w przypadku awarii jednego podzespołu, tak odporny na awarie sprzęt NCPI zapewnia ciągłe zasilanie lub chłodzenie w przypadku awarii podzespołu NCPI. Odporność na awarie można osiągnąć przez nadmiarowość urządzeń NCPI lub wewnętrzną nadmiarowość podzespołów wewnątrz urządzeń NCPI — na przykład przez zastosowanie dodatkowych modułów zasilania w zasilaczu UPS.


Podobnie jak we wcześniejszych studiach przypadków konstrukcji modułowej, pierwsze cztery atrybuty, które przedstawiono powyżej, mają ogromny wpływ na powodzenie konstrukcji, ale piąty z nich — odporność na awarie — odgrywa rolę krytyczną. Co więcej, ponieważ działanie centrów danych jest ściśle uzależnione od zasilania i chłodzenia, niezawodność wynikająca z odporności na awarię jest równie ważna dla infrastruktury NCPI, jak dla chronionego przez nią sprzętu IT. Odporne na awarie centrum danych bez odpornej na awarie infrastruktury NCPI jest tyle samo warte, co podwieszany most o szerokiej jezdni, lecz słabych linach.

Wniosek
Przejście od konstrukcji monolitycznej do modułowej stanowi naturalną ewolucję złożonych systemów ze względu na wydajność, elastyczność i niezawodność tej drugiej. Poznanie historii sukcesów ułatwia przekonanie się o potencjale modułowości w zakresie możliwości wprowadzenia znaczących, a wręcz rewolucyjnych ulepszeń systemów, które od momentu swojego powstania miały monolityczną formę i nigdy nie były postrzegane w inny sposób. Odporność na awarie i inne ważne atrybuty modułowości — możliwość skalowania, adaptacji, specjalizacji i duplikacji — są bezsprzecznie i nieodłącznie związane zarówno ze stworzonymi przez człowieka systemami modułowymi, jak i organizmami naturalnymi.
Branża IT mogła się już przekonać o tych zaletach w momencie wprowadzenia modułowych konstrukcji  służących do składowania danych i zastosowań obliczeniowych, takich jak macierze RAID i serwery kasetowe. Co więcej, centra danych niedługo pójdą w ślady innych branż, takich jak przemysł lotniczy, wdrażając w całych systemach pewien atrybut konstrukcji modułowych, który był wykorzystywany w systemach o znaczeniu krytycznym już od lat 70. ubiegłego wieku: odporność na awarie. Koncepcja odporności na awarie mówi, że dokładna kontrola jakości podzespołów to tylko pierwszy krok do osiągnięcia niezawodności systemu, a podstawową taktyką zapewniającą niezawodność jest utrzymanie ciągłej pracy systemu w przypadku awarii podzespołu.
W miarę jak modułowość i odporność na awarie stają się nowym modelem przy projektowaniu centrów danych, także infrastruktura fizyczna sieci o znaczeniu krytycznym musi podążać w tym samym kierunku, tak aby umożliwić skuteczną ochronę tych centrów danych, lecz również wykorzystać modułowość do poprawy własnej wydajności, elastyczności i niezawodności.



Neil Rasmussen, Suzanne Niles
Na podstawie: apc.com

Zapraszamy do skomentowania artykułu

Treść opini 
Popis 

Pozostałe artykuły z tej kategorii