Czym jest chmura — IaaS, PaaS, SaaS
Chmura to coś więcej niż „czyjś komputer w internecie". W tej lekcji uporządkujesz trzy podstawowe modele usług i nauczysz się oceniać, co zarządzasz sam, a co bierze na siebie dostawca.
Czym właściwie jest chmura obliczeniowa?
Chmura obliczeniowa (ang. cloud computing) to sposób korzystania z mocy obliczeniowej — procesorów, pamięci, dysków i sieci — przez internet, bez kupowania i serwisowania własnego sprzętu. Zamiast stawiać serwer w biurze, wynajmujesz zasoby u dostawcy, który utrzymuje ogromne centra danych, a Ty płacisz za to, czego faktycznie używasz.
Dobra intuicja: energia elektryczna. Nie budujesz własnej elektrowni, żeby zapalić lampkę — podłączasz się do sieci i płacisz za zużyte kilowaty. Z chmurą jest podobnie: „podłączasz się" do czyjegoś centrum danych i płacisz za godziny pracy maszyn, zajęte gigabajty i przesłane dane.
Najważniejsze cechy tego modelu:
- Na żądanie (on demand) — zasoby uruchamiasz w kilka minut, bez składania zamówień i montowania sprzętu.
- Elastyczność — gdy ruch rośnie, dokładasz mocy; gdy spada, zwalniasz zasoby i przestajesz za nie płacić.
- Rozliczenie za użycie — zamiast jednej dużej inwestycji w serwer na lata masz zmienną, przewidywalną opłatę.
Analogia: pizza na cztery sposoby
Najprostszy sposób, by poczuć różnicę między modelami chmury, to… pizza. Wyobraź sobie, że chcesz zjeść:
- Własna kuchnia (model tradycyjny, on-premise): kupujesz mąkę, drożdże i dodatki, wyrabiasz ciasto, pieczesz we własnym piekarniku, a potem myjesz naczynia. Wszystko po Twojej stronie.
- IaaS: kupujesz gotową, zamrożoną bazę i pieczesz u siebie. Sklep dba o „infrastrukturę" — nie hodujesz pomidorów ani nie budujesz piekarnika — ale pieczenie, dodatki i stół to Twoja sprawa.
- PaaS: zamawiasz pizzę z dostawą. Dostajesz gotowy produkt, Ty zapewniasz tylko stół, talerze i napoje.
- SaaS: idziesz do pizzerii. Wszystko robi kto inny, Ty po prostu korzystasz.
Przełóżmy to na IT: „pizza" to Twoja aplikacja, a poszczególne warstwy to serwery, system operacyjny, środowisko uruchomieniowe i kod.
IaaS — infrastruktura jako usługa
W modelu IaaS (Infrastructure as a Service) wynajmujesz fundamenty: maszyny wirtualne, dyski, sieci i adresy IP. Dostawca odpowiada za fizyczne serwery, chłodzenie, zasilanie i wirtualizację. Ty wybierasz i konfigurujesz system operacyjny, instalujesz oprogramowanie i zarządzasz danymi.
IaaS daje największą kontrolę — i największą odpowiedzialność. To dobry wybór, gdy potrzebujesz nietypowej konfiguracji, migrujesz istniejące systemy albo chcesz uczyć się administracji „od środka".
PaaS — platforma jako usługa
W modelu PaaS (Platform as a Service) dostajesz gotowe środowisko do uruchamiania aplikacji. Wysyłasz kod, a dostawca zajmuje się systemem operacyjnym, aktualizacjami, środowiskiem uruchomieniowym i skalowaniem. Ty odpowiadasz za aplikację i dane.
PaaS przyspiesza pracę programistów: zamiast konfigurować serwery, skupiasz się na kodzie. W zamian akceptujesz ograniczenia platformy — wspierane języki, wersje i narzucony sposób wdrażania.
SaaS — oprogramowanie jako usługa
SaaS (Software as a Service) to gotowa aplikacja dostępna przez przeglądarkę: poczta e-mail, arkusze kalkulacyjne online, komunikator czy system do fakturowania. Nie instalujesz niczego i nie zarządzasz serwerami — logujesz się i pracujesz. Dostawca odpowiada za wszystko: od sprzętu po kod aplikacji.
Kto za co odpowiada — porównanie
| Warstwa | Tradycyjnie (on-premise) | IaaS | PaaS | SaaS |
|---|---|---|---|---|
| Aplikacje i kod | Ty | Ty | Ty | Dostawca |
| Dane | Ty | Ty | Ty | Dostawca |
| Środowisko uruchomieniowe | Ty | Ty | Dostawca | Dostawca |
| System operacyjny | Ty | Ty | Dostawca | Dostawca |
| Wirtualizacja, serwery i sieć | Ty | Dostawca | Dostawca | Dostawca |
Zasada jest prosta: im „wyższy" model (od IaaS ku SaaS), tym mniej zarządzasz sam — i tym mniejszą masz kontrolę. Wybór modelu to zawsze kompromis między wygodą a wpływem na szczegóły. Szersze porównanie z przykładami znajdziesz w artykule Różnice między IaaS, PaaS i SaaS w naszym Centrum wiedzy.
- Otwórz notatnik i przyporządkuj każdą z poniższych sytuacji do jednego z modeli: on-premise, IaaS, PaaS albo SaaS. Zapisz też, dlaczego.
- Firma trzyma własny serwer w pomieszczeniu na korytarzu i sama instaluje na nim system.
- Korzystasz z poczty e-mail wyłącznie przez przeglądarkę.
- Wynajmujesz maszynę wirtualną z czystym Linuksem i sam instalujesz bazę danych.
- Wysyłasz kod aplikacji internetowej na platformę, która sama ją uruchamia i skaluje.
Odpowiedzi: 2 — on-premise, 3 — SaaS, 4 — IaaS, 5 — PaaS. Jeśli któraś Cię zaskoczyła, wróć do tabeli i sprawdź, które warstwy były po Twojej stronie.