Chmura, czyli właściwie co?
W Sekcji Archeo w pulsarze prezentujemy archiwalne teksty ze „Świata Nauki” i „Wiedzy i Życia”. Wciąż aktualne, intrygujące i inspirujące.
Aby dobrze zrozumieć pojęcie chmury, trzeba cofnąć się do wielkiej rewolucji mikrokomputerowej, która zaczęła się w latach 80. ub.w. Na prawie każdym biurku i w prawie każdym domu pojawił się wówczas komputer – najczęściej maszyna zgodna ze standardem PC – i wraz z nim aplikacje pozwalające na podstawowe czynności (edycję tekstu, obliczenia, zabawę, obróbkę zdjęć). Komputer osobisty – „wyspa informacyjna” wyposażona w twardy dysk i zestaw aplikacji, przeznaczona dla jednego lub kilku użytkowników – przeszedł do historii wraz z internetem. Podłączenie go do sieci ostatecznie sprawiło, że przestał być osobisty. Początkowo statyczne strony WWW zaczęły powoli zamieniać się w ruchome, a ruchome przekształciły się w serwisy on-line. Wraz z pojawieniem się pierwszych serwisów bankowości internetowej, Allegro, komunikatora Gadu-Gadu, Naszej Klasy i portali granica pomiędzy „wyspą” komputera (coraz mniej) osobistego a internetem zaczęła się zacierać.
Dane, które trafiały do naszego komputera poprzez globalną sieć, trzeba było gdzieś przechowywać i przetwarzać. Gdzie konkretnie – użytkownika to nie interesowało. Gdzieś tam, daleko, w internecie. Ikona chmury stosowana na diagramach architektur systemów, aby przedstawić zasoby docierające do użytkownika z sieci, stała się nazwą rodzajową, a słowo cloud – opisem technologii. Na dobre chmura zagościła w naszym świecie wraz z pojawieniem się smartfonów. Małe urządzenie z ograniczoną mocą obliczeniową, niewielkim ekranem i skromną pamięcią zwyczajnie nie nadawało się do przetwarzania dużej ilości informacji. Zmiana modelu korzystania z usług cyfrowych – ściągam apkę, ona zbiera dane i wysyła je do przetworzenia, wyniki wracają do mnie po sieci – stała się koniecznością.
Centrum danych
Sercem chmury obliczeniowej jest centrum danych (ang. data center). To wielka klimatyzowana hala (największe centra mają powierzchnię kilkudziesięciu boisk piłkarskich) z dziesiątkami tysięcy komputerów (serwerów) umieszczonych w specjalnych szafach, które zapewniają zasilanie, łączność i klimatyzację. Szafa zawiera od kilkunastu do kilkudziesięciu płyt serwerowych, z których każda jest pełnowymiarowym komputerem, tj. posiada procesor (albo kilka), pamięć operacyjną i układy peryferyjne.
Podstawową technologią chmury jest wirtualizacja. Dzięki specjalnemu oprogramowaniu jeden komputer fizyczny potrafi udawać, że jest wieloma – trzema, pięcioma, dwudziestoma – komputerami wirtualnymi. Każdy z tych wirtualnych komputerów przez aplikację traktowany jest tak, jakby był pełnowartościowym fizycznym urządzeniem – choć w rzeczywistości pozostaje tylko software’owym duchem tworzonym w pamięci fizycznego komputera razem z innymi niewiedzącymi o sobie duchami. Wirtualizacja umożliwia rekonfigurację środowiska w zależności od potrzeb aplikacji. Potrzebujemy jednej silnej maszyny do obliczeń naukowych? Proszę bardzo, całą moc fizycznej maszyny przeznaczamy dla jednego serwera wirtualnego. Potrzebujemy dziesięciu serwerów internetowych, aby klienci z różnych stron świata mogli korzystać z serwisu księgowego? Nie ma problemu, na tej samej fizycznej maszynie powołujemy do życia dziesięć serwerów wirtualnych, każdy dla innego klienta. Potrzebujemy komputera o niewielkiej mocy obliczeniowej, za to dużej pamięci masowej, do przechowywania multimediów? Ależ oczywiście, dynamicznie przydzielamy takiej maszynie wirtualnej cząstkę fizycznej mocy obliczeniowej, za to całą macierz dyskową – i mamy taką specjalistyczną konfigurację. Wszystko bez przekładania kart i przepinania kabli w chłodzonych szafach centrum danych.
Ta sama grupa krzemowych kości (chipów) czasami więc służy jednej firmie, czasami innej, czasami pomaga w rezerwacji biletów lotniczych, a czasem w obliczeniach trajektorii satelitów. Przydziałem odpowiedniej mocy do odpowiedniego zadania zajmuje się oprogramowanie do zarządzania centrami danych. To ono klasyfikuje odpowiednie szafy i serwery do określonych klientów i zadań, powołuje do życia serwery wirtualne i zamyka je, gdy przestają już być potrzebne. Przewiduje, kiedy np. popyt rośnie i trzeba dołożyć moc obliczeniową oraz pamięć, a kiedy pojawia się ich nadmiar i można je zabrać danemu klientowi (przy okazji obniżając jego rachunki). Szczególnie istotnym procesem tutaj jest optymalizowanie zużycia energii. Prąd i jego pobór to najważniejsze elementy kosztów centrum danych. Dość powiedzieć, że jedna szafa może potrzebować nawet 30 kW mocy, a całe centrum danych – np. norwesko-amerykański Kolos w miasteczku Ballangen niedaleko Narwiku – aż jeden gigawat. Przypomnijmy: typowa moc bloku elektrowni węglowej (np. Kozienice) to ok. 500 MW, czyli o połowę mniej.
Dlaczego lokowanie centrów danych ma największy sens w rejonach arktycznych? Po pierwsze, ze względu na koszty gruntu. Po drugie i ważniejsze, ze względu na koszty klimatyzacji. Odprowadzanie ciepła to dzisiaj bez wątpienia najważniejszy problem sprzętu komputerowego, zwłaszcza ciasno upakowanych architektur sprzętowych jak serwery. Sprawnie funkcjonująca klimatyzacja, która gwarantuje, że sprzęt się nie „zagotuje” i nie stopi ani nie zapali, to fundament działania data center. Znacznie łatwiej i taniej można zapewnić takie chłodzenie w regionie, gdzie przez większą część roku jest zimno; a dodatkowym zyskiem jest możliwość wykorzystania odprowadzonego ciepła do ogrzewania domów i budynków publicznych.
Luleå to miasto położone na północy Szwecji. Do niedawna znane było tylko z przemysłu wydobywczego i drzewnego. Ale ostatnio Facebook otworzył tam swoje trzecie z kolei centrum danych. Zajmuje ono 100 tys. m2 i stanowi największe w Europie miejsce hostingu popularnej sieci społecznościowej. Można założyć, że dane polskich użytkowników znajdują się w większości tam, wśród jezior i lasów Skandynawii, niedaleko koła podbiegunowego. Szwecja – ze swoim optymalnym miksem energetycznym (połowa energii z elektrowni jądrowych, połowa ze źródeł odnawialnych, przede wszystkim elektrowni wodnych), arktycznym klimatem, stabilnym systemem prawnym, wykształconą kadrą inżynierską i dobrym wsparciem inwestycji – ma wszystkie atuty dla inwestorów centrów danych. Jeden lajk – i dane lecą do Luleå. Jedno odświeżenie strony – i tekst, zdjęcia i multimedia lecą z powrotem do naszego komputera lub smartfona. Wszystko dzieje się w ułamkach sekund, a setki świetnie wykształconych i równie dobrze opłacanych specjalistów dzień i noc nadzorują ten proces – dbając o energię, temperaturę, prędkość działania, przydział mocy obliczeniowych oraz integralność i bezpieczeństwo danych.
W Polsce największymi centrami danych dysponują banki, firmy energetyczne, portale oraz firmy hostujące usługi dla innych jednostek. Polski rząd inwestuje właśnie w rządową chmurę obliczeniową – na partnera wybrana została firma Google.
Usługa tworzy chmurę
Ale udostępnienie sprzętu i systemu operacyjnego to tylko początkowy i najprostszy element chmury obliczeniowej. Prawdziwą wartość pokazuje ona w aplikacjach. Przykład nawigacji drogowej jest znany niemal każdemu kierowcy. Stary model tej usługi, oparty na „informacyjnej wyspie” jednego urządzenia, polegał na korzystaniu z odrębnych tabletów, jeszcze nie tak dawno kupowanych w sklepach RTV i przylepianych do przedniej szyby. Potrafił doprowadzić z punktu A do punktu B i nie wymagał bieżącej łączności z chmurą. Kiedy jednak porównamy go z usługą chmurową taką jak Google Maps, widzimy jej ewidentne zalety. Chmura zbiera dane od setek tysięcy kierowców – zna więc stan ruchu na drogach, miejsce kolizji i utworzenia się korka. Wie o pracach drogowych – i powie nam, że ten odcinek, którym zawsze jeździliśmy, został zamknięty i trzeba wybrać inną trasę. Chmura podpowie także drogę alternatywną – i zrobi to szybciej niż jedno urządzenie o ograniczonej mocy obliczeniowej, niedysponujące informacjami dostarczonymi przez innych kierowców.
O chmurze małej i dużej
Wirtualizacja – technologia, dzięki której jeden fizyczny serwer może „udawać” wiele serwerów logicznych
IaaS – infrastructure as a service – wykorzystanie technologii wirtualizacji do dynamicznego programowego tworzenia serwerów, sieci itd. na podstawie istniejących w chmurze zasobów sprzętowych; jeden z trzech głównych modeli udostępniania chmury
PaaS – platform as a service – możliwość dynamicznego programowego tworzenia platform o zadanej wydajności i zasobach, np. nowej bazy danych, serwerów plików, serwerów WWW; jeden z trzech głównych modeli udostępniania chmury
SaaS – software as a service – „wynajmowanie” oprogramowania zamiast jego zakupu poprzez opłacanie abonamentu bez praw do licencji; jeden z trzech głównych modeli udostępniania chmury
Wyważanie ruchu – ang. load balancing – dynamiczne tworzenie i przydzielanie nowych serwerów oraz przekierowywanie do nich nowych żądań w okresie nasilenia ruchu, np. przedświątecznej sprzedaży; jedna z technologii pomagających w zarządzaniu chmurą obliczeniową
Zielone IT – grupa technologii wspierających, ukierunkowanych na ograniczenie wpływu środowiskowego chmury: zużycie energii, surowców, metali ziem rzadkich, wykorzystanie odprowadzonego ciepła
Zalety chmury widać także doskonale w bardziej zaawansowanych zadaniach, takich jak analiza ludzkiej mowy. Analizator musi mieć ogromny zasób słów i jednocześnie trenować swoją sztuczną inteligencję na setkach tysięcy wypowiadanych fraz. Odbywa się to poprzez uczenie aplikacji rozumienia dźwięków i zdań. Nie dałoby się tego zrobić bez dostępu do setek tysięcy czy milionów próbek głosu. Tylko dzięki temu, że takie próbki wysyłane są do data center i tam przetwarzane za pomocą potężnych maszyn, możemy dzisiaj wypowiedzieć: „Zadzwoń do Tomka Kowalskiego” – i nasz smartfon będzie wiedział, że „Tomek” może być zapisany jako Tomasz, więc powinien odnaleźć kontakt „Kowalski, Tomasz” na liście, wybrać apkę telefonu i zainicjować połączenie.
Chmura obliczeniowa ma kolosalne znaczenie dla biznesu i kosztów jego prowadzenia – zwłaszcza w tych segmentach rynku, gdzie występują wahania popytu. Wyobraźmy sobie firmę skupującą produkty rolne – zboża, owoce, runo leśne. Od maja do września musi przeprowadzać tysiące transakcji, od października do kwietnia dzieje się niewiele. Wynajmując niezbędną moc obliczeniową i płacąc tylko za jej zużycie, nie zaś za konkretne serwery (które przez pół roku stałyby nieużywane), może zoptymalizować koszty. A tymczasem dostawca chmury obsługuje za pomocą tych samych urządzeń firmy handlowe (szczyt popytu przed Bożym Narodzeniem), finansowe (przeżywające zamknięcie roku obrachunkowego) i operatorów turystycznych (którzy najwięcej sprzedają wiosną). Korzystają wszyscy – ze środowiskiem naturalnym włącznie, bo dzięki temu optymalizowane jest zużycie surowców i energii.
Wreszcie chmura pozwala korzystać z istniejących rozwiązań bardzo szybko i rozliczać się za faktyczne zużycie, a nie za gotowość. Gdy ktoś kiedyś chciał uruchomić jakąś niszową działalność handlową, np. sklep ze sprzętem do prac wysokościowych, musiał kupić serwer, stworzyć (lub zainstalować) oprogramowanie, zlecić i opłacić kampanię reklamową, zasilić sklep danymi o towarach, mozolnie pozyskiwać klientów i realizować zamówienia. Dzisiaj może kompleksową usługę sprzedażowo-marketingową zamówić w chmurze i uruchomić dosłownie w ciągu kilku dni – jeśli stworzy bazę produktową i znajdzie kogoś, kto będzie te produkty pakował i wysyłał. Wystarczy tylko opłacić odpowiedni abonament i poświęcić trochę czasu na wklepanie danych o towarach. Wszystkie pozostałe usługi – sprzęt, system operacyjny, oprogramowanie sklepu, wyważanie obciążenia w chwilach szczytu zapotrzebowania, bezpieczeństwo, obsługę płatności i wiele, wiele innych – zapewni dostawca chmury w ramach jednej licencji. Cały ten pakiet kosztuje kilkaset lub kilka tysięcy złotych miesięcznie; sklep można postawić w ciągu tygodnia. Zbudowanie całej infrastruktury i zakup oprogramowania, które obsługiwałoby sprzedaż internetową, kosztowałoby setki tysięcy złotych i trwało tygodnie, jeśli nie miesiące.
Kolejne popularne usługi, z których użytkownik urządzeń elektronicznych i internetu korzysta na co dzień, stykając się tym samym z chmurą obliczeniową, to np. poczta elektroniczna. Dzisiaj mało kto przechowuje wiadomości na własnym komputerze; przeciwnie, trafiają one na serwer (czyli właśnie do chmury) i stamtąd są wyświetlane na ekranie smartfona lub komputera. Jeszcze lepszym przykładem są zdjęcia. Dzisiaj robimy zdjęcie za pomocą urządzenia przenośnego, a ono jest (w tle) automatycznie wysyłane do bezpiecznego miejsca. Tam można zdjęcie poddać obróbce za pomocą filtrów (np. w serwisie Instagram), udostępnić w sieciach społecznościowych, a także zapewnić sobie kopię zapasową – na wypadek, gdybyśmy komórkę zgubili.
Ta wygoda okupiona jest jednak pewną ceną, z czego wszyscy powinniśmy zdawać sobie sprawę.
Ciemniejszy spód chmury
Amerykańskie przysłowie mówi, że nawet najciemniejsza chmura ma srebrzysty obręb – co jest metaforą odpowiadającą naszemu: „Nie ma tego złego, co by na dobre nie wyszło”. Chmura obliczeniowa zaś obok wielu wygód i zalet ma także ciemny spód – wady, o których niechętnie mówią dostawcy. Po pierwsze i najważniejsze: bezpieczeństwo. Informacje przesyłane internetem do centrum danych i przechowywane tam (potencjalnie w nieskończoność) mogą stamtąd „wyciec” i zostać wykorzystane przez osoby lub organizacje, które – oględnie mówiąc – nie życzą nam dobrze. Najbardziej spektakularne historie dotyczą przechwycenia prywatnych zdjęć. Dwa lata temu kilka aktorek Hollywood – podobnie jak niedawno amerykańska deputowana do Izby Reprezentantów – przekonało się, jak wielkie zagrożenie dla ich prywatności stanowi przechowywanie takich plików w chmurze. Ale wyciekają znacznie poważniejsze rzeczy: hasła do serwisów, numery kart kredytowych, prywatne wiadomości, plany polityczne i strategie biznesowe. Hillary Clinton być może wygrałaby wybory, gdyby nie wykradzione z chmury przez rosyjskich hakerów i przekazane nieprzychylnym jej mediom wiadomości. Co miesiąc kilkanaście tysięcy osób musi liczyć się z utratą prywatności i koniecznością udowadniania, że są tymi, za kogo się podają. W Polsce realne ryzyko dotyczy nie tylko utraty reputacji, ale także wiarygodności kredytowej – poprzez umożliwienie przestępcom wyłudzeń albo wzięcia kredytów na cudze konto.
W realiach biznesowych powierzenie przetwarzania danych zewnętrznemu dostawcy, w chmurze, rodzi rozmaite problemy regulacyjno-prawne. Jeżeli dane bankowe polskich użytkowników przetwarzane są w centrach w Kanadzie czy Szwecji, to jak ma się to do polskiego prawa, które wymaga, aby informacja finansowa nie opuszczała terenu Rzeczypospolitej? Jak się upewnić, że dane przetwarzane przez dostawcę na temat naszej rodziny, krewnych, przyjaciół i klientów nie są porcjowane, dzielone na grupy, a następnie sprzedawane bez naszej wiedzy reklamodawcom? Wreszcie jak chronić bezpieczeństwo polskiego rządu, skoro dostawcą chmury dla państwa polskiego mają być amerykańskie firmy, a tamtejszy CLOUD Act (CLOUD jest tutaj zręcznym skrótem od clarifying lawful overseas use of data, czyli „wyjaśnienie uprawnionego dostępu do danych”) daje amerykańskiemu rządowi i jego agencjom prawo do praktycznie nieograniczonych inspekcji w tamtejszych centrach danych?
Chmura w powiązaniu z rodziną innych technologii, tj. internetem, analityką dużych zbiorów danych (tzw. big data) oraz uczeniem maszynowym, to jedna z tych technologii, które są tyleż piękne, co straszne. Piękne – bo otwierają nowe możliwości dla każdego z nas i dla całej ludzkości. Dzięki nim jesteśmy w stanie analizować dane na temat zmian klimatu i zderzeń w genewskim CERN-ie, optymalizować trasy samochodów i łańcuchy logistyczne, poznawać tajemnice nici DNA i propagację zanieczyszczeń w oceanach. Straszne – bo jednocześnie coraz bardziej osaczają nas sprzedawcy i reklamodawcy, niedemokratyczne rządy represjonują dysydentów, a fake newsy roznoszą się z prędkością światła.
Chmura jutra
Rynek technologii chmurowych rośnie o jakieś 20% rocznie i analitycy są wielkimi optymistami, jeśli chodzi o utrzymanie tego trendu. Przewidują, że chmury będą jednocześnie rosnąć i maleć. Rosnąć będą centra danych – ich liczba, wielkość i moc. A jednocześnie maleć będzie skala chmur – pojawią się np. chmury domowe (wszystkie obecne w domu inteligentne urządzenia zostaną z sobą połączone). Zdjęcia, które jeden z domowników wykonał na wakacjach, od razu będą dostępne na inteligentnym telewizorze, a analiza treści rozmów dokonana przez urządzenie typu Amazon Echo albo Google Home pozwoli dobrać muzykę i film na wieczór albo pomóc w rezerwacji biletów na koncert.
Chmura umożliwi biznesowi większą dynamikę. Jeśli masz pomysł, dzisiaj zakładasz biznes. Jutro dostawca chmury zapewni ci infrastrukturę pracy grupowej: pocztę, komunikator dla pracowników, kalendarz i aplikacje biurowe. Pojutrze z gotowych komponentów sam zbudujesz aplikacje, które pozwolą ci stworzyć innowacyjne usługi i kampanię reklamową oraz pozyskać klientów. Pod koniec tygodnia zobaczysz pierwsze pieniądze na koncie, a twoi konkurenci zaczną się zastanawiać, kto to jest i skąd, do diabła, się wziął.
Chmura otworzy także nowe obszary zastosowań w przemyśle i tkance miejskiej. W niedawno opublikowanym artykule pokazywaliśmy, jak zmienią się miasta pod wpływem technologii smart city oraz łączności 5G. Dopełnieniem tej rewolucji jest tzw. przemysł 4.0 – przestawienie fabryk na zrobotyzowane linie produkcyjne, komunikujące się z sobą urządzenia oraz w pełni autonomiczny transport. Wszystko to będzie możliwe jedynie z wykorzystaniem zdalnych mocy obliczeniowych dostępnych z chmury.
W samych technologiach chmurowych coraz większy nacisk będzie kładziony na efektywność energetyczną. Po pierwsze, ze względu na koszty (już dzisiaj energia stanowi około połowy kosztów centrum danych); po drugie, ze względu na opinię publiczną. Wyścig, kto dostarczy dzisiaj najbardziej „zieloną moc obliczeniową”, trwa, a firmy prześcigają się w parametrach takich jak odsetek serwerów zasilanych przez źródła odnawialne albo emisja dwutlenku węgla na petaflops (jednostkę mocy obliczeniowej).
Chmura jak prąd
Technologie chmury obliczeniowej są na najlepszej drodze, by stać się czymś takim jak prąd elektryczny. Jest niezbędny praktycznie we wszystkim, wszyscy z niego korzystamy i dopiero przerwanie zasilania uświadamia nam, jak bardzo potrzebujemy go na co dzień. Mimo że w tle stoi złożona infrastruktura – reaktory jądrowe, bloki cieplne, panele słoneczne, biogazownie, sieci, transformatory oraz równoważenie podaży i popytu – dla odbiorcy końcowego usługa jest banalnie prosta. Ot, gniazdko w ścianie i rachunek za prąd – to wszystko. Podobnie będzie – a do pewnego stopnia już jest – z chmurą. Gdzieś tam daleko znajdują się centra danych, zaawansowane architektury sprzętowe, inteligentne algorytmy – ale dla nas to wszystko staje się prostą apką na ekranie smartfona lub tabletu, inteligentnym domem, autonomicznym pojazdem albo gadającym domowym urządzeniem. Cała złożoność tego środowiska redukowana jest do kliknięć i poleceń głosowych – oraz rachunku, który raz w miesiącu trzeba opłacić. Taka jest przyszłość chmury obliczeniowej i zapewne w nadchodzących latach nasza aktywność życiowa i gospodarcza będzie w coraz większym zakresie oparta na technologii chmury. Oby z korzyścią dla wszystkich – ludzi, firm i środowiska naturalnego.