Kontrolowanie i porządkowanie danych bywa nużącym zadaniem. Poniższe polecenia AWS S3 ułatwią Ci efektywne zarządzanie zasobnikami i danymi w ramach tej usługi.
AWS S3 to usługa przechowywania obiektów, udostępniana przez Amazon Web Services. Jest to szeroko wykorzystywana platforma do magazynowania danych, zdolna pomieścić praktycznie nieograniczoną ilość informacji. Charakteryzuje się wysoką dostępnością, trwałością i prostotą integracji z innymi usługami AWS.
AWS S3 znajduje zastosowanie w różnorodnych projektach, od przechowywania danych aplikacji mobilnych i internetowych, przez gromadzenie dużych zbiorów danych, aż po wsparcie dla uczenia maszynowego, hostingu statycznych stron i innych celów.
Użytkownicy S3, zwłaszcza ci, którzy pracują z dużymi zbiorami danych i setkami zasobników, doskonale wiedzą, że zarządzanie nimi może być wymagające. Przygotowaliśmy zbiór poleceń AWS S3 wraz z przykładami, które pomogą Ci efektywnie zarządzać zasobnikami i danymi.
Konfiguracja interfejsu AWS CLI
Po udanym pobraniu i instalacji AWS CLI konieczne jest skonfigurowanie danych uwierzytelniających, umożliwiających dostęp do konta i usług AWS. Przyjrzyjmy się, jak to zrobić.
Pierwszym krokiem jest utworzenie użytkownika z dostępem programowym do konta AWS. Pamiętaj o zaznaczeniu opcji dostępu programowego podczas tworzenia użytkownika przeznaczonego dla AWS CLI.
Nadaj uprawnienia i stwórz użytkownika. Na ostatnim etapie, po pomyślnym utworzeniu konta, skopiuj identyfikator klucza dostępu i tajny klucz dostępu. Te dane będą potrzebne do logowania przez interfejs AWS CLI.
Teraz w wybranym terminalu wprowadź polecenie:
aws configure
Wprowadź, gdy zostaniesz o to poproszony, identyfikator klucza dostępu i tajny klucz dostępu. Wybierz preferowany region AWS oraz format wyjściowy. Osobiście preferuję format JSON, ale zawsze możesz zmienić te ustawienia.
Od tej chwili możesz wykonywać polecenia AWS CLI w konsoli. Przejdźmy teraz do omówienia poleceń AWS S3.
cp
Polecenie cp służy do kopiowania danych do i z zasobników S3. Można go użyć do kopiowania plików z lokalnego dysku do S3, z S3 na dysk lokalny, oraz między różnymi zasobnikami S3. Dostępnych jest szereg opcji konfiguracyjnych.
Przykładowo, parametr –dryrun pozwala na przetestowanie polecenia, parametr –storage-class pozwala określić klasę przechowywania danych w S3. Dostępne są też inne parametry, umożliwiające ustawienie szyfrowania. Polecenie cp daje Ci pełną kontrolę nad bezpieczeństwem Twoich danych w S3.
Sposób użycia
aws s3 cp <ŹRÓDŁO> <CEL> [--opcje]
Przykłady
Kopiowanie danych z dysku lokalnego do S3
aws s3 cp nazwa_pliku.txt s3://nazwa_zasobnika/nazwa_pliku_2.txt
Kopiowanie danych z S3 na dysk lokalny
aws s3 cp s3://nazwa_zasobnika/nazwa_pliku_2.txt nazwa_pliku.txt
Kopiowanie danych pomiędzy zasobnikami S3
aws s3 cp s3://nazwa_zasobnika/nazwa_pliku.txt s3://nazwa_zasobnika_2/nazwa_pliku_2.txt
Kopiowanie danych z dysku lokalnego do S3 w klasie przechowywania IA
aws s3 cp nazwa_pliku.txt s3://nazwa_zasobnika/nazwa_pliku_2.txt --storage-class STANDARD_IA
Kopiowanie wszystkich danych z folderu lokalnego do S3
aws s3 cp ./folder_lokalny s3://nazwa_zasobnika --recursive
ls
Polecenie ls służy do wyświetlania listy zasobników lub zawartości zasobników. Jeśli chcesz zobaczyć informacje o swoich zasobnikach lub dane w tych zasobnikach, użyj tego polecenia.
Sposób użycia:
aws s3 ls BRAK lub <NAZWA_ZASOBNIKA> [--opcje]
Przykłady
Wyświetlenie wszystkich zasobników na koncie
aws s3 ls Wynik: 2022-02-02 18:20:14 NAZWA_ZASOBNIKA_1 2022-03-20 13:12:43 NAZWA_ZASOBNIKA_2 2022-03-29 10:52:33 NAZWA_ZASOBNIKA_3
To polecenie wyświetla listę wszystkich zasobników na Twoim koncie, wraz z datą utworzenia.
Wyświetlenie wszystkich obiektów najwyższego poziomu w zasobniku
aws s3 ls NAZWA_ZASOBNIKA_1 lub s3://NAZWA_ZASOBNIKA_1 Wynik: PRE przykladowyPrefix/ 2021-12-09 12:23:20 8754 plik_1.png 2021-12-09 12:23:21 1290 plik_2.json 2021-12-09 12:23:21 3088 plik_3.html
To polecenie wyświetla listę obiektów najwyższego poziomu w zasobniku S3. Obiekty z przedrostkiem „przykladowyPrefix/” nie są tutaj widoczne, prezentowane są tylko obiekty główne.
Wyświetlenie wszystkich obiektów w zasobniku
aws s3 ls NAZWA_ZASOBNIKA_1 lub s3://NAZWA_ZASOBNIKA_1 --recursive Wynik: 2021-12-09 12:23:20 8754 plik_1.png 2021-12-09 12:23:21 1290 plik_2.json 2021-12-09 12:23:21 3088 plik_3.html 2021-12-09 12:23:20 16328 przykladowyPrefix/plik_1.txt 2021-12-09 12:23:20 29325 przykladowyPrefix/podprzykladowyPrefix/plik_1.css
To polecenie wyświetla listę wszystkich obiektów w zasobniku S3, w tym obiekty z przedrostkiem „przykladowyPrefix/” oraz podprzedrostkami.
mb
Polecenie mb służy do tworzenia nowych zasobników S3. Nazwa zasobnika musi być unikalna w skali całej usługi S3.
Sposób użycia
aws s3 mb <NAZWA_ZASOBNIKA>
Przykład
Utworzenie nowego zasobnika w określonym regionie
aws s3 mb mojaUnikalnaNazwaZasobnika --region eu-west-1
mv
Polecenie mv służy do przenoszenia danych do i z zasobników S3. Podobnie jak w przypadku polecenia cp, możesz przenosić pliki z lokalnego dysku do S3, z S3 na dysk lokalny, lub pomiędzy zasobnikami S3.
Główną różnicą pomiędzy poleceniami mv i cp jest to, że polecenie mv usuwa plik ze źródła po przeniesieniu do miejsca docelowego. Podobnie jak cp, mv ma wiele opcji konfiguracyjnych.
Sposób użycia
aws s3 mv <ŹRÓDŁO> <CEL> [--opcje]
Przykłady
Przenoszenie danych z dysku lokalnego do S3
aws s3 mv nazwa_pliku.txt s3://nazwa_zasobnika/nazwa_pliku_2.txt
Przenoszenie danych z S3 na dysk lokalny
aws s3 mv s3://nazwa_zasobnika/nazwa_pliku_2.txt nazwa_pliku.txt
Przenoszenie danych pomiędzy zasobnikami S3
aws s3 mv s3://nazwa_zasobnika/nazwa_pliku.txt s3://nazwa_zasobnika_2/nazwa_pliku_2.txt
Przenoszenie danych z dysku lokalnego do S3 w klasie przechowywania IA
aws s3 mv nazwa_pliku.txt s3://nazwa_zasobnika/nazwa_pliku_2.txt --storage-class STANDARD_IA
Przenoszenie wszystkich danych z określonego przedrostka w S3 do folderu lokalnego
aws s3 mv s3://nazwa_zasobnika/przykladowyPrefix ./folder_lokalny --recursive
presign
Polecenie presign tworzy wstępnie podpisany URL do obiektu w zasobniku S3. Możesz użyć tego polecenia, aby generować linki, które pozwalają innym użytkownikom na dostęp do określonych plików w S3.
Sposób użycia
aws s3 presign <KLUCZ_OBIEKTU> –expires-in <CZAS_W_SEKUNDACH>
Przykład
Wygenerowanie wstępnie podpisanego URL, który jest ważny przez godzinę, do obiektu w zasobniku
aws s3 presign s3://nazwa_zasobnika/przykladowyPrefix/nazwa_pliku.png --expires-in 3600 Wynik: https://s3.ap-south-1.amazonaws.com/nazwa_zasobnika/przykladowyPrefix/nazwa_pliku.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA4MCZT73PAX7ZMVFW%2F20220314%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20220314T054113Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=f14608bbf3e1f9f8d215eb5b439b87e167b1055bcd7a45c13a33debd3db1be96
rb
Polecenie rb służy do usuwania zasobników S3.
Sposób użycia
aws rb <NAZWA_ZASOBNIKA>
Przykład
Usunięcie zasobnika S3
aws s3 mb mojaNazwaZasobnika # To polecenie nie powiedzie się, jeżeli w zasobniku znajdują się jakiekolwiek dane.
Usunięcie zasobnika S3 wraz z danymi w zasobniku
aws s3 mb mojaNazwaZasobnika --force
rm
Polecenie rm służy do usuwania obiektów z zasobników S3.
Sposób użycia
aws s3 rm <S3Uri_Do_Pliku>
Przykłady
Usunięcie pojedynczego pliku z zasobnika S3
aws s3 rm s3://nazwa_zasobnika/przykladowy_prefix/nazwa_pliku_2.txt
Usunięcie wszystkich plików z określonym przedrostkiem w zasobniku S3
aws s3 rm s3://nazwa_zasobnika/przykladowy_prefix --recursive
Usunięcie wszystkich plików w zasobniku S3
aws s3 rm s3://nazwa_zasobnika --recursive
synchronizacja
Polecenie synchronizacji kopiuje i aktualizuje pliki ze źródła do miejsca docelowego, podobnie jak polecenie cp. Należy jednak zrozumieć kluczowe różnice. Polecenie cp kopiuje dane, nawet jeśli dane w miejscu docelowym są identyczne, nie usuwa też danych z miejsca docelowego, jeśli zostały usunięte ze źródła.
Synchronizacja sprawdza docelowe miejsce i kopiuje tylko nowe i zaktualizowane pliki. Polecenie sync działa podobnie do zatwierdzania i wypychania zmian w Git. Polecenie oferuje wiele opcji konfiguracji.
Sposób użycia
aws s3 sync <ŹRÓDŁO> <CEL> [--opcje]
Przykłady
Synchronizacja folderu lokalnego z S3
aws s3 sync ./folder_lokalny s3://nazwa_zasobnika
Synchronizacja danych S3 z folderem lokalnym
aws s3 sync s3://nazwa_zasobnika ./folder_lokalny
Synchronizacja danych pomiędzy dwoma zasobnikami S3
aws s3 sync s3://nazwa_zasobnika s3://nazwa_zasobnika_2
Przenoszenie danych między dwoma zasobnikami S3 z wykluczeniem wszystkich plików .txt
aws s3 sync s3://nazwa_zasobnika s3://nazwa_zasobnika_2 --exclude "*.txt
stronie internetowej
Zasobniki S3 mogą służyć do hostowania statycznych stron internetowych. Polecenie website umożliwia konfigurację statycznego hostingu S3 dla Twojego zasobnika.
Podajesz pliki indeksu i błędów, a S3 generuje adres URL, pod którym możesz wyświetlić swoją stronę.
Sposób użycia
aws s3 website <S3_URI> [--opcje]
Przykład:
Konfiguracja hostingu statycznego dla zasobnika S3, z określeniem plików indeksu i błędu
aws s3 website s3://nazwa_zasobnika --index-document index.html --error-document error.html
Podsumowanie
Mam nadzieję, że ten artykuł pozwolił Ci zapoznać się z najczęściej używanymi poleceniami AWS S3 do zarządzania zasobnikami. Jeżeli chcesz poszerzyć swoją wiedzę, zachęcamy do zapoznania się z materiałami certyfikacyjnymi AWS.