Cloud computing - co to jest i jaka jest jego przyszłość?
Cloud computing, czyli obliczanie w chmurze. Ta technologia ma coraz mocniejszą pozycję w świecie IT. Jedni ja zachwalają, inni mają wątpliwości. Wraz z Maciejem Kuźniarem, głównym architektem polskiej chmury obliczeniowej Oktawave, postanowiliśmy przybliżyć temat cloud computingu - czym jest, jak działa i jakie my, jako użytkownicy, czerpiemy z niego korzyści.
Cloud computing, co w wolnym tłumaczeniu oznacza przetwarzanie w chmurze lub po prostu chmurę obliczeniową, to nowoczesny model przetwarzania danych, w którym zasoby IT dostarczane są jako "usługa na żądanie". Jest więc to model, w którym przechowywanie aplikacji i informacji odbywa się nie bezpośrednio na naszych komputerach, ale na serwerach umieszczonych poza lokalną siecią. Jest to wreszcie nowa, niestandardowa forma hostingu, czyli udostępnienia zasobów na pracującym bez przerwy serwerze. Mówiąc prościej, wszystkie nasze serwisy, programy, aplikacje i dane znajdują się w wirtualnej przestrzeni, do której dostęp uzyskuje się przez internet, za pomocą standardowych platform takich jak tablet, smartfon czy zwykły laptop.
Wraz z pojawieniem się pojęcia cloud computingu pojawiło się wiele prób zdefiniowania jego istoty. Dla tych bardziej wtajemniczonych, przedstawiamy standardową definicję ustaloną przez NIST - National Institute of Standards and Technology - amerykańską agencję federalną spełniająca funkcję zbliżoną do rodzimego Głównego Urzędu Miar. Brzmi ona następująco.
Przetwarzanie w chmurze to model pozwalający na wszechobecny, wygodny dostęp poprzez sieć do współdzielonej puli konfigurowalnych zasobów obliczeniowych (np. sieci, serwerów, pamięci masowej, aplikacji oraz usług), które w błyskawiczny sposób mogą zostać dostarczone i zwolnione, przy minimalnym zaangażowaniu lub interakcji z dostawcą usług. W pełni mierzalny system chmury daje klientom możliwość samodzielnego konfigurowania wszystkich parametrów usługi w dowolnym czasie i miejscu, w zależności od jego potrzeb, bez konieczności interwencji ze strony usługodawcy - twierdzą eksperci z polskiej firmy Oktawave, która specjalizuje się w usługach cloud computingu.
Nieważne jak prostym językiem przedstawiona zostałaby definicja chmury, żeby korzystać z jej usług, trzeba posiadać jako takie pojęcie o systemach operacyjnych, serwerach i sieciach. Żeby cieszyć się chmurą, wiedza jest nie tylko mile widziana, ale wręcz niezbędna. W przypadku chmury trzeba więc wykazać się pewnym poziomem opanowania zagadnień administracyjnych.
Wirtualna przestrzeń, czyli gdzie?
Jak już wcześniej wspomnieliśmy, nasze dane znajdują się w tzw. wirtualnej przestrzeni. Z reguły my, jako klienci, nie mamy 100 proc. wiedzy dotyczącej dokładnej lokalizacji dostarczanych zasobów. Jesteśmy w stanie określić lokalizację na wyższym poziomie abstrakcji (np. kraj, stan lub centrum przetwarzania danych). Ale jeżeli wyjątkowo zależy nam na szczegółowej informacji dotyczącej lokalizacji naszych danych, możemy zawrzeć taki wymóg w umowie i dostawca chmury może go spełnić.
Dla kogo jest chmura?
Chmura to rozwiązanie nie tylko dla indywidualnych użytkowników, ale przede wszystkim dla dużych, małych i średnich przedsiębiorstw, których nie było stać na zakup samodzielnych serwerów. Dzięki temu zyskują one możliwość skorzystania z gigantycznej mocy obliczeniowej, która wcześniej była zarezerwowana tylko dla tych przedsiębiorstw, które miały zasoby na budowanie zaawansowanych rozwiązać. Czyli dla nielicznych.
Jeśli mielibyśmy wskazać systemy, które wymagają tak dużej mocy, a zarazem idealnie sprawdzają się w środowisku cloudowym, byłyby to
- portale e-commerce, korzystające z sezonowości i promocji,
- popularne portale informacyjne lub poczytne blogi,
- systemy zarządzania firmą, CRM, ERP, obiegu dokumentów, systemy poczty elektronicznej,
- platformy wideo,
- platformy e-learningowe,
- platformy hostingowe,
- popularne portale społecznościowe i fora,
- systemy przetwarzania naukowego,
- wyszukiwarki, systemy analityczne, hurtownie danych,
- systemy backupu, disaster recovery,
- środowiska testowe.
Zeszłoroczne badania stowarzyszenia branży informatycznej CompTIA pokazały, że na 10 badanych firm, 8 korzystało z jakichś form chmur obliczeniowych, zaś niemal jedna trzecia wszystkich małych i mikrofirm w USA korzysta z rozwiązań typu IaaS.
Do czego służy chmura?
Sięgnijmy nieco głębiej. Pojawienie się chmury obliczeniowej to przede wszystkim duże ułatwienie dla przedsiębiorstw, które mogą oddać w outsourcing bazy danych, zarządzanie aplikacjami czy oprogramowanie. W ten sposób zrzucają one z siebie konieczność posiadania niezbędnych do ich przechowywania serwerów oraz pozostałej infrastruktury. Wzrost elastyczności, szybkość penetracji rynku, spadek ryzyka biznesowego, kontrola nad danymi, dostęp do najnowszych rozwiązań, eliminacja problemów z zarządzaniem strategicznym i przede wszystkim niskie koszty - to główne korzyści z takiego zastosowania chmury.
Pierwszym rodzajem zastosowań są wszystkie te, w których nie da się przewidzieć zapotrzebowania na moc obliczeniową. Będą to zarówno nowe aplikacje webowe wprowadzane na rynek, jak i kampanie reklamowe czy gry społecznościowe. Chmury, dostarczając zasobów na żądanie, pozwalają utrzymać dostępność usług bez względu na poziom zainteresowania ze strony internautów, a więc bez względu na to, jak dużo mocy obliczeniowej potrzebujemy w danym momencie.
Kolejne zastosowanie to przede wszystkim analityka biznesowa na wielkich zbiorach danych, przetwarzanie mediów, podejmowanie decyzji strategicznych w procesach zarządzania firmą i strategią marketingową czy wspomaganie procesów przygotowania produkcji.
Trzeci rodzaj zastosowań wiąże się z sytuacjami, w których obciążenia występują cyklicznie, w sposób znany i przewidywalny - może to być np. oprogramowanie, które raz w miesiącu wylicza wynagrodzenia pracowników korporacji czy wszelkiego rodzaju narzędzia raportujące.
Te powyższe zastosowania stanowią coś, co można nazwać szczególnymi przewagami chmury. To oznacza, że chmura - udostępniając serwery - spełnia również wszystkie te potrzeby, które daje nam po prostu serwer. To wszystko w chmurze dostajemy jako coś oczywistego, jako usługę bazową, a skalowalność, elastyczność i nieograniczoną moc - jako właśnie szczególną przewagę nad standardowymi rozwiązaniami.
Jakie są jej plusy?
Cloud computing to przede wszystkim naturalna ewolucja tradycyjnego systemu IT oraz ułatwienie sposobu prowadzenia firmy. Wykorzystanie rozwiązania z modelem chmury obliczeniowej to dla przedsiębiorstwa zwolnienie z odpowiedzialności za techniczne, często nie do końca zrozumiałe, szczegóły i procedury, sposób na efektywniejsze wykorzystanie mocy obliczeniowej i pamięci serwerów, na bezpieczniejsze przechowywanie danych, na szybsze dostarczanie informacji przez sieci czy też na prostsze zarządzanie oprogramowaniem.
Po pierwsze: wydajność
Wyobraźmy sobie sklep z bombkami. Wiadomo, że sprzedaż bombek aktywizuje się dopiero w okresie przedświątecznym. Właściciele takich sezonowych sklepów internetowych często doświadczają przykrego zjawiska, jakim jest osiągnięcie limitu mocy procesora, ilości RAM lub miesięcznego transferu w standardowych usługach hostingowych. W tym czasie sklep staje się niedostępny dla potencjalnych klientów, a właściciel traci pieniądze i to w okresie, kiedy generuje większość swojego obrotu. W chmurze obliczeniowej w takiej sytuacji zadziałałby mechanizm Autoskalera. Jest to system, który na bieżąco sprawdza obciążenie i w dynamiczny sposób podwyższa lub zmniejsza parametry zamówionej usługi. Autoskaler działa automatycznie, to znaczy, że nie musisz się martwić o to, że trzeba o czymś pamiętać. Jeśli jednak chcesz mieć pełną kontrolę, na Autoskaler możesz nałożyć ręcznie ograniczenia, np. kwotowe.
Po drugie: brak awarii
Każda awaria fizycznego serwera to koniec wirtualnej maszyny, przynajmniej do czasu usunięcia usterek. W najgorszym razie, może się okazać, że straciliśmy wszystkie dane i trzeba przywracać serwer z kopii zapasowej. Nie brzmi zachęcająco, prawda?
Prawdziwe chmury obliczeniowe zapewniają tymczasem dodatkową pamięć masową i automatyczne przenoszenie wirtualnych serwerów pomiędzy fizycznymi platformami, w razie awarii któregoś z nich - serwer taki może zostać uruchomiony natychmiast na dowolnym innym komputerze dysponującym wymaganą ilością zasobów. Dlatego też najlepsze platformy cloud computingu mogą zagwarantować klientom umowy SLA na poziomie 100 proc. - i nie będzie to tylko chwyt marketingowy. Dla maszyn wirtualnych w chmurze okres przestoju po prostu nie występuje.
Po trzecie: oszczędność
Za technicznymi udogodnieniami idzie również obniżka kosztów. Z badania przeprowadzonego w 2011 roku na zlecenie Komisji Europejskiej przez IDC wśród firm, które korzystają z chmury obliczeniowej, wynika, że oszczędności związane z użytkowaniem systemu wyniosły średnio 10-20 proc. kosztów IT. W przypadku 36 proc. przebadanych przedsiębiorstw wykorzystanie cloud computingu wygenerowało oszczędności w wysokości 20 proc. wydatków na IT lub wyższej.
Oszczędności kosztów wynikają przede wszystkim z tego, że najczęściej do utrzymania VPS-a czy też tradycyjnego serwera doliczana jest opłata instalacyjna, bardzo często też te atrakcyjne miesięczne ceny obowiązują tylko wtedy, gdy podpiszemy umowę na czas określony. Trzeba też pamiętać, że za taki serwer płaci się zawsze tyle samo, bez względu na to, czy był on faktycznie wykorzystywany.
Korzystając z chmury, płacimy tylko za to, co faktycznie wykorzystujemy: koszt obliczany jest na podstawie zarezerwowanej mocy i zasobów, przemnożonych przez liczbę godzin działania serwera w chmurze. Co więcej, gdy dokładnie policzymy miesięczne koszty chmury obliczeniowej i porównywalnego (na papierze) VPS-a, zauważymy, że w wielu wypadkach chmura będzie tańsza - a już na pewno nie będziemy musieli wnosić "opłat aktywacyjnych" czy podpisywać długoterminowych umów.