Jak sobie radzić z dużą chmurą

W przypadku firmy BAE Systems, której klienci są związani z operacjami militarnymi lub wywiadowczymi, bezpieczeństwo przechowywanych danych jest poważnym wyzwaniem. W systemach dla takich klientów występują informacje o różnym stopniu klasyfikacji, gdzie proces certyfikacji obejmuje każdą z agencji rządowych z osobna. Zasoby danych muszą być replikowane i transmitowane zgodnie z założeniami zależnymi od klasyfikacji, przy czym należy uwzględnić wiele regulacji federalnych, które muszą być przestrzegane przez klientów, a więc także przez BAE Systems.

Skalowanie w górę i w dół

Firma Yahoo! ma własne środowisko chmury prywatnej o rozmiarze ponad 200 PB, złożone z wielu tysięcy serwerów rozproszonych w wielu lokalizacjach na świecie. Yahoo! zdecydowała się na rozwój infrastruktury chmury prywatnej na potrzeby hostowania 11 mld stron internetowych, gdyż potrzebowała ekstremalnej wręcz skalowalności i elastyczności środowiska. Każda firma, która działa w skali właściwej dla Yahoo! (serwisy mają ponad 700 mln użytkowników), musi szybko budować nowe aplikacje i dostarczać strony tak sprawnie, jak to tylko możliwe. Aby osiągnąć oczekiwaną szybkość przetwarzania, Yahoo! korzysta z najnowocześniejszego dostępnego sprzętu, w tym z bardzo szybkich pamięci SSD, wprowadzając sprawny mechanizm pamięci podręcznych (cache) w różnych miejscach infrastruktury.

Według Elissy Murphy, wiceprezes działu rozwoju nowych produktów w Yahoo!, prywatna chmura tej firmy dostarcza dane z prędkością, z którą nie może się równać żaden z publicznych dostawców. Dla Yahoo! poważnym wyzwaniem jest możliwość nadążania za obciążeniem serwisu i skalowaniem w górę i w dół, zależnie od potrzeb. Elissa Murphy przedstawia przykład: "Gdy umieszczamy ważne wiadomości, o których wiadomo że wygenerują duży ruch, możemy pozyskać konieczną wydajność do obsłużenia szczytu obciążenia serwisu dzięki dedykowaniu do tego zadania serwerów, które dotąd służyły do zadań o niższym priorytecie, takich jak przetwarzanie wsadowe".

Skalowanie chmury Yahoo! jest możliwe dzięki opracowanej wewnętrznie technologii, ale każde środowisko cloud computing o dużej skali wdrożenia będzie musiało takie możliwości rozwinąć.

Spójne dane w wielu lokalizacjach

Gdy organizacja potrzebuje ultrawysokiej skalowalności, jednym z wyzwań jest utrzymywanie informacji w spójnym stanie we wszystkich ośrodkach. W przypadku portali dochodzi problem wrażenia użytkownika i jego prywatności - na przykład zagadnień związanych z przestrzeganiem lokalnego prawa regulującego przestrzeganie prywatności użytkowników.

Yahoo! jako jedna z pierwszych firm korzysta na masową skalę z bazy NoSQL, przy czym informacje tam składowane są synchronizowane pomiędzy wieloma regionalnymi centrami przetwarzania danych. Aby zapewnić skalowalność i niezawodność pracy aplikacji, korzysta się z platformy Apache Hadoop. Według Elissy Murphy, ponad 70% kodu Hadoop zostało dostarczone właśnie przez Yahoo!. Platforma ta umożliwia skalowalne przetwarzanie danych - od pojedynczego serwera czy prostych klastrów kilkuserwerowych do rozległych klastrów zawierających tysiące maszyn.

Dostosowanie się do dużych środowisk

Środowisko cloud computing wymaga innego sposobu myślenia o zarządzaniu zasobami w porównaniu do rozwiązań klasycznych, silosowych. Gdy w 2009 NASA rozpoczęła opracowywanie platformy usługowej pod kątem aplikacji webowych, powstały stąd projekt ujrzał światło dzienne pod nazwą Nebula. Szybko okazało się, że model infrastruktury jako usługi (IaaS) może być atrakcyjną alternatywą do oferowanej fizycznej infrastruktury, do której NASA potrzebowała fizycznych serwerów. Główna różnica dotyczyła szybkości wdrażania nowych projektów.

Projekt Nebula przeszedł z faz alfa i beta, podczas których testy prowadziło ponad 250 pracowników, teraz odbywa się ocena przydatności w wydziale misji naukowych NASA. Grupa odpowiedzialna za rozwój Nebuli pracuje nad wdrożeniem repozytorium usługowego dla składowania i pozyskiwania danych utworzonych przez aplikacje wykorzystujące techniki programowania obiektowego. W miarę potrzeb pojemność repozytorium będzie można rozszerzać do setek petabajtów.

Jednym z największych wyzwań dla projektu Nebula było przejście od małego projektu koncentrującego się na rozwoju aplikacji do dużej agencji. Występuje tu bardzo duża różnica między tworzeniem aplikacji na potrzeby obsługi chmury a samą obsługą środowiska chmury. Ponieważ jest to młoda technologia, nie ma jeszcze dobrze dopracowanych, podręcznikowych reguł, z których można skorzystać, by uzyskać bardzo dobre przyjęcie wewnątrz organizacji dla usług prywatnej chmury świadczonych na żądanie. Z kolei sam model cloud computing nie jest do końca dobrze rozumiany przez użytkowników wewnętrznych organizacji, zatem NASA musi opracować nowy model biznesowy dla takich usług i włączyć je do istniejących założeń polityki firmy i zaleceń. Okazuje się, że wdrożenie dużej chmury to poważne wyzwanie.