Skip to content

Witaj w Świecie Jutra!

  • Technologie jutra
  • Sprzęt jutra
  • Aplikacje jutra
  • Programowanie
  • Księga Drogi
  • Renowacja
  • Różności
  • Archiwum
  • Autor
  • Home
  • Wszystko
  • Czym jest AWS (i Azure/GCloud)?
  • Programowanie
  • Wszystko

Czym jest AWS (i Azure/GCloud)?

Jakub Raczkowski 23 maja 2024

AWS, czyli Amazon Web Services to zestaw wielu (naprawdę wieeelu!) usług pomocnych na każdym etapie tworzenia oprogramowania – od samego zalążka projektu aż po produkt z którego każdego dnia korzystają miliony użytkowników.

Uwaga! W tej serii zajmuję się opisowym przedstawieniem tematu, a celem jest zapoznanie z zagadnieniem w sposób luźny i zrozumiały dla nowicjusza. W związku z tym wiele elementów siłą rzeczy musi zostać pominiętych. Tych z was, którzy chcieliby się dowiedzieć więcej, zapraszam do źródeł na końcu artykułu.

W 2014 roku wyszła całkiem niezła (w sumie to średnia, ale mająca swoje momenty) komedyjka pod tytułem „Sex Tape”. Para głównych bohaterów – małżeństwo z dłuższym stażem, postanowiła podkręcić sypialniane wygibasy i nakręcili z tego film. Oczywiście nie na VHS, tylko już nowocześnie – iPadem. Problem w tym, że applowy dyngs był połączony z chmurą iCloud i „ślizgacz” zaczął się sam duplikować po innych urządzeniach należących do rodzinnej sieci.

To oczywiście doprowadziło do serii zabawnych sytuacji, ale również i kłótni wśród małżonków oskarżających się nawzajem o to kto jest za to odpowiedzialny. Padły wtedy znamienne słowa, które do dzisiaj pamiętam:

Nobody understands the cloud! It’s a mystery!

(Nikt nie rozumie chmury! To zagadka!)

Wobec tego czym jest ta chmura w odniesieniu do zagadnienia znanego jako:

Cloud computing

Po pierwsze: nie będę tutaj tłumaczył, że nie chodzi o to co mamy nad głowami kiedy pada deszcz. Wpis, owszem, jest skierowany do początkujących ale nie aż takich początkujących.

Po drugie: również nie zamierzam rozwlekać się and sieciami, typami połączeń, rodzajami serwerów i schodzić głębiej z tematem, bo tekst ma być lekki i poświęcony głównie chmurze Amazona.

Dlatego na potrzeby niniejszego artykułu uznajmy po prostu, że:

Chmura to zestaw połączonych komputerów
zachowujących się jak jeden super-komputer.

W grę wchodzi coś takiego jak „resource pooling” czyli podłączenie kolejnej maszyny do chmury automatycznie zwiększa wydajność całej chmury. Jeśli mamy tam 10 komputerów, a każdy ma procesor 4-rdzeniowy, 16GB pamięci i 1TB dysk to cała chmura jest jakby jednym komputerem z 40-rdzeniami, 160GB RAM-u i 10TB dyskiem. To duże uproszczenie, ale na chwilę obecną wystarczy.

Ważnym elementem chmury jest łatwa skalowalność – gdy potrzebujemy tylko 1 rdzenia to dokładnie 1 rdzeń zostaje nam udostępniony. W tradycyjnym podejściu, mając własny 4-rdzeniowy serwer, również korzystalibyśmy z 1 rdzenia, a pozostałe 3 byłyby bezczynne. W chmurze one wciąż pracują, tylko, że dla innych użytkowników.

Serwerownia Google – to jest właśnie ta mityczna „chmura” (Źródło)

W dzisiejszym temacie nie może zabraknąć choćby wzmianki odnośnie pojęć takich jak:

  • IaaS
  • PaaS
  • Saas

Infractructure as a Service (IaaS) to właśnie taki wirtualny komputer jak w powyższym przykładzie, instancja mająca te parametry które sobie zażyczyliśmy. Chcemy 10 rdzeni CPU? Mamy 10 rdzeni CPU. Potrzebujemy do tego dokładnie 17,5GB RAM? Będzie dokładnie 17,5GB RAM i ani gRAMa więcej. Wszystko to idzie do nas z „resource pool’a” i na tym wypożyczonym, wirtualnym komputerze gdzieś w sieci możemy stawiać własne aplikacje.

Platform as a Service (PaaS) to usługa na której skupimy się za chwilę. W skrócie polega to na tym, że cały development aplikacji można wyklikać sobie na platformie dostawcy, która zawiera komplet tego co niezbędne: IDE, bazy, moc obliczeniowa, zabezpieczenia, hosting itd.

Software as a Service (SaaS) to z kolei coś co jest wyznacznikiem naszych czasów, od aplikacji użytkowych po gry. Teraz już nie kupuje się danego tytułu tylko korzysta z niego jak z usługi. Dla przykładu: Microsoft Office kiedyś sprzedawany w pudełkach, z instrukcjami i dożywotnią licencją, teraz nazywa się Office 365 i jest dostępny tylko w modelu subskrypcyjnym.

Zostawmy jednak na chwilę sprawy chmurowo-pogodowe i wróćmy do kinematografii. Zacznę z grubej rury:

Netflix jest przereklamowany.

Najlepszy „original” od Netflixa to dla mnie bez wątpienia „Stranger Things”. Lata 80-te, dzieciaki na rowerach, krótkofalówki, intryga z wątkami fantasy, świetni aktorzy i miliony dolarów wpompowane w scenografię. Pierwszy sezon wciąga i nawet jeśli późniejsze mają swoje lepsze i gorsze chwile, to fabuła trzyma się kupy i wciąż chcemy kibicować bohaterom aż do (miejmy nadzieję) szczęśliwego finału.

No i to w sumie tyle.

„Wiedźmin” był niezły, ale go zepsuli. „Cobra Kai” wciąż daje radę ale to nie netflixowy „oryginał”. „Punisher” z resztą Defendersów już u Disneya. „Wednesday” zapowiada się świetnie, ale mamy ledwie pierwszy sezon. „Gambit królowej” zaczął się spoko, ale w połowie wynudził. Jeszcze jakaś nadzieja w „1670”, którego wciąż nie miałem okazji obejrzeć.

Myślałem żeby tu wrzucić obrazek z „The Boys” ale to zna każdy, a Carnival Row to ukryta perełka na Prime.

Tymczasem Amazon Prime to w Polsce wydatek niespełna 50zł W SKALI ROKU, a za to otrzymujemy dostęp do platformy filmowej, Amazon Prime Gaming oraz darmową wysyłkę w sklepie Amazona. Ilościowo Amazon przegrywa z Netflixem, to fakt. Nie ma tam aż tylu różnych produkcji, żeby można zawsze znaleźć coś nowego. Za to jeśli chodzi o jakość, to Prime pokazuje, że nie pi****li się w tańcu i sypie majstersztykami jak z rękawa:

  • The Boys
  • The Expanse
  • Carnival Row
  • Fallout
  • Reacher
  • Invincible
  • Star Trek: Lower Decks

Ok, no ale co ma wspólnego platforma streamingowa z AWS?

(scena z filmu „Królestwo Niebieskie”)

Owszem, obie usługi wyszły z fabryk Amazona, ale jeśli mając konto na Prime myślicie, że automatycznie z marszu zalogujecie się do Amazon Web Services to się grubo mylicie.

Amazon Prime i Amazon Web Services
to dwie różne usługi wymagające dwóch różnych kont.

I o ile konto w Prime może sobie założyć każdy dumny posiadacz adresu email, o tyle do AWS niezbędna będzie karta bankowa (kredytowa lub debetowa, „jednorazówka” od Revoluta nie przejdzie) z której usługa pobierze ci tymczasowo $1 żeby sprawdzić, czy karta jest legitna.

Kiedy już stworzymy sobie takie „awuesowe” konto to od razu, w ramach stałej promocji będziemy mogli przez bite 12 miesięcy ZA DARMO korzystać z całej bieda-wersji platformy.

Różnych usług na AWS jest zatrzęsienie!
Za darmo otrzymujemy dostęp tylko do niewielkiej części serwisu, ale to i tak sporo.

Jak widać na obrazku powyżej, usług jest cała masa, a do podstawowych wersji części z nich będziemy mieć dostęp w ramach tej rocznej wersji próbnej. Przejdźmy sobie teraz po kilku najpopularniejszych i zobaczmy do czego służą:

EC2

To świetny przykład IaaS o którym wspominałem powyżej. Dostajemy własną wirutalną maszynę i możemy np. postawić na niej swoją aplikację. Albo odpalić grę, albo po prostu trzymać tam pliki. Pełna dowolność, ale i pełna odpowiedzialność – sami musimy zadbać o bezpieczeństwo naszej instancji.

ECS & EKS

Dla wygodnickich Amazon przygotował ECS czyli Elastic Container Service gdzie taka instancja EC2 jest już dla nas przygotowana i odpowiednio zabezpieczona. Naszym zadaniem jest jedynie załadowanie tam dockerowych obrazów do odpalenia. EKS działa podobnie, ale dodatkowo jest „uzbrojone” w Kubernetesa. Za to nie trzeba się długo pierniczyć z ustawianiem klastrów i nodów, aplikujemy plik z demployment’em i drugi z service’m et viola – gotowe!

S3

Simple Storage Service (stąd „S3”) to jak sama nazwa wskazuje nasz dysk internetowy na serwerach Amazona. Możemy tam trzymać backupy, pliki naszej appki, statyczną stronę www, czy cokolwiek innego co nam przyjdzie do głowy. Przestrzeń dzielona jest na oddzielone od siebie partycje/buckety, a każda może mieć inne przywileje dostępu.

Lambda

Lambda znajduje się w dziale „Computing” odnoszącym się do czystej mocy obliczeniowej i to jest właśnie to co robi – oblicza. W największym skrócie: używając Lambdy tworzymy własne metody/funkcje przetwarzające dane (pochodzące z S3 albo z np. REST API).

Do stworzenia API używa się na AWS usługi API Gateway, a wszystkie metody można sobie zwyczajnie wyklikać myszką.

DynamoDB

Tutaj mamy klasyczny przykład bazy dokumentowej (NoSQL) gdzie możemy trzymać swoje dane. Jest to alternatywa dla np. popularnego MongoDB z tym, że Dynamo jest silnie powiązane z całą resztą usług Amazona i korzystanie z niego jest tu po prostu znacznie wygodniejsze.

Cognito

A to z kolei usługa odpowiedzialna za autoryzację użytkowników, coś w stylu Spring Security w Javie (albo Keycloak – globalnie). Z Cognito łączymy pozostałe usługi wymagające uwierzytelnienia, tam zarządzamy tokenami, jest również osobna baza danych na dane logowania.

Używając powyższych usług AWS jesteśmy w stanie stworzyć całą web-appkę od A do Z.

– Czy korzystanie z AWS jest banalne?
– W żadnym wypadku.

Trzeba wiedzieć co gdzie jest i jak to ze sobą połączyć. Ale mimo to śmiało mogę pokusić się o stwierdzenie, że używanie AWS-a jest tak proste jak to tylko możliwe, a z każdą aktualizacją staje się jeszcze łatwiejsze.

W czasie jak przyswajałem wiedzę na temat AWS-a zadziwiło mnie jak niewiele potrzeba żeby osiągnąć coś co w czystej Javie zajęłoby mi godziny roboty. Nabrawszy wprawy możemy działać szybciej niż z dowolnym frameworkiem. Nie interesuje nas infrastruktura, a nawet architektura aplikacji ma znaczenie drugorzędne. Wzorce projektowe można wywalić przez okno. Wszystko mamy pod ręką, działające, zaktualizowane i otoczone pomocą techniczną najlepszych hinduskich konsultantów.

Czujemy się „zaopiekowani”.

Uczyłem się i jednocześnie tępo patrzyłem jak ten „Chad” z tutoriala wszystko sobie wyśmienicie wyklikuje myszką w AWS-owych usługach – robiąc to samo co ja w Javie, tylko kilka razy szybciej. Najwyraźniej po to żeby zaoszczędzony w ten sposób czas poświęcić na zarywanie do mojej kobiety, w chwili kiedy ja wciąż będę jeszcze pisał springowe konfiguracje. Narastała we mnie frustracja i zacząłem się zastanawiać:

Po jakiego **uja ja się tego wszystkiego uczyłem?!

„Wówczas powiódł go [dostawca chmurowy] na swoją stronę, pokazał mu w jednej chwili wszystkie usługi świata i rzekł do niego:

Tobie dam potęgę i wspaniałość tego wszystkiego, bo mnie są poddane i mogę je dać, komu zechcę. Jeśli więc upadniesz, oddasz mi pokłon i opłacisz miesięczną subskrypcję, wszystko będzie Twoje.

Lecz programista mu odrzekł:

Napisane jest: Open-source’owi będziesz oddawał pokłon i Jemu samemu służyć będziesz.”

Księga Deploymentu, Initial Commit

Vendor Lock

Jeśli w tym miejscu też zastanawiacie się po co uczyć się różnych języków programowania, frameworków, poświęcać czas na pierdoły typu Git czy Jenkins to zastanówcie się co byście zrobili gdyby po kilku latach pracy i trzymania wszystkiego na AWS, zmieniła się polityka firmy? Już pomijając takie ewenementy jak blokady regionalne czy bany za twitta wrzuconego po pijaku, jakbyście zareagowali na wprowadzenie podwójnych stawek za to samo co macie do tej pory? Jak się wam wtedy biznes będzie spinał?

Wszyscy wielcy dostawcy: AWS, Azure od Microsoftu, Google Cloud stosują tę samą technikę blokowania swoich klientów wewnątrz swojego ekosystemu („vendor lock„). Jak te chomiki w klatce – jest kołowrotek, sianko, słonecznik i spanko. Wszystko się zgadza.

A co gdy przestaje się zgadzać?

Wtedy liczymy koszty. Co wyjdzie taniej: zaakceptować nowy cennik i zostać tam gdzie wiemy co i jak, czy mozolnie przenosić wszystkie dane i serwisy, ustawiać od nowa autoryzacje i backupy gdzieś u nieznanej konkurencji.

I zazwyczaj wtedy wychodzi, że cóż, lepiej zabulić i zostać tu gdzie Pan sypnie kukurydzą i wymieni trociny jak zbytnio przejdą zapachem gówna.

Chmura kusi wygodą, ale nie jest to ani najsprytniejsze rozwiązanie ani najtańsze.

Ok, myślę, że na tym możemy zakończyć. Co prawda skupiłem się jedynie na AWS-ie, ale to właśnie na nim poznawałem tajniki chmur więc wiedza jest z pierwszej ręki.

Ponadto, z tego co widziałem, różnice pomiędzy platformami Amazona, Microsoftu i Google nie są na tyle istotne, aby trzeba było każdemu poświęcać osobny wpis.

Jeśli zaś chodzi o popularność, to przeglądając oferty pracy AWS przoduje wyprzedzając o włos Azure, a GCloud jest gdzieś daleko w tyle. To również daje do myślenia czy aby nie wyrobić sobie odpowiedniej chmurowej certyfikacji właśnie na Amazonie.

Egzamin „AWS Cloud Parcticioneer” zawiera 65 pytań wielokrotnego wyboru i mamy 90 minut aby odpowiedzieć poprawnie na 70% z nich (mniej więcej, pytania mają różną „wagę”). Podejście do testu kosztuje nas $100, a jak się uda to dostajemy zaświadczenie ważne przez 3 lata. Może to być całkiem ładny dodatek do CV, który przyda się podczas rozmów o podwyżce lub szukaniu nowego pracodawcy.

Nawet jeśli sami nie chcecie zostać „chomikami” to biznes świetnie się czuje w chmurze. Tam są oferty pracy i jest „piniondz”.

Na dzisiaj tyle i dziękuję za uwagę. Tym artykułem kończymy segment cyklu skupiający się na wdrażaniu oprogramowania i przechodzimy do kolejnego:

METODOLOGIA ROZWOJU OPROGRAMOWANIA

W dwóch następnych odcinkach skupimy się na tym jak wygląda praca przy tworzeniu softu oraz przejrzymy narzędzia przydatne w zarządzaniu tym procesem. Wyjaśnimy sobie czym jest „Agile” i do czego służy Jira.


Źródła:
AWS Free Tier
Kurs Podstaw AWS na Udemy (płatne) ANG
Kurs przygotowujący do certyfikacji AWS na Udemy (płatne) ANG

Tags: programming

Continue Reading

Previous: Czym jest Jenkins (i CI/CD)?
Next: Czym jest Agile (i Scrum)?

Related Stories

Mageege Moon104 – test niskoprofilowego mechanika
  • Sprzęt

Mageege Moon104 – test niskoprofilowego mechanika

11 marca 2025
Przebranżowienie cz.4
  • Programowanie

Przebranżowienie cz.4

27 lutego 2025
Smartfon Jutra
  • Sprzęt

Smartfon Jutra

15 lutego 2025

Ze świata

  • Antyweb
  • Kwantowo
  • Dwóch po dwóch
To doskonały moment, by nadrobić „Yellowstone”. Warto skorzystać okazji
Fałszujesz mObywatela? Czekają cię srogie konsekwencje
Dlaczego istnieje Wszechświat? Oto eksperyment, który nam to wyjaśni
Użytkownicy Steam w tarapatach. Trzeba szybko zmienić hasło
Max znów zmienia nazwę. Oby tym razem na stałe
Kampania prezydencka została zmanipulowana? NASK bije na alarm
Optimus Elona Muska chwali się postępami prac. Czy ktoś chce kupić roztańczonego robota?
Teraz to Google dogoniło Apple. Przydatna funkcja ratuje nawet w domu
Trump autorem katastrofy. Naukowcy apelują o zmianę decyzji
Google inspiruje się Redditem? Do wyszukiwarki może trafić ciekawa funkcja
To zupełnie nie ma sensu. Lodu jest coraz więcej
Jak zbudować "bombę z czarnej dziury"? Naukowcy zaszokowali świat
Pierwsze konkrety na temat iOS 19. Apple zdradza szczegóły
Kupiłeś nowego laptopa na Allegro, a to używka? Wkrótce się to skończy
Tanio jak na Temu. Nowy serwis od Amazon już w Europie
Playstation znika z Polski. Będzie jak w latach 90?
Sony zaprasza na najważniejszą premierę w tym roku. Przecieki psują niespodziankę
Apple odetnie setki urządzeń, jeśli nie zrobisz aktualizacji. Trzeba się spieszyć
Polacy pokochali elektryki. Takich wyników jeszcze nie było
Nowy, zaskakujący, serial w uniwersum "Yellowstone". W roli głównej Kayce Dutton
Ocalić od zapomnienia
Ostatni kwant
ALH 84001 – meteoryt, o którym mówiono nawet w Białym Domu
HESS zarejestrował kosmiczny elektron o niespotykanej energii [Phys. Rev. Lett.]
Matka ciemnej materii – recenzja biografii “Vera Rubin. Życie”
Satelita, który zerwał się ze smyczy
Wiadomość od Carla Sagana do przyszłych eksploratorów Marsa
Ile najdłużej może trwać zaćmienie Słońca?
Nowa największa liczba pierwsza ma ponad 41 milionów cyfr [GIMPS]
Pulsar 4U 1820-30 wykonuje 716 obrotów na sekundę [AJ]
O przedsprzedaży Pixel 9a w samochodzie – Odcinek #122
Obejrzeliśmy Ukryty Poziom na raz – No Movie Ci
Premiera Nintendo Switch 2, seriale, i piwniczne artefakty – Odcinek #121
Ludzieee, wy tego używacie? Recenzja klawiatury Trust GXT 867 Acira
Sympatyczny mały flagowiec. Samsung Galaxy S25 – recenzja
Recenzja pionowej myszy Natec Crake 2. Się wziął gruby i nawrócił
Podsumowanie 2024 roku: Gry, Smartfony, Seriale – Odcinek #120
Ale ja nie chcę rozmawiać z botem… Infolinia HP i dziwne pomysły z 15-minutowym oczekiwaniem
Temu Amazonu, to się chyba coś nie ten… Pobierania przez USB nie będzie i co nam Pan zrobisz?
Już graliśmy! Demo Pirackiej Yakuzy narobiło mi jeszcze większego apetytu

To może cię zainteresować:

Mageege Moon104 – test niskoprofilowego mechanika
  • Sprzęt

Mageege Moon104 – test niskoprofilowego mechanika

11 marca 2025
Przebranżowienie cz.4
  • Programowanie

Przebranżowienie cz.4

27 lutego 2025
Smartfon Jutra
  • Sprzęt

Smartfon Jutra

15 lutego 2025
Czym jest Swagger?
  • Programowanie

Czym jest Swagger?

22 lipca 2024
  • Technologie jutra
  • Sprzęt jutra
  • Aplikacje jutra
  • Programowanie
  • Księga Drogi
  • Renowacja
  • Różności
  • Archiwum
  • Autor
Copyright © All rights reserved. | DarkNews by AF themes.