AWS Solutions Architect · Lekcja

Pamięć masowa EC2: Instance Store a EBS

Dowiedzą się, kiedy używać ulotnej pamięci Instance Store zamiast trwałych woluminów EBS oraz jak wybrać właściwy typ woluminu EBS.

Lekcja 4 z 413 kroki

Pamięć masowa EC2: Instance Store a EBS to bezpłatna lekcja AWS Solutions Architect na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej AWS Solutions Architect, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs AWS Solutions Architect zawiera 4 lekcji w sumie.

Przegląd opcji pamięci masowej EC2

Instancje EC2 mogą korzystać z dwóch typów lokalnej pamięci masowej: Instance Store i Amazon EBS (Elastic Block Store). Instance Store jest fizycznie podłączony do serwera hosta i oferuje bardzo wysoką liczbę IOPS oraz przepustowość, ale ma istotne ograniczenie — dane są tracone po zatrzymaniu lub zakończeniu działania instancji. EBS zapewnia trwałą, blokową pamięć masową podłączoną przez sieć, która zachowuje dane po zatrzymaniu, ponownym uruchomieniu i zakończeniu działania instancji. Zrozumienie, kiedy używać każdego z tych rozwiązań, jest stałym tematem egzaminu SAA-C03.

Instance Store: pamięć efemeryczna

Instance Store (nazywany także pamięcią efemeryczną) składa się z dysków SSD NVMe fizycznie podłączonych do sprzętu hosta, na którym działa instancja EC2. Dane w Instance Store są tracone, gdy instancja zostanie zatrzymana, zahibernowana lub zakończona, a także w przypadku awarii sprzętu bazowego. Dane zachowują się jednak po ponownym uruchomieniu. Instance Store idealnie nadaje się do przechowywania buforów, pamięci podręcznej i danych roboczych, plików tymczasowych oraz danych replikowanych w całej flocie (np. węzłów Cassandra). Nie wszystkie typy instancji zawierają Instance Store; należy szukać przyrostka d (np. i3.xlarge, m5d.large).

# List NVMe block devices on an Instance Store instance
lsblk
# Example output:
# NAME       MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
# nvme0n1    259:0    0   500G  0 disk /
# nvme1n1    259:1    0   900G  0 disk   <- instance store

Amazon EBS: trwała blokowa pamięć masowa

Woluminy Amazon EBS to pamięć masowa podłączana przez sieć, która zachowuje dane niezależnie od cyklu życia instancji EC2. Wolumin EBS znajduje się w określonej strefie Availability Zone i można go jednocześnie podłączyć do jednej instancji EC2 (z wyjątkiem funkcji multi-attach dla io1/io2). Po zatrzymaniu i ponownym uruchomieniu instancji wolumin EBS zachowuje wszystkie dane. Można odłączyć go od jednej instancji i podłączyć do innej w tej samej strefie AZ albo utworzyć snapshot, aby skopiować go do innej strefy AZ lub regionu.

# Create an EBS volume and attach it to an instance
aws ec2 create-volume \
  --size 100 \
  --volume-type gp3 \
  --availability-zone us-east-1a

aws ec2 attach-volume \
  --volume-id vol-0abcdef1234567890 \
  --instance-id i-0abcdef1234567890 \
  --device /dev/xvdf

Typy woluminów EBS: opcje SSD

AWS oferuje cztery typy woluminów EBS. gp3 (General Purpose SSD): bazowo 3000 IOPS i 125 MB/s, z możliwością niezależnej konfiguracji do 16 000 IOPS i 1000 MB/s — domyślny i najbardziej opłacalny wybór dla większości obciążeń. gp2: starszy typ General Purpose SSD, w którym liczba IOPS rośnie wraz z rozmiarem (3 IOPS/GB, maks. 16 000) — jest wycofywany na rzecz gp3. io2 Block Express: SSD z aprowizowanymi IOPS, zapewniający do 256 000 IOPS i 4000 MB/s — przeznaczony do baz danych intensywnie korzystających z operacji wejścia-wyjścia, takich jak SAP HANA czy Oracle. io1: starszy typ SSD z aprowizowanymi IOPS.

Typy woluminów EBS: opcje HDD

Dwa typy EBS oparte na dyskach HDD są zoptymalizowane pod kątem przepustowości, a nie liczby IOPS. st1 (Throughput Optimised HDD): bazowo 40 MB/s/TB, z możliwością chwilowego zwiększenia do 250 MB/s/TB — idealny do obsługi dużych zbiorów danych, przetwarzania logów i hurtowni danych wykonujących duże sekwencyjne odczyty. sc1 (Cold HDD): bazowo 12 MB/s/TB, z możliwością chwilowego zwiększenia do 80 MB/s/TB — najtańsza opcja EBS dla rzadko używanych danych odczytywanych sekwencyjnie. Woluminów HDD nie można używać jako woluminów rozruchowych (urządzeń głównych). Należy wybrać st1 lub sc1 tylko wtedy, gdy przepustowość jest ważniejsza niż liczba IOPS, a sposób dostępu do danych obejmuje duże sekwencyjne odczyty i zapisy.

Migawki EBS

Migawki EBS to kopie zapasowe woluminu z określonego punktu w czasie, przechowywane trwale w Amazon S3 (choć uzyskuje się do nich dostęp za pośrednictwem interfejsu API EC2, a nie bezpośrednio przez S3). Migawki są przyrostowe: pierwsza migawka obejmuje cały wolumin, a kolejne zapisują tylko bloki, które zmieniły się od utworzenia poprzedniej migawki, co ogranicza koszty przechowywania. Na podstawie dowolnej migawki można utworzyć nowy wolumin EBS w dowolnej strefie dostępności w tym samym Regionie albo skopiować migawkę do innego Regionu na potrzeby odzyskiwania po awarii obejmującej wiele Regionów.

# Create a snapshot
aws ec2 create-snapshot \
  --volume-id vol-0abcdef1234567890 \
  --description 'Daily backup of prod DB volume'

# Copy snapshot to another region for DR
aws ec2 copy-snapshot \
  --source-region us-east-1 \
  --source-snapshot-id snap-0abcdef1234567890 \
  --region eu-west-1 \
  --description 'Cross-region DR copy'

Szyfrowanie EBS

Woluminy i migawki EBS można szyfrować za pomocą kluczy AWS KMS. Szyfrowanie jest niewidoczne dla instancji — dane są szyfrowane podczas przesyłania między instancją a woluminem oraz podczas przechowywania. Można włączyć domyślne szyfrowanie na poziomie konta, aby każdy nowy wolumin EBS utworzony na koncie był automatycznie szyfrowany bez konfiguracji dla poszczególnych woluminów. Aby zaszyfrować niezaszyfrowany wolumin, należy utworzyć migawkę, utworzyć zaszyfrowaną kopię migawki, a następnie utworzyć nowy wolumin na podstawie zaszyfrowanej migawki.

# Enable default EBS encryption for the account
aws ec2 enable-ebs-encryption-by-default --region us-east-1

# Verify it is enabled
aws ec2 get-ebs-encryption-by-default --region us-east-1

EBS Multi-Attach

Funkcja EBS Multi-Attach umożliwia jednoczesne podłączenie woluminu io1 lub io2 do maksymalnie 16 instancji EC2 w tej samej strefie dostępności. Wszystkie podłączone instancje mają pełny dostęp do odczytu i zapisu. Funkcja ta służy do obsługi klastrowych aplikacji Linux (takich jak Oracle RAC czy Teradata), które zarządzają współbieżnością na poziomie aplikacji za pomocą systemu plików świadomego działania klastra. Multi-Attach nie zastępuje EFS w przypadku współdzielonych systemów plików — jest przeznaczona konkretnie do klastrowego dostępu na poziomie bloków ze skoordynowanym zarządzaniem przez aplikację.

Wybór między Instance Store a EBS

Najważniejsze kryteria wyboru: Czy wymagana jest trwałość danych? → Należy użyć EBS. Czy dane można odtworzyć albo są replikowane? → Instance Store jest dopuszczalnym wyborem i zapewnia wyższą wydajność. Czy jest to baza danych zawierająca krytyczne dane? → Zawsze należy użyć EBS (wraz z migawkami i szyfrowaniem). Czy potrzebna jest tymczasowa przestrzeń robocza na potrzeby trenowania modeli ML lub operacji sortowania? → Instance Store zapewni maksymalną przepustowość bez dodatkowych kosztów. W egzaminie często pojawiają się scenariusze, w których należy określić, czy dla danego obciążenia odpowiednia jest pamięć nietrwała czy trwała.

Instancje zoptymalizowane pod kątem EBS

Instancje zoptymalizowane pod kątem EBS zapewniają dedykowaną przepustowość sieci między instancją EC2 a EBS, niezależną od ogólnej przepustowości sieci instancji. Zapobiega to rywalizacji o zasoby sieci między ruchem aplikacji a operacjami wejścia-wyjścia pamięci masowej. Większość typów instancji bieżącej generacji jest domyślnie zoptymalizowana pod kątem EBS, bez dodatkowych opłat. W przypadku starszych typów instancji może być konieczne ręczne włączenie optymalizacji EBS, co wiąże się z dodatkową opłatą godzinową. W przypadku obciążeń baz danych intensywnie korzystających z operacji wejścia-wyjścia należy zawsze sprawdzić, czy dany typ instancji jest zoptymalizowany pod kątem EBS, aby uzyskać pełną aprowizowaną liczbę IOPS woluminu.

Amazon Data Lifecycle Manager

Amazon Data Lifecycle Manager (DLM) automatyzuje tworzenie, przechowywanie i usuwanie migawek EBS oraz AMI. Należy zdefiniować zasady cyklu życia określające, które woluminy mają być uwzględniane w kopiach zapasowych (według tagu), jak często mają być tworzone migawki (co 1, 2, 3, 4, 6, 8 lub 12 godzin albo codziennie) oraz ile migawek należy zachować. DLM eliminuje potrzebę tworzenia niestandardowych skryptów kopii zapasowych i integruje się z CloudWatch w celu monitorowania stanu zasad. W przypadku migawek międzyregionowych należy skonfigurować zasadę kopiowania w tej samej definicji DLM.

Szybkie sprawdzenie

Sprawdź swoją znajomość zagadnień AWS Solutions Architect (SAA-C03) omawianych w tej lekcji.

Podsumowanie lekcji

W tej lekcji nauczyli się Państwo, że: Instance Store zapewnia najwyższą wydajność lokalnych operacji wejścia-wyjścia, ale jest pamięcią nietrwałą — dane są tracone po zatrzymaniu lub zakończeniu instancji, EBS zapewnia trwałą, sieciową pamięć blokową z czterema typami woluminów zoptymalizowanymi pod kątem IOPS (gp3, io2) lub przepustowości (st1, sc1), a migawki EBS umożliwiają tworzenie kopii zapasowych z określonego punktu w czasie, przechowywanych w S3 i możliwych do wykorzystania podczas odzyskiwania między strefami dostępności lub Regionami. W następnej części omówimy podstawy magazynu obiektowego S3.

Bezpłatny start

Ucz się AWS Solutions Architect dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Pamięć masowa EC2: Instance Store a EBS” jest bezpłatna?

Tak — pełny tekst „Pamięć masowa EC2: Instance Store a EBS” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu AWS Solutions Architect, przejdź na CoddyKit PRO. Kurs AWS Solutions Architect zawiera 4 lekcji w sumie.

Co nauczysz się w „Pamięć masowa EC2: Instance Store a EBS”?

Dowiedzą się, kiedy używać ulotnej pamięci Instance Store zamiast trwałych woluminów EBS oraz jak wybrać właściwy typ woluminu EBS. Ćwiczysz AWS Solutions Architect z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć AWS Solutions Architect?

Nie wymagamy żadnego doświadczenia. AWS Solutions Architect w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Pamięć masowa EC2: Instance Store a EBS”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji AWS Solutions Architect?

Tak. Każda lekcja AWS Solutions Architect zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Uruchamianie pierwszej instancji EC2
  2. Typy instancji i modele cenowe
  3. Grupy zabezpieczeń i pary kluczy
  4. Pamięć masowa EC2: Instance Store a EBS
← Powrót do AWS Solutions Architect