Amazon Elastic Compute Cloud (EC2) stanowi fundament usług obliczeniowych Amazon Web Services, oferując skalowalną moc obliczeniową na żądanie w chmurze. Usługa eliminuje konieczność inwestycji z góry w infrastrukturę sprzętową, dzięki czemu organizacje szybciej projektują, rozwijają i wdrażają aplikacje.

Treść (pokaż)

EC2 pozwala uruchamiać dowolną liczbę serwerów wirtualnych, konfigurować zabezpieczenia, zarządzać siecią i przechowywaniem danych, a także elastycznie skalować zasoby w górę lub w dół zgodnie z potrzebami. Platforma zapewnia dostęp do ponad 1000 typów instancji, zoptymalizowanych pod konkretne obciążenia: od aplikacji ogólnego przeznaczenia, przez uczenie maszynowe, po obliczenia wysokiej wydajności (HPC).

Fundamenty EC2 i chmury obliczeniowej

Czym jest Amazon EC2 i jak wpisuje się w ekosystem AWS

Amazon EC2 to usługa Infrastructure‑as‑a‑Service (IaaS), dostarczająca maszyny wirtualne uruchamiane na serwerach fizycznych w globalnych centrach danych AWS. „Elastic Compute Cloud” odzwierciedla trzy kluczowe cechy: elastyczność (dynamiczna zmiana zasobów), moc obliczeniowa (rdzeń funkcjonalności) oraz model chmurowy (dostęp przez internet). Od 2006 roku EC2 zrewolucjonizował sposób wdrażania infrastruktury IT.

EC2 współpracuje z kluczowymi usługami AWS, wspólnie tworząc spójny ekosystem:

  • Amazon S3 – przechowywanie obiektów, kopie zapasowe, archiwa;
  • Amazon RDS – zarządzane bazy danych relacyjnych;
  • Amazon VPC – w pełni kontrolowana, izolowana sieć wirtualna.

Chmura obliczeniowa to rozproszony system serwerów połączonych sieciami publicznymi i prywatnymi, zdolny generować ogromną moc obliczeniową i przepustowość danych. AWS operuje na 38 regionach geograficznych i 120 strefach dostępności, co umożliwia wdrażanie aplikacji bliżej użytkowników, minimalizując opóźnienia i podnosząc wydajność.

Model płatności pay‑as‑you‑go i eliminacja kosztów inwestycji

Model finansowy EC2 zmienił sposób planowania infrastruktury: płacisz tylko za faktycznie wykorzystane zasoby. Rozliczanie odbywa się sekundowo (z minimalnym okresem 60 sekund), bez marnowania budżetu na niewykorzystaną pojemność. Dostępne są różne opcje zakupu:

  • On‑Demand – brak zobowiązań długoterminowych, płatność za czas działania instancji;
  • Reserved Instances – rezerwacja na 1 lub 3 lata w zamian za znaczną zniżkę;
  • Spot Instances – wykorzystanie niewykorzystanej pojemności EC2 po obniżonych cenach.

Nowi użytkownicy mogą skorzystać z AWS Free Tier – 750 godzin miesięcznie instancji t2.micro lub t3.micro przez pierwsze 12 miesięcy.

Architektura EC2 i komponenty systemu

Struktura instancji i alokacja zasobów

Instancja EC2 to wirtualny serwer działający na współdzielonym sprzęcie hosta lub na serwerach dedykowanych (według konfiguracji). Amazon EC2 przydziela część zasobów hosta (CPU, RAM, magazyn instancji) bezpośrednio do instancji, zapewniając przewidywalną wydajność. Zasoby współdzielone (sieć, podsystem dyskowy) są rozdzielane sprawiedliwie, a niewykorzystana przepustowość może być chwilowo użyta przez pojedynczą instancję. Każdy typ instancji gwarantuje minimalną wydajność współdzielonych zasobów (np. instancje zoptymalizowane pod I/O mają większy przydział, ograniczając wahania).

Amazon Machine Images (AMI) i szablonowanie

Amazon Machine Images to predefiniowane szablony zawierające system operacyjny, aplikacje, konfiguracje i mapę urządzeń blokowych. AMI są specyficzne dla regionu, systemu, architektury CPU, typu wolumenu root oraz technologii wirtualizacji. AWS udostępnia szeroki katalog publicznych AMI (Amazon Linux, Ubuntu, Windows Server, CentOS), a użytkownicy mogą szybko tworzyć własne AMI na bazie działających instancji, ustandaryzować konfigurację i przyspieszyć wdrożenia.

Tworzenie własnego AMI zazwyczaj obejmuje następujące kroki:

  • przygotowanie instancji – zatrzymanie lub hibernacja oraz utrwalenie konfiguracji;
  • utworzenie migawek EBS – wykonanie EBS snapshots wolumenów dołączonych do instancji;
  • rejestracja AMI – zarejestrowanie migawek jako nowego obrazu i uruchamianie z niego kolejnych instancji.

Pary kluczy i bezpieczeństwo dostępu

Bezpieczny dostęp do instancji EC2 realizowany jest poprzez pary kluczy (publiczny/prywatny). AWS przechowuje klucz publiczny na instancji, a użytkownik odpowiada za bezpieczne przechowywanie klucza prywatnego. W systemach Linux klucz prywatny służy do logowania przez SSH, zaś w Windows do odszyfrowania hasła administratora. Utrata klucza prywatnego nie musi oznaczać utraty dostępu – możliwe są procedury ratunkowe (m.in. edycja pliku authorized_keys po dołączeniu wolumenu do tymczasowej instancji).

Typy instancji i konfiguracje

Instancje ogólnego przeznaczenia i obciążenia zmienne

Instancje ogólnego przeznaczenia zapewniają zrównoważone proporcje CPU, RAM i sieci, dzięki czemu są wszechstronne. Seria T4g, T3, T3a i T2 jest szczególnie opłacalna dla aplikacji o zmiennej wydajności. Rodzina T wykorzystuje system kredytów CPU: w okresach niskiego obciążenia akumuluje kredyty, które można wykorzystać przy skokach zapotrzebowania.

Instancje zoptymalizowane pod kątem obliczeń

Instancje z rodzin C7g, C6i, C5 i C4 oferują wysoki stosunek mocy CPU do pamięci, co jest idealne dla wymagających serwerów webowych, modelowania naukowego, wnioskowania ML i serwerów gier. Sprawdzają się tam, gdzie liczy się każda milisekunda.

Instancje zoptymalizowane pod kątem pamięci i przetwarzania graficznego

Instancje zoptymalizowane pod pamięć (R6i, R5, R4) są projektowane dla obciążeń „in‑memory”: bazy, rozproszone cache’e i analityka. Dla akceleracji sprzętowej i GPU dostępne są rodziny P i G. Instancje P4, P3 i P5 wykorzystują karty NVIDIA do deep learningu, HPC i renderingu; rodziny graficzne sprawdzają się przy przetwarzaniu wizualnym i 3D.

Instancje zoptymalizowane pod kątem przechowywania i sieci

Instancje magazynowe (np. D2) obsługują wysoki, sekwencyjny dostęp do lokalnego magazynu danych – idealne dla Hadoop, hurtowni danych i systemów logów. Instancje zoptymalizowane pod sieć (np. C6gn) zapewniają bardzo wysoką przepustowość i niskie opóźnienia – dobre dla HPC, jezior danych i przetwarzania równoległego. Dostępne są także wyspecjalizowane instancje Mac1 i Mac2 do uruchamiania macOS w chmurze.

Poniżej porównanie rodzin instancji, ich zastosowań i kluczowych cech:

Typ instancji Serie Zastosowanie Charakterystyka
Ogólnego przeznaczenia T2, T3, T4g, M7i Aplikacje biznesowe, serwery webowe Zbilansowane zasoby, elastyczne
Zoptymalizowane obliczeniowo C5, C6i, C7g Serwery webowe, gry, modelowanie Wysoka moc procesora
Zoptymalizowane pod kątem pamięci R5, R6i Bazy danych, cache, analityka Duża ilość RAM
Akceleratory GPU P3, P4, P5 Uczenie maszynowe, HPC Karty graficzne NVIDIA
Zoptymalizowane pod kątem przechowywania D2 Big data, Hadoop, hurtownie Wysoka liczba operacji IOPS
Zoptymalizowane pod kątem sieci C6gn HPC, data lake Wysoka przepustowość sieciowa

Opcje przechowywania i zarządzanie danymi

Amazon Elastic Block Store (EBS) i wolumeny trwałe

Amazon Elastic Block Store dostarcza trwałe wolumeny blokowe, które można elastycznie dołączać i odłączać od instancji EC2 niezależnie od jej stanu. Możliwe jest zwiększanie rozmiaru, modyfikacja IOPS i zmiana typu wolumenu bez przerywania pracy instancji. Dostępne typy EBS to:

  • General Purpose SSD (gp2, gp3) – uniwersalne SSD o dobrym stosunku cena/wydajność;
  • Provisioned IOPS SSD (io1, io2) – gwarantowane IOPS dla krytycznych baz i transakcji;
  • Throughput Optimized HDD (st1) – zwiększona przepustowość dla dużych, sekwencyjnych odczytów/zapisów;
  • Cold HDD (sc1) – najniższy koszt dla rzadko odczytywanych danych archiwalnych;
  • Magnetic (standard) – starszy typ o podstawowej wydajności.

Wolumeny EBS mogą być szyfrowane przy użyciu kluczy zarządzanych przez AWS lub własnych kluczy AWS KMS, co chroni dane w spoczynku. Migawki EBS ułatwiają tworzenie punktów przywracania i replikację między regionami. Koszty zależą od zaalokowanej pojemności i IOPS, a skalowanie nie wymaga zatrzymywania instancji.

Instance Store i pamięć tymczasowa

Instance Store zapewnia tymczasowy magazyn blokowy o bardzo wysokiej przepustowości i przewidywalnym I/O. Dane są usuwane po zatrzymaniu, hibernacji lub terminacji instancji, dlatego rekomendowane jest replikowanie danych między instancjami w aplikacjach tolerujących utratę danych.

Amazon S3 i przechowywanie obiektów

Amazon S3 zapewnia niemal nieograniczone, skalowalne przechowywanie obiektów dla EC2 i internetu. Idealny do kopii zapasowych, archiwów i przechowywania migawek EBS. Najpopularniejsze klasy przechowywania to:

  • S3 Standard – wysoka trwałość i dostępność dla często odczytywanych danych;
  • S3 Intelligent‑Tiering – automatyczna optymalizacja kosztów względem wzorców dostępu;
  • S3 Glacier – ekonomiczne archiwum dla rzadko odczytywanych danych.

Amazon EFS i udostępnianie plików

Amazon Elastic File System zapewnia współdzielony, skalowalny system plików dla instancji EC2 (Linux), umożliwiając jednoczesny dostęp wielu serwerom. EFS skaluje się automatycznie bez wstępnej alokacji pojemności, co jest przydatne w aplikacjach rozproszonych i big data.

Infrastruktura sieciowa i bezpieczeństwo

Virtual Private Cloud (VPC) i izolacja sieciowa

Amazon VPC pozwala tworzyć izolowane, logiczne sieci w chmurze AWS z pełną kontrolą nad adresacją IP, podsieciami, tablicami routingu i bramami. Domyślnie zasoby w prywatnych podsieciach nie są dostępne z internetu, co stanowi ważną warstwę bezpieczeństwa.

Grupy zabezpieczeń i kontrola dostępu sieciowego

Grupy zabezpieczeń działają jak wirtualne zapory, kontrolując ruch do i z zasobów EC2 według protokołów, portów i zakresów IP. Domyślnie cały ruch jest blokowany. Typowe reguły to 80/443 dla HTTP/HTTPS oraz 22 dla SSH.

AWS Identity and Access Management (IAM) i zarządzanie dostępem

IAM umożliwia precyzyjne przydzielanie uprawnień użytkownikom, grupom i rolom, zgodnie z zasadą najmniejszych uprawnień. Role IAM umożliwiają bezpieczne delegowanie dostępu (np. instancja EC2 do S3 bez kluczy na serwerze). Wszystkie wywołania API są rejestrowane w AWS CloudTrail dla audytu i zgodności.

EC2 Instance Connect Endpoint i bezpieczna łączność

EC2 Instance Connect Endpoint zapewnia bezpieczne połączenia z instancjami w prywatnych podsieciach bez publicznych IP, Internet Gateway ani bastionu. Autoryzacja opiera się na IAM i grupach zabezpieczeń, co znacząco zmniejsza powierzchnię ataku.

Modele cenowe i optymalizacja kosztów

On‑Demand Instances i elastyczne rozliczenia

On‑Demand pozwala płacić za zasoby zgodnie z użyciem, bez długoterminowych zobowiązań. Rozliczenie sekundowe (min. 60 s) ogranicza koszty bezczynności – idealne dla nieprzewidywalnych obciążeń, środowisk deweloperskich i nowych aplikacji.

Reserved Instances i długoterminowe oszczędności

Reserved Instances umożliwiają rezerwację na 1 lub 3 lata, zapewniając oszczędności do 72% względem On‑Demand. Dostępne są Standard RI (największe oszczędności), Convertible RI (zmiana typu w trakcie) i Scheduled RI, a także płatności All/Partial/No Upfront.

Spot Instances i zaoszczędzanie na nieużywanej pojemności

Spot Instances wykorzystują niewykorzystaną pojemność EC2 z oszczędnościami sięgającymi 90% względem On‑Demand. Mogą być przerywane z 2‑minutowym ostrzeżeniem, dlatego najlepiej sprawdzają się dla zadań wsadowych i tolerujących przerwy. Skuteczna strategia łączy Reserved, On‑Demand i Spot.

Rekomendacje optymalizacji kosztów

Aby ograniczyć zbędne wydatki, warto wdrożyć poniższe praktyki:

  • monitorowanie kosztów – używaj AWS Cost Explorer i AWS Trusted Advisor do wykrywania nieużywanych zasobów;
  • dobór regionu – porównuj ceny między regionami, bo różnice bywają znaczące;
  • sprzątanie EBS – zatrzymane instancje nie kosztują, ale podłączone wolumeny EBS nadal generują opłaty;
  • zarządzanie Elastic IP – nieprzypisane adresy EIP naliczają opłaty, uwalniaj je, gdy są zbędne;
  • harmonogramy – wyłączaj środowiska deweloperskie poza godzinami pracy, by nie „pożerały” budżetu.

Skalowanie i zarządzanie wydajnością

Auto Scaling i automatyczne dostosowanie zasobów

AWS Auto Scaling automatycznie reguluje liczbę instancji EC2 na podstawie metryk (CPU, sieć, CloudWatch). Definiujesz minimum, wartość pożądaną i maksimum, a system dodaje lub usuwa serwery wraz ze zmianą obciążenia. Skalowanie predykcyjne wykorzystuje ML do prognozowania zapotrzebowania.

Elastic Load Balancing i rozkład obciążenia

Elastic Load Balancing dystrybuuje ruch między wieloma instancjami w różnych strefach dostępności, monitoruje ich kondycję i kieruje ruch wyłącznie do zdrowych instancji. Po odzyskaniu sprawności ruch jest automatycznie wznawiany. Dostępne typy load balancerów to:

  • CLB – klasyczny load balancer dla prostych scenariuszy HTTP/HTTPS;
  • ALB – zaawansowany routing po ścieżkach i hostach, wsparcie dla mikroserwisów;
  • NLB – ultraniskie opóźnienia i bardzo wysoka liczba zdarzeń/s.

Monitorowanie i metryki wydajności

Amazon CloudWatch gromadzi metryki EC2 w czasie rzeczywistym. Domyślny interwał to 5 minut; szczegółowy (1 minuta) można włączyć dla większej precyzji. Dostępne są m.in. CPU, I/O EBS, bajty przychodzące/wychodzące oraz statusy kondycji. Alerty CloudWatch mogą automatycznie wyzwalać akcje (skalowanie, powiadomienia). Metryki są przechowywane przez 15 miesięcy, co ułatwia analizę trendów.

Bezpieczeństwo i najlepsze praktyki

Ochrona danych i szyfrowanie

Wolumeny EBS można szyfrować przy użyciu kluczy AWS lub własnych kluczy AWS Key Management Service. Kopie zapasowe i migawki również należy szyfrować, chroniąc dane w spoczynku i w tranzycie. AWS RDS oferuje automatyczne kopie zapasowe przechowywane do 35 dni z odtworzeniem do wybranego punktu w czasie.

Wdrażanie redundancji i odporności na awarie

Dla wysokiej dostępności wdrażaj instancje EC2 w co najmniej dwóch strefach dostępności w ramach jednego regionu. Strefy to odrębne centra danych z niezależnym zasilaniem, chłodzeniem i siecią, połączone szybkim łączem o niskim opóźnieniu. Amazon RDS wspiera Multi‑AZ z automatycznym failoverem, a migawki można replikować między regionami w strategii disaster recovery.

Zarządzanie i aktualizacje systemów operacyjnych

Dla bezpieczeństwa kluczowe są regularne łatki oraz kontrola konfiguracji. Poniższe usługi upraszczają operacje:

  • AWS Systems Manager Session Manager – bezpieczne zarządzanie instancjami bez publicznych IP i kluczy SSH;
  • Amazon Inspector – automatyczne wykrywanie podatności i niezamierzonej ekspozycji sieci;
  • AWS Security Hub – centralny widok zgodności z najlepszymi praktykami i standardami.

Audyt i compliance

AWS CloudTrail rejestruje wszystkie operacje konfiguracyjne i zarządcze, zapewniając pełny ślad audytu. Metadane instancji warto tagować dla łatwiejszej identyfikacji i rozliczania. AWS posiada liczne certyfikaty zgodności, w tym PCI DSS Level 1.

Regiony, strefy dostępności i lokalizacja globalna

Architektura geograficzna infrastruktury AWS

AWS działa w 38 regionach na całym świecie, z wieloma strefami dostępności w każdym regionie. Regiony działają niezależnie, co pozwala wdrażać aplikacje bliżej użytkowników i minimalizować opóźnienia. Strefy dostępności są fizycznie odseparowane i połączone ultraszybkimi łączami o niskim opóźnieniu, ułatwiając replikację danych.

Wybór regionu i optymalizacja wydajności

Przy wyborze regionu uwzględnij lokalizację użytkowników, koszty oraz dostępność usług. Region bliżej użytkownika oznacza niższe opóźnienia i lepszą wydajność. Ceny różnią się między regionami, a niektóre wyspecjalizowane usługi (np. GPU) są dostępne tylko w wybranych lokalizacjach.

Monitorowanie, optymalizacja i zarządzanie wydajnością

Identyfikacja i rozwiązywanie problemów wydajności

Najczęstsze źródła problemów warto weryfikować według poniższej listy kontrolnej:

  • niedopasowany typ instancji – brak równowagi między CPU, RAM, I/O a wymaganiami aplikacji;
  • limity I/O EBS – zbyt mało IOPS lub przepustowości względem profilu obciążenia;
  • niedobór pamięci – agresywne swapowanie, OOM‑killer, spadki wydajności;
  • przeciążenia CPU – wysoki czas CPU steal lub stale wysokie zużycie;
  • opóźnienia load balancera – zbyt mało zdrowych backendów, niewłaściwy typ LB.

Inicjalizacja wolumenów EBS (pierwszy odczyt każdego bloku) może początkowo zapewniać ok. 50% docelowej wydajności IOPS. Dla przewidywalnego I/O Instance Store oferuje lepszą, niewspółdzieloną wydajność niż EBS.

Zakup Provisioned IOPS i optymalizacja pamięci

Dla krytycznych aplikacji dostępne są Provisioned IOPS, gwarantujące określoną liczbę IOPS za wyższą cenę. Kluczowe jest monitorowanie pamięci na poziomie systemu (rozszerz CloudWatch agentem o metryki gościa). Wolumin swap może ograniczyć ryzyko awarii przy wyciekach pamięci, kosztem wydajności względem RAM.

Regiony brzegowe i przetwarzanie brzegowe

Lokalizacje brzegowe i buforowanie

AWS utrzymuje sieć lokalizacji brzegowych bliżej użytkowników niż główne regiony, obsługujących Amazon CloudFront (CDN) i inne usługi edge. Lokalizacje brzegowe są zoptymalizowane do cache’owania treści i redukcji opóźnień globalnie. AWS posiada 31 lokalizacji brzegowych w Ameryce Północnej oraz setki w innych regionach świata.

Praktyczne zastosowania i przypadki użycia

Migracja aplikacji przedsiębiorstwa do chmury

Firmy migrują infrastrukturę IT do AWS EC2 dla elastyczności, skalowalności i oszczędności. Najczęściej wykorzystywane usługi migracyjne to:

  • AWS Database Migration Service – migracje i replikacje baz danych z minimalnym przestojem;
  • AWS Application Migration Service – lift‑and‑shift serwerów i aplikacji do EC2;
  • AWS DataSync – szybki, bezpieczny transfer dużych wolumenów danych.

Hostowanie aplikacji webowych i stron internetowych

EC2 to idealna platforma do hostowania stron, blogów i aplikacji webowych (Apache, Nginx, IIS). Połączenie EC2 z ELB i Auto Scaling umożliwia skalowanie od dziesiątek do milionów równoczesnych użytkowników.

Obliczenia wysokiej wydajności i analityka big data

EC2 jest szeroko wykorzystywane w HPC: symulacje naukowe, modelowanie finansowe, rendering i big data. Instancje obliczeniowe (Intel, AMD) i GPU pozwalają szybko realizować zaawansowane zadania. Integracja z Amazon Athena, Amazon EMR i Apache Spark umożliwia przetwarzanie i analizę ogromnych zbiorów danych.

Trendy w finansach i handlu

Instytucje finansowe przenoszą systemy tradingowe na AWS EC2, wykorzystując precyzyjny zegar PTP i grupy umieszczania klastrów dla ultraniskich opóźnień. Giełdy i izby rozliczeniowe raportują obsługę milionów transakcji na sekundę z opóźnieniami rzędu kilkudziesięciu milisekund. Integracja AI (w tym generatywnej) na EC2 przyspiesza decyzje inwestycyjne.