Amazon S3 bez tajemnic

11 czerwca 2019

Amazon S3

Amazon S3, czyli Simple Storage Service to usługa pamięci masowej zaprojektowana z myślą o przechowywaniu i pobieraniu dowolnej ilości danych, w dowolnym momencie i z dowolnego miejsca w sieci. Takie rozwiązanie daje dostęp do wysokoskalowalnej, niezawodnej, szybkiej i niedrogiej infrastruktury przechowywania danych.

 

 

Amazon S3 bez tajemnic. Podstawowe pojęcia

Bucket – to kontener, w którym przechowuje się obiekty. Organizuje przestrzeń w ramach S3 oraz nadawanie do niego dostępów.
Obiekty – czyli pliki, które przechowywane są w bucketach.
Klucz – unikalny identyfikator obiektu. Każdy obiekt w S3 można zidentyfikować po kombinacji nazwy bucketu, klucza oraz opcjonalnie id wersji danego obiektu.
Region – to geograficzna lokalizacja, w której Amazon przechowuje dane. W tym momencie jest ich 20.
Availability Zone (AZ) – To wyizolowana lokalizacja w ramach Data Center, w ramach jednego regionu.

Struktura Amazon S3 wraz z dostępnymi funkcjami zarządzania pomaga organizować dane w uporządkowany sposób. Wszystkie obiekty są przechowywane w segmentach S3 i mogą być organizowane za pomocą wspólnych nazw, zwanych prefiksami. Do każdego obiektu można również dołączyć do 10 par klucz-wartość, nazywanych znacznikami obiektowymi S3, które można tworzyć, aktualizować i usuwać przez cały cykl życia obiektu. Aby śledzić obiekty i ich odpowiednie znaczniki, buckety i prefiksy, można użyć raportu S3 Inventory, który zawiera listę przechowywanych obiektów w bucketach S3 lub z określonym prefiksem, a także odpowiednie metadane i stan szyfrowania. S3 Inventory można wykorzystać do generowania raportów codziennych czy tygodniowych. Amazon S3 dostarcza również funkcje, które pomagają w utrzymaniu kontroli wersji danych, zapobiegając przypadkowemu usuwaniu, replikują dane w innych regionach AWS. Dzięki wersji S3 można łatwo zachować, odzyskać oraz przywrócić każdą wersję obiektu przechowywanego w Amazon S3, co pozwala odzyskać dane po niezamierzonych działaniach użytkownika i awariach aplikacji. 

S3 jest wysoce skalowalne i płacimy tylko za to, z czego korzystamy. Usługa jest zaprojektowana także jako wysoce elastyczna – możemy przechowywać praktycznie każdy rodzaj danych w dowolnym formacie. Szczegółowe informacje można znaleźć w umowie licencyjnej Amazon Web Services. Podczas przechowywania danych przypisujemy unikalny klucz obiektu, który może być później użyty do pobrania danych. Klucze mogą być dowolnymi łańcuchami i mogą być skonstruowane tak, aby naśladować atrybuty hierarchiczne. Alternatywnie, możemy użyć S3 Object Tagging, aby uporządkować swoje dane we wszystkich bucketach S3 i / lub prefiksach. 

Całkowita ilość danych i liczba obiektów, które można przechowywać, jest nieograniczona. Poszczególne obiekty Amazon S3 mogą mieć rozmiar od minimum 0 bajtów do maksymalnie 5 terabajtów.  

Amazon S3. Klasy pamięci

Amazon S3 oferuje szereg klas pamięci przeznaczonych do różnych zastosowań: 

  • S3 Standard do ogólnego przechowywania często używanych danych; 
  • S3 Intelligent-Tiering dla danych o nieznanych lub zmieniających się wzorcach dostępu;  
  • S3 Standardowy rzadki dostęp (S3 Standard-IA) 
  • S3 One Zone-InfrequentAccess (S3 One Zone-IA) dla długotrwałych, ale rzadziej używanych danych;  
  • Amazon S3 Glacier (S3 Glacier) i Amazon S3 Glacier DeepArchive (S3 Glacier Deep Archive) do archiwizacji długoterminowej i ochrony zasobów cyfrowych.  

Każda klasa pamięci masowej S3 obsługuje określony poziom dostępu do danych przy odpowiednich kosztach. Oznacza to, że można przechowywać krytyczne dane produkcyjne w standardzie S3 w celu częstego dostępu, zaoszczędzić koszty poprzez przechowywanie rzadko uzyskiwanych danych w S3 Standard-IA lub S3 One Zone-IA oraz archiwizować dane przy najniższych kosztach w klasach archiwizacji – S3 Glacier i S3 Glacier Deep Archive. S3 Storage Class Analysis używamy do monitorowania wzorców dostępu w obiektach w celu wykrycia danych, które powinny zostać przeniesione do tańszych klas pamięci. Następnie wykorzystujemy te informacje do skonfigurowania polityki cyklu życia S3, która dokonuje transferu danych. Zasady cyklu życia S3 można również wykorzystać do wygaśnięcia obiektów pod koniec ich cyklu życia. W S3 Intelligent-Tiering można przechowywać dane ze zmieniającymi się lub nieznanymi wzorcami dostępu, które automatycznie przenoszą dane w oparciu o zmieniające się wzorce dostępu między warstwą o częstym dostępie i tańszą nieregularną warstwą dostępu w celu obniżenia kosztów. 

Amazon S3. Dlaczego warto? 

Wydajność, skalowalność, dostępność i trwałość. 

Zasoby pamięci masowej skalujemy w górę i w dół, aby sprostać zmiennym wymaganiom, bez wcześniejszych inwestycji. Amazon S3 zapewnia trwałość danych na poziomie 99,999999999%, ponieważ automatycznie tworzy i przechowuje kopie wszystkich obiektów S3. Oznacza to, że dane są dostępne w razie potrzeby i chronione przed awariami, błędami i zagrożeniami. 

Ekonomiczność 

Optymalizacja kosztów poprzez korzystanie z odpowiedniego planu finansowego klasy pamięci masowej S3. Można również przechowywać dane ze zmieniającymi się wzorcami dostępu w S3 Intelligent-Tiering, które to poziomy obiektów bazują na zmieniających się wzorcach dostępu i automatycznie zapewniają oszczędności kosztów. 

Dostęp do analityk, poprawa wydajności, zapytania 

Amazon S3 ma wbudowaną funkcję i bezpłatne usługi, które wysyłają zapytania do danych bez konieczności kopiowania i ładowania do oddzielnej platformy analitycznej lub hurtowni danych. Oznacza to, że możesz uruchomić analizę dużych danych bezpośrednio na danych przechowywanych w Amazon S3.   

Amazon Athena sprawdza dane w Amazon S3 bez konieczności wyodrębniania i ładowania ich do oddzielnej usługi lub platformy. Wykorzystuje standardowe wyrażenia SQL do analizy danych, dostarcza wyniki w ciągu kilku sekund i jest powszechnie używany do wykrywania danych ad hoc.  

Amazon Redshift Spectrum uruchamia również zapytania SQL bezpośrednio na danych w Amazon S3 i jest bardziej odpowiednie dla złożonych zapytań i dużych zbiorów danych (do eksabajtów). Ponieważ Amazon Athena i Amazon Redshift mają wspólny katalog danych i formaty danych, można ich używać zarówno w tych samych zestawach danych w Amazon S3.  

S3 Select to funkcja S3 zaprojektowana w celu zwiększenia wydajności zapytań nawet o 400% i zmniejszenia kosztów nawet o 80%. Działa poprzez pobieranie podzbioru danych obiektu (przy użyciu prostych wyrażeń SQL) zamiast całego obiektu. 

Narzędzia kontroli dostępu 

S3 Storage Class Analysis to zestaw narzędzi do analizy wzorców dostępu: 

  • S3 Zasady cyklu życia do przenoszenia obiektów na tańsze klasy przechowywania; 
  • Replikacja między regionami S3 w celu replikacji danych do innych regionów;
  • S3 Object Lock, aby zastosować daty przechowywania do obiektów i zabezpieczyć je przed usunięciem;
  • S3 Inventory, aby uzyskać widoczność w przechowywanych obiektach, ich metadanych i statusie szyfrowania. 

Można również użyć operacji wsadowych S3, aby zmienić właściwości obiektu i wykonać zadania zarządzania pamięcią masową dla miliardów obiektów. Ponieważ Amazon S3 współpracuje z AWS Lambda, można rejestrować działania, definiować alerty i automatyzować przepływy pracy bez zarządzania dodatkową infrastrukturą. Amazon S3 obsługuje zarówno szyfrowanie po stronie serwera (z trzema opcjami zarządzania kluczami), jak i szyfrowanie po stronie klienta do przesyłania danych (S3 Inventory) 

S3 Block Public Access to zestaw zabezpieczeń, który zapewnia, że ​​segmenty i obiekty S3 nie mają publicznego dostępu. Kontrole dostępu publicznego S3 Block są kontrolowalne, zapewniają dodatkową warstwę kontroli, a także korzystają ze sprawdzania uprawnień AWS Trusted Advisor, dzienników AWS CloudTrail i alarmów Amazon CloudWatch. 

Bezpieczeństwo i audyt 

Dane przechowywane w Amazon S3 są zabezpieczone przed nieautoryzowanym dostępem za pomocą funkcji szyfrowania i zestawem narzędzi do zarządzania dostępem. Usługa Amazon Macie służy do identyfikacji poufnych danych przechowywanych w segmencie S3 i wykrywania nieregularnych żądań dostępu. Amazon S3 utrzymuje programy zgodności, takie jak PCI-DSS, HIPAA / HITECH, FedRAMP, unijna dyrektywa o ochronie danych i FISMA, aby pomóc w spełnieniu wymogów regulacyjnych. AWS obsługuje również liczne możliwości audytu w celu monitorowania żądań dostępu do zasobów S3. Wykorzystuje możliwości uczenia maszynowego do rozpoznawania poufnych danych, takich jak informacje umożliwiające identyfikację osobistą (PII) lub własność intelektualna, oraz udostępnia pulpity nawigacyjne i alerty, aby wgląd w sposób uzyskiwania dostępu do tych danych lub ich przenoszenia. Amazon Macie monitoruje również wzorce dostępu do danych pod kątem anomalii i generuje alerty, gdy wykryje ryzyko nieautoryzowanego dostępu lub przypadkowego wycieku danych. 

Bezpieczeństwo migracji danych 

Amazon S3, współpracując z partnerem z AWS Partner Network (APN) dostarcza mechanizmy bezpieczeństwa. APN rozpoznaje partnerów migracji, którzy przesyłają dane do Amazon S3 i partnerów pamięci masowej oferujących rozwiązania zintegrowane z S3 do podstawowej pamięci masowej, tworzenia kopii zapasowych i przywracania danych, archiwizacji i odzyskiwania danych po awarii.  

Zestaw funkcji: 

  • Zarządzanie pamięcią i monitorowanie 
  • Uwierzytelnianie wieloczynnikowe (Multi-Factor Authentication MFA) w Bucket S3 jest to opcja, której włączenie zapobiega przypadkowemu usunięciu danych. 
  • S3 Batch Operations ułatwia zarządzanie danymi w Amazon S3, niezależnie od tego, ile jest przechowywanych w nim obiektów. 
  • S3 Replikacja międzyregionalna (Cross-Region Replication CRR) umożliwia replikować obiekty (i ich odpowiednie metadane i znaczniki obiektów) do innych regionów AWS w celu zmniejszenia opóźnień, zgodności, bezpieczeństwa, odzyskiwania po awarii i innych przypadków użycia. S3 CRR jest skonfigurowany na źródłowy bucket S3 i replikuje obiekty do docelowego bucketu w innym regionie AWS. 
  • Zasady jednokrotnego zapisu (write-once-read-many WORM) przy użyciu S3 Object Lock. Funkcja zarządzania S3 blokuje usuwanie wersji obiektu podczas zdefiniowanego przez klienta okresu przechowywania, dzięki czemu można egzekwować zasady przechowywania jako dodatkową warstwę ochrony danych lub spełnić wymogi zgodności. Obiekty z S3 Object Lock zachowują ochronę WORM, nawet jeśli są przenoszone do różnych klas pamięci z polityką cyklu życia S3. Aby śledzić, które obiekty mają S3 Object Lock, możemy odwołać się do raportu S3 Inventory, który zawiera status WORM obiektów.  

Monitorowanie pamięci masowej 

AWS dostarcza użytkownikom usługi do monitorowania i kontrolowania sposobu korzystania z zasobów S3. Znaczniki można stosować do segmentów S3 w celu alokacji kosztów w wielu wymiarach biznesowych (takich jak miejsca powstawania kosztów, nazwy aplikacji lub właściciela), a następnie użyć raportów alokacji kosztów AWS, aby wyświetlić wykorzystanie i koszty zagregowane według znaczników bucket. Możemy także użyć Amazon CloudWatch do śledzenia stanu operacyjnego zasobów AWS i konfigurowania alertów rozliczeniowych, które są wysyłane, gdy szacowane opłaty osiągną próg zdefiniowany przez użytkownika.  

Kolejną usługą monitorowania AWS jest AWS CloudTrail, która śledzi i raportuje działania na poziomie bucketu i obiektu. Możemy skonfigurować powiadomienia o zdarzeniach S3, aby uruchamiać przepływy pracy, alerty i wywoływać AWS Lambda po wprowadzeniu określonej zmiany w zasobach S3. Powiadomienia o zdarzeniach S3 mogą być używane do automatycznego transkodowania plików multimedialnych podczas ich przesyłania do Amazon S3, przetwarzania plików danych w miarę ich udostępniania lub synchronizowania obiektów z innymi magazynami danych. 

Zarządzanie dostępem i bezpieczeństwo 

W celu ochrony danych w Amazon S3, domyślnie użytkownicy mają dostęp tylko do zasobów S3, które tworzą. Możemy udzielić dostępu innym użytkownikom za pomocą jednej lub kombinacji następujących funkcji zarządzania dostępem:  

  • AWS Identity and Access Management (IAM) do tworzenia użytkowników i zarządzania ich dostępem; 
  • Listy kontroli dostępu (ACL) do udostępniania pojedynczych obiektów autoryzowanym użytkownikom; 
  • zasady bucket, aby skonfigurować uprawnienia dla wszystkich obiektów w jednym buckecieS3;  
  • uwierzytelnianie ciągu zapytań, aby udzielić ograniczonego czasowo dostępu innym osobom z tymczasowymi adresami URL. 

Amazon S3 obsługuje również dzienniki kontroli, które zawierają listę żądań skierowanych przeciwko zasobom S3, aby w pełni zobaczyć, kto ma dostęp do danych. Bezpieczeństwo Amazon S3 oferuje elastyczne funkcje zabezpieczeń, które uniemożliwiają nieautoryzowanym użytkownikom dostęp do danych. Aby połączyć się z zasobami S3 z Amazon Virtual Private Cloud (Amazon VPC) należy użyć punktów końcowych VPC .  

Transfer dużej ilości danych 

AWS ma pakiet usług migracji danych, dzięki którym przesyłanie danych do AWS Cloud jest proste, szybkie i bezpieczne. S3 Transfer Acceleration ma na celu maksymalizację prędkości transferu do bucketów S3 na duże odległości. W przypadku bardzo dużych transferów danych, należy rozważyć użycie AWS Snowball, AWS Snowball Edge i AWS Snowmobile, aby przenieść petabajty do eksabajtów danych do AWS Cloud za zaledwie jedną piątą kosztu szybkiego Internetu. Te usługi AWS Snow działają przy użyciu bezpiecznych urządzeń fizycznych do transportu danych za pośrednictwem dróg i rozwiązują problemy związane z migracją, takie jak wysokie koszty sieci, długi czas przesyłania i bezpieczeństwo.Klienci, którzy chcą zachować lokalne aplikacje i włączyć architekturę pamięci masowej w chmurze, mogą korzystać z usługi AWS Storage Gateway (hybrydowej usługi pamięci masowej w chmurze), aby bezproblemowo łączyć środowiska lokalne z Amazon S3. Możemy zautomatyzować przesyłanie danych między lokalną pamięcią masową a AWS (w tym Amazon S3) za pomocą AWS DataSync, który może przesyłać dane z prędkością do 10 razy większą niż narzędzia open-source. Do przesyłania plików przy uużyciu protokołu Secure File Transfer Protocol (SFTP) należy używać AWS Transfer dla SFTP – w pełni zarządzanej usługi umożliwiającej bezpieczną wymianę plików poza AWS. Klienci mogą również współpracować z zewnętrznymi dostawcami z sieci partnerów AWS (APN), takimi jak Hostersi, aby wdrożyć hybrydowe architektury pamięci masowej, zintegrować Amazon S3 z istniejącymi aplikacjami i przepływami pracy oraz przesyłać dane do i z chmury AWS. 

 

Pytania? Skontaktuj się z nami

 

 

 

Zobacz również:

Jak używać pliku stanu zdalnego remotestate w środowisku Terraform?

14 usług AWS, które musisz znać w 2019 roku

Chmura obliczeniowa nie taka straszna. Wprowadzenie do Amazon Web Services

Tworzenie nowego konta AWS i zasobów przy użyciu opcji multiple provider w środowisku Terraform

Skąd się bierze wysoka dostępność (HA) w chmurze?

 

Case Studies
Referencje

Firma Hostersi pozwoliła nam osadzić ogólne zagadnienia programu Well Architected Framework w kontekście naszej firmy. Oszczędziło nam to wiele czasu i pozwoliło znaleźć lepiej dopasowane rozwiązania do specyfiki naszego biznesu. WAF był świetnym katalizatorem do wprowadzenie szeregu zmian w obszarze niezawodności, szybkości i bezpieczeństwa edrone. 

Piotr Stachowicz
CTO
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.