Strona Główna / Blog

Serwisy Amazon Web Services – Krótko i Po Ludzku

Mirek Burnejko

Mirek Burnejko

Rozmawiam w języku Amazon Web Services, Microsoft Azure i Google Cloud Platform. Skontaktuj się z nim pisząc na ten adres.

Serwisy Amazon Web Services

Do napisania tego artykułu zainspirowały mnie dwie rzeczy. Po pierwsze ten wpis AWS in Plain English. Po drugie komentarz członka zarządu dużego software house, po przeczytaniu artykułu: Za Co Płacimy w AWS.

Mam taką uwagę: że dla newbie część z tych rzeczy jest totalnie niezrozumiała… w sensie ja nie wiem co to za usługa.

Tak więc do działa…. dzieła, serwisy Amazon Web Services… krótko, po ludzku.
W następnym odcinku serwisy Microsoft Azure…. również krótko i po ludzku.

Usługi w Amazon Web Services

Amazon Elastic Compute Cloud (EC2) – Wirtualne serwery, za które płacisz co godzinę. Możesz też dokładać adresy IP, load balancery, dyski twarde, robić backup tych dysków. Możesz też automatycznie dodawać i zabierać serwery, gdy zmienia się obciążenie Twojej aplikacji.

AWS Key Management Service (KMS) – Przechowywalnia kluczy do szyfrowania. Klucze leżą bezpiecznie i czekają. Jesli aplikacja chce coś zaszyfrować używa klucza zaszyfrowanego kluczem w KMS. Proste (…może nie), ale bezpieczne.

Amazon EC2 Container Service (ECS) – Docker. Utrzymaniem zajmuje się AWS. Ty tworzysz zadania. AWS dba o to, aby wylądowały na dobrych serwerach.

Amazon EC2 Container Registry (ECR) – Przechowywalnia kontenerów. Zamiast trzymać przygotowane przez Ciebie (z niezwykłą starannością) kontenery w publicznych przechowywalniach, wolisz trzymać swój kontener w AWS. Będzie bezpieczniej i będzie się szybciej ściągał.

AWS Elastic Beanstalk – Platforma do uruchamiania Twojej aplikacji. Wybierasz platformę, np. PHP, wrzucasz swój kod, a AWS tworzy środowisko i już użytkownicy mogą oglądać Twoją stronę.

AWS Lambda – Wykonywanie funkcji na żądanie lub zdarzenie. Inny serwis mówi, „Hej Lambda, ktoś dodał nowy wpis w bazie danych”. Lambda słucha. Dobra lambda… Lambda słucha i po usłyszeniu wykonuje określoną przez Ciebie funkcję. Płacisz za milisekundy. Nie przejmujesz się o procesor, dyski, adresy IP, redundancję. Od niedawana można też używać funkcji co określony czas (kron).

Amazon Simple Storage Service (S3) – Taki Dropbox. Przechowywalnia plików. Każdy plik jest dostępny przez https. Ty definiujesz w którym miejscu świata je umieścisz i kto może je zobaczyć. Integruje się z niemalże każdą usługą AWS.

Amazon CloudFront – CDN. Zamiast umieszczać pliki w jednym miejscu, robisz ich kopię w kilkudziesięciu miejscach na świecie. Gdy użytkownicy chcąc zobaczyć Twoją stronę lub pobrać plik, to jego kopia robiona jest w CloudFront. Użytkownicy się cieszą, bo szybciej ściągną z Argentyny zdjęcie ich nowego idola – Roberta Lewandowskiego.

Amazon Elastic File System (EFS) – Dysk sieciowy, który może być dostępny z wielu serwerów i komputerów (korzystając z protokołu NFSv4). Płacisz tylko za wykorzystane GB.

Amazon Glacier – Biblioteka taśmowa w chmurze. Wrzucasz dane, których nie chcesz często wyjmować. Płacisz bardzo mało, dopóki nie chcesz tych danych odzyskać.

AWS Import/Export – Przesyłanie dużej ilości danych do AWS i z AWS. Zgrywasz dane na dysk. Wysyłasz do AWS. Oni kopiują te dane do wskazanych przez Ciebie serwisów. Fajne co? Fajne, ale odchodzi do lamusa na rzecz…

AWS Import/Export Snowball – Przesyłanie BARDZO dużej ilości danych do AWS i z AWS. Płacisz 200 USD. AWS przesyła Ci skrzynkę. Wgrywasz tam 50 TB danych. Odsyłasz. AWS kopiuje dane do wskazanych przez Ciebie serwisów.

AWS Storage Gateway – Wirtualna macierz zainstalowana w Twojej serwerowni, która trzyma większość danych w AWS. Mimo że lokalnie ma dyski 100 GB, to pokazuje, że ma 10 TB. Dane są kopiowane do i z S3.

Amazon Relational Database Service (RDS) – Baza danych utrzymywana przez AWS. Ty wrzucasz dane do Oracle, MSSQL, PostgreSQL, MySQL. AWS udostępnia Ci guziczki, które robią backup, tworzą drugą kopię bazy, zmieniają parametry.

Amazon DynamoDB – Baza danych NoSQL wymyślona przez AWS. Tworzysz tabele, wrzucasz dane, nie martwisz się o serwery, storage i inne pierdoły.

Amazon ElastiCache – Memcached lub Redis zarządzany przez AWS. Nic Ci to nie mówi? Hmmm… Twoja aplikacja ma dużo takich samych zapytań do bazy danych. Twoja baza danych nie daje rady. Klienci narzekają. Keszujesz zapytania w ElastiCache. Klienci szybciej dostawją wyniki zapytań o nową parę butów. Baza odpoczywa. Klienci się cieszą.

Amazon Redshift – Hurtownia danych zarządzana przez AWS. Wrzucasz dane. Redshift ładnie je układa (zamiast zapisywać wierszami, zapisuje kolumnami… boring). Twoi analitycy mogą podłączać się do niej swoimi narzędziami i wyciągać wnioski biznesowe, np. jaki produkt był najczęściej kupowany we Wnorach-Wiechach, a jaki w Twarogach-Wypychach.

AWS Database Migration Service – Migrowanie bazy danych do AWS. Instalujesz serwer w AWS. Wkazujesz bazę lokalną i bazę w AWS. Migrujesz. Proste.

Amazon Virtual Private Cloud (VPC) – Wirtualne Data Center. Tworzysz sieci, tablice routingu, połączenia VPC i inne magiczne rzeczy, znane do dziś tylko dla sieciowców z certyfikacją CCIE. Podłączasz tam swoje serwery EC2, bazy RDS i kasze… kesze ElastiCache.

AWS Direct Connect – Prywatne łącze do AWS. Boisz się, że Internet to ZUO i nie chcesz, aby latały tam Twoje dane? Dostawca podłącza Ci rurę do Twojego Data Center lub podpinasz się w magicznych miejscach ala PLIX i już masz dedykowane łącze do swoich zasobów w chmurze.

Amazon Route 53 – Serwer DNS. Możesz nawet kupić tam swoją domenę. Konfigurujesz, aby Twój klient wpisując www.maleboczarne.pl wylądował na Twoim serwerze. Dodatkowo możesz sterować ruchem, np. 99% idzie na ten serwer, a 1% leci na inny serwer, do innego Data Center.

AWS CodeCommit – Taki GitHub, tylko, że dostępny z AWS. Wrzucasz tam swój kod, wersjonujesz go, a nawet oglądasz z przeglądarki. Integrujesz CodeCommit z innymi narzędziami, które sprawdzają Twój kod i przenoszą na produkcję.

AWS CodeDeploy – Przenosi Twój kod z GitHub lub S3 na serwery. Ty decydujesz na ile serwerów ma to być wgrane. Jeżeli coś się wykrzaczy, to cofa proces.

AWS CodePipeline – Zanim Twój kod trafi na produkcję, jest rzucany pomiędzy środowiskiem testowym, preprodukcyjnym. Po drodze jest testowany, badany pod względem integracyjnym, blablabla. To wszystko automatyzuje CodePipeline.

Amazon CloudWatch – Monitorowanie Twojego środowiska. CloudWatch monitoruje wszystko co się da. Ty oglądasz wykresy i logi 14 dni do tyłu. Po tym czasie dane znikają, chyba, że je gdzieś zapiszesz.

Amazon CloudFormation – Zamiast klikać VPC, EC2, S3, RDS, opisujesz te środowisko jako tekst: „Ten przepiękny, mężny serwer… nie tak… w formacie JSON. Gdy chcesz stworzyć środowisko wybierasz ten dokument i Twoje środowisko uruchamia się. Nie chcesz już środowiska. Klikasz guzik i CloudFromation usuwa Twoje środowisko wraz z zależnościami.

AWS CloudTrail – Logujesz co administratorzy i developerzy robią z Twoim kontem AWS. Ktoś uruchomił maszynę EC2, ktoś usunął plik z S3. Wiesz kto i kiedy. Ukarz ich! Mocniej! Wszystkich!

AWS Config – Pokazuje Ci, że Twoja maszyna EC2 powiązana jest z danym dyskiem EBS i z danym VPC. Sprawdzasz, czy tak samo było wczoraj. Nakładasz też reguły, aby Twoje środowisko było zgodne z korporacyjnymi (sick!) zasadami.

AWS OpsWorks – Chef. Piszesz receptury i książki kucharskie, określające jakie aplikacje mają się uruchomić na Twoich maszynach, w jakiej kolejności i z czym się połączyć. Klikasz guzik i pijesz kawę.

AWS Service Catalog – Opisujesz środowisko w CloudFormation, wrzucasz je do Service Catalog. Np. serwer z bazą danych dla developera. Developer klika i ma swoje środowisko. Ty określasz co może zmienić i jakie ma prawa.

AWS Trusted Advisor – AWS mówi Ci, co zrobić, aby mieć bardziej bezpieczne środowisko, bardziej odporne na awarie oraz jak płacić mniej… serio.

AWS Identity and Access Management (IAM) – Zarządzanie użytkownikami i prawami dostępu do środowiska AWS. Określasz kto (lub co) może tworzyć maszynę wirtualną, kto może dodać do niej dysk, a kto może ją w końcu uruchomić.

AWS Directory Service – Usługa katalogowa (Active Directory)… tylko z mniejszą ilością funkcji. Albo uruchamiasz w AWS, albo łączysz ze swoim Active Directory w Data Center.

Amazon Inspector – Sprawdza, czy Twoje środowisko jest bezpieczne i zgodne ze standardami, np. z PCI DSS. Wypluwa na koniec testów raportem ze stanem faktycznym i zaleceniami.

AWS Web Application Firewall (WAF) – Tak… Web Application Firewall. Nie domyśliłeś się… Jeżeli masz stronę www uruchomioną przez CDN (CloudFormation) i ktoś ją atakuje, to piszesz regułę i blokujesz się przed atakiem.

AWS Elastic MapReduce (EMR) – Spałnujesz Klastery Hadupowe. Jeżeli wiesz czym jest Hadoop, Spark lub Presto i potrzebujesz coś policzyć, płacąc za godzinę liczenia, to EMR Ci w tym pomoże.

AWS Data Pipeline – Przenosi dane pomiędzy różnymi usługami AWS. Np. bierze dane z S3 i DynamoDB, wkłada do EMR lub Redshift. Cały proces automatyzuje. Budujesz to graficznie. Jestem Artysom.

Amazon Elasticsearch Service – Elasticsearch as a Service (Captain Obvious). Budujesz swój klaster w kilka kliknięć, monitorujesz i zarządzasz z konsoli AWS… lub przez API.

Amazon Kinesis – DUŻY bufor do zbierania danych z różnych źródeł, np. Internet of Things. Urządzenie strimują (polski odpowiednik dla słowa stream) dużo danych. Lądują w Kinesis. Sam je wyjmujesz do aplikacji lub Kinesis umieszcza je w S3 lub Redshift.

Amazon Machine Learning – Na bazie historycznych danych i magicznych modeli określasz co będzie za chwilę i jak się to przeniesie na lepszą sytuację finansową Twojej firmy. Mechanizmy te są używane m.in. przez sklep amazon.com i rekomendują Ci co kupić.

Amazon QuickSight – Wykresy, które pomagają podejmować decyzje biznesowe. Wskazujesz źródło danych, np. baza danych (RDS) lub hurtownia (Redshift) i przedstawiasz zawartość w pięknej i (często) czytelnej formie. Zobacz na własne oczy, że rowery we Wnorach-Wiechach sprzedają się najlepiej.

AWS IoT – Proste podłączanie i zarządzanie miliardami urządzeń Internet of Things. Tworzy bezpieczne połączenia, udostępnia biblioteki dla urządzeń, kieruje dane z urządzeń do odpowiednich serwisów, a nawet tworzy cienie urządzeń, które w danej chwili są niedostępne.

AWS Mobile Hub – Idealne miejsce, aby stworzyć szkielet Twojej aplikacji mobilnej. Logika aplikacji (Lambda), analityka (Mobile Analytics), dane użytkowników (S3), dostarczanie zasobów (CloudFront), powiadomienia (SNS) i logowanie (Cognito) dostępne w kilka klików z jednego miejsca. Na koniec generuje kod do budowy aplikacji na iOS lub Android.

Amazon Cognito – Przechowywanie danych użytkowników mobilnych. Zaczynasz grać w grę na Android, przesiadasz się na iPad i grasz w tym samym miejscu. Cognito pozwala w prosty sposób trzymać wszystkie dane użytkownika. Dodatkowo pozwala na autoryzowanie za pomocą twarzoksiążek i innych serwisów.

AWS Device Farm – Testowanie aplikacji mobilnych na setkach prawdziwych telefonów. Wgrywasz kod iOS lub Android. Wybierasz modele telefonów. Aplikacja jest instalowana i testowana. Otrzymujesz raporty i screeny.

Amazon Mobile Analytics – Monitorujesz aplikacje mobilne. Ilość sesji, sticky factor, daily active users i inne metryki znane twórcom aplikacji mobilnych oraz gier.

Amazon Simple Notification Service (SNS) – Wysyłanie powiadomień… w różnej formie. Łączysz SNS z różnymi aplikacjami i serwisami w AWS. Dostajesz maile, powiadomienia na telefon, a nawet SMSy… ale tylko w USA (są jednak sposoby na otrzymanie SMS w PL, ale ciiiiii…..)

Amazon API Gateway – Logika dla Twojej aplikacji dostępna przez http. Czy to POST, czy to GET, zapytania http wpadają na API Gateway, a API Gateway rozrzuca je po serwisach lub wykonuje pewne funkcje Lambda. Zero serwerów, zero adresów IP, zero problemów.

Amazon AppStream – Powielanie jednej aplikacji na steki użytkowników. Instalujesz aplikację na Windows. Użytkownik łączy się do niej przez klienta systemowego, iOS lub przeglądarkę. Dostaje tylko dostęp do aplikacji. Nie widzi systemu operacyjnego.

Amazon CloudSearch – Taka wyszukiwarka jak w Amazon.com lub Allegro.pl… jak ją sobie skonfigurujesz i zbudujesz. Jest przynajmniej narzędzie, które to ułatwia. Wrzucasz dużo danych i w prosty sposób szukasz w tych danych. CloudSearch zwraca wyniki.

Amazon Elastic Transcoder – Zmieniacz Formatów Pospolity. Wrzucasz video na S3. Elastic Transcoder zmienia je na 3GP, MP4, MPEG-2, przy okazji dodaje znak wodny i szyfruje. Robi też inne magiczne rzeczy z video.

Amazon Simple Email Service (SES) – Wysyłacz SPAMu i innych maili. Konfigurujesz swoją aplikację, aby używała SES. Wysyłasz 100,000 maili dziennie. SES dba o to, aby dotarły na miejsce i powie Ci, czy odbiorca przypadkiem nie kliknął guzika SPAM.

Amazon Simple Queue Service (SQS) – Kolejeczka. Jeden system wkłada do niej wiadomość w formacie tekstowym – często JSON. Inny wybiera i robi z nią COŚ. W ten sposób serwer z przodu może pchać do kolejki szybko i mocno, nawet jak serwer z tyłu nie ma mocy przerobowej. Dane leżą w kolejce i czekają… tęsknią, ale czekają.

Amazon Simple Workflow Service (SWF) – Wykonywanie pewnych zadań w AWS w pewnej kolejności pomiędzy serwisami (zwanych czasami aktorami). Gdy przyjdzie zamówienie, przenieś zmień dane w bazie, wyślij powiadomienie do magazynu, umieść fakturę na S3.

Amazon WorkSpaces – Wirtualne pulpity. Kliku, kliku i masz gotowy pulpit z Windows 7 (prawie). Zarządzasz wszystkim centralnie, a Pan Kaziu z kawiarni może bezpiecznie korzystać z korporacyjnych rzeczy ze swojego iPada.

Amazon WorkDocs – Taki Sharepoint i Dropbox by AWS. Wspólna praca nad plikami, nanoszenie komentarzy. Niestety trzeba użyć zewnętrznych narzędzi do edycji.

Amazon WorkMail – Gmail lub poczta Office 365 by AWS. Tworzysz skrzynki, tworzysz użytkowników. Czytasz i wysyłasz maile przez www lub klienta, np. Outlook. Kalendarz też działa.

Podsumowanie i Gdzie Jest Siła

Zbudujesz przewagę konkurencyjną, jeśli przestaniesz myśleć o pojedynczych serwisach, a zaczniesz myśleć o wielu serwisach jednocześnie. Nie zależnie czy budujesz aplikację mobilną, czy też serwis do tworzenie video, Micrsofot Azure i Amazon Web Services dają Ci odpowiednie narzędzia, aby zbudować przyszłość Twojego przedsiębiorstwa. Na co więc czekasz?

W jednym z najbliższych artykułów dowiesz się czym jest Azure Active Directory, Azure App Service, Azure Event Hubs, czy też Azure Traffic Manager. Stay tuned.

Note: Dzięki dla Kamila Christa, za analizę opisów serwisów i kilka uwag.

Dołącz do listy mailingowej!

Dołącz do naszego newslettera

Staramy się wysyłać tylko wartościowe informacje, np. co miesiąc dostaniesz spis najważniejszych nowości z chmur Azure, AWS i GCP, z krótkimi opisami i linkami.