9 poleceń AWS S3 z przykładami do zarządzania zasobnikiem i danymi

Kontrola i zarządzanie danymi może być żmudnym zadaniem. Te polecenia AWS S3 pomogą Ci szybko i wydajnie zarządzać zasobnikami i danymi AWS S3.

AWS S3 to usługa obiektowej pamięci masowej świadczona przez AWS. Jest to najczęściej używana usługa pamięci masowej od AWS, która może wirtualnie przechowywać nieskończoną ilość danych. Jest wysoce dostępny, trwały i łatwy do zintegrowania z kilkoma innymi usługami AWS.

AWS S3 może być używany przez osoby z dowolnymi wymaganiami, takimi jak przechowywanie aplikacji mobilnych/sieciowych, przechowywanie dużych danych, przechowywanie danych uczenia maszynowego, hosting statycznych stron internetowych i wiele innych.

Jeśli korzystasz z S3 w swoim projekcie, wiesz, że biorąc pod uwagę ogromną pojemność pamięci, zarządzanie setkami zasobników i terabajtami danych w tych zasobnikach może być wymagającą pracą. Mamy listę poleceń AWS S3 z przykładami, których możesz użyć do wydajnego zarządzania zasobnikami i danymi AWS S3.

Konfiguracja interfejsu AWS CLI

Po pomyślnym pobraniu i zainstalowaniu AWS CLI, musisz skonfigurować poświadczenia AWS, aby móc uzyskać dostęp do konta i usług AWS. Pozwól nam szybko omówić, jak skonfigurować AWS CLI.

Pierwszym krokiem jest utworzenie użytkownika z programowym dostępem do Konta AWS. Pamiętaj o zaznaczeniu tego pola podczas tworzenia użytkownika dla AWS CLI.

Nadaj uprawnienia i utwórz użytkownika. Na ostatnim ekranie po pomyślnym utworzeniu tego użytkownika skopiuj identyfikator klucza dostępu i tajny klucz dostępu dla tego użytkownika. Użyjemy tych danych uwierzytelniających, aby zalogować się za pośrednictwem interfejsu AWS CLI.

Teraz przejdź do wybranego terminala i uruchom następujące polecenie.

aws configure 

Po wyświetleniu monitu wprowadź identyfikator klucza dostępu i tajny klucz dostępu. Wybierz dowolny region AWS i format wyjściowy polecenia. Osobiście wolę używać formatu JSON. To nic wielkiego, zawsze możesz zmienić te wartości później.

Możesz teraz uruchomić dowolne polecenie AWS CLI w konsoli. Przejdźmy teraz przez polecenia AWS S3.

cp

Polecenie cp po prostu kopiuje dane do iz zasobników S3. Może być używany do kopiowania plików z lokalnego do S3, z S3 do lokalnego i między dwoma wiaderkami S3. Istnieje wiele innych parametrów, które możesz podać za pomocą poleceń.

Na przykład parametr -dryrun, aby przetestować polecenie, parametr –storage-class, aby określić klasę przechowywania danych w S3, inne parametry do ustawienia szyfrowania i wiele więcej. The polecenie cp daje pełną kontrolę nad konfiguracją bezpieczeństwa danych w S3.

Stosowanie

aws s3 cp <SOURCE> <DESTINATION> [--options]

Przykłady

Skopiuj dane z lokalnego do S3

aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt

Skopiuj dane z S3 do lokalnego

aws s3 cp s3://bucket_name/file_name_2.txt file_name.txt

Kopiuj dane między zasobnikami S3

aws s3 cp s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt

Skopiuj dane z lokalnego do S3 – IA

aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA 

Skopiuj wszystkie dane z folderu lokalnego do S3

aws s3 cp ./local_folder s3://bucket_name --recursive

ls

The polecenie ls służy do wylistowania wiader lub zawartości wiader. Jeśli więc chcesz po prostu wyświetlić informacje o swoich zasobnikach lub dane w tych zasobnikach, możesz użyć polecenia ls.

Stosowanie:

aws s3 ls NONE or <BUCKET_NAME> [--options]

Przykłady

Wyświetl wszystkie zasobniki na koncie

aws s3 ls

Output:
2022-02-02 18:20:14 BUCKET_NAME_1
2022-03-20 13:12:43 BUCKET_NAME_2
2022-03-29 10:52:33 BUCKET_NAME_3

To polecenie wyświetla listę wszystkich zasobników na Twoim koncie z datą utworzenia zasobnika.

Wymień wszystkie obiekty najwyższego poziomu w zasobniku

aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 

Output:
                           PRE samplePrefix/
2021-12-09 12:23:20       8754 file_1.png
2021-12-09 12:23:21       1290 file_2.json
2021-12-09 12:23:21       3088 file_3.html

To polecenie wyświetla listę wszystkich obiektów najwyższego poziomu w zasobniku S3. Należy zauważyć, że obiekty z przedrostkiem samplePrefix/ nie są tutaj pokazywane tylko obiekty najwyższego poziomu.

Wymień wszystkie obiekty w wiadrze

aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 --recursive

Output:
2021-12-09 12:23:20       8754 file_1.png
2021-12-09 12:23:21       1290 file_2.json
2021-12-09 12:23:21       3088 file_3.html
2021-12-09 12:23:20      16328 samplePrefix/file_1.txt
2021-12-09 12:23:20      29325 samplePrefix/sampleSubPrefix/file_1.css

To polecenie wyświetla listę wszystkich obiektów w zasobniku S3. Zwróć uwagę, że wyświetlane są również obiekty z przedrostkiem samplePrefix/ i wszystkimi podprzedrostkami.

mb

The polecenie mb służy po prostu do tworzenia nowych łyżek S3. Jest to dość proste polecenie, ale aby utworzyć nowe zasobniki, nazwa nowego zasobnika powinna być unikalna we wszystkich zasobnikach S3.

Stosowanie

aws s3 mb <BUCKET_NAME>

Przykład

Utwórz nowy zasobnik w określonym regionie

aws s3 mb myUniqueBucketName --region eu-west-1

mv

The polecenie mv po prostu przenosi dane do i z zasobników S3. Podobnie jak polecenie cp, polecenie mv służy do przenoszenia danych z lokalnego do S3, S3 do lokalnego lub między dwoma wiaderkami S3.

Jedyna różnica między poleceniem mv i cp polega na tym, że podczas używania polecenia mv plik jest usuwany ze źródła. AWS przenosi ten plik do miejsca docelowego. Istnieje wiele opcji, które można określić za pomocą polecenia.

Stosowanie

aws s3 mv <SOURCE> <DESTINATION> [--options]

Przykłady

Przenieś dane z lokalnego do S3

aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt

Przenieś dane z S3 do lokalnego

aws s3 mv s3://bucket_name/file_name_2.txt file_name.txt

Przenieś dane między zasobnikami S3

aws s3 mv s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt

Przenieś dane z lokalnego do S3 – IA

aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA 

Przenieś wszystkie dane z prefiksu w S3 do folderu lokalnego.

aws s3 mv s3://bucket_name/somePrefix ./localFolder --recursive

przepisać

Polecenie presign generuje wstępnie podpisany adres URL dla klucza w zasobniku S3. Możesz użyć tego polecenia, aby wygenerować adresy URL, które mogą być używane przez innych do uzyskiwania dostępu do pliku w określonym kluczu zasobnika S3.

Stosowanie

aws s3 presign – wygasa za

Przykład

Wygeneruj wstępnie podpisany adres URL, który jest ważny przez godzinę dla obiektu w zasobniku.

aws s3 presign s3://bucket_name/samplePrefix/file_name.png --expires-in 3600

Output:
https://s3.ap-south-1.amazonaws.com/bucket_name/samplePrefix/file_name.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 po prostu do usuwania wiader S3.

Stosowanie

aws rb <BUCKET_NAME>

Przykład

Usuń zasobnik S3.

aws s3 mb myBucketName
# This command fails if there is any data in this bucket.

Usuń zasobnik S3 wraz z danymi w zasobniku S3.

aws s3 mb myBucketName --force

rm

Polecenie rm służy po prostu do usuwania obiektów w zasobnikach S3.

Stosowanie

aws s3 rm <S3Uri_To_The_File>

Przykłady

Usuń jeden plik z zasobnika S3.

aws s3 rm s3://bucket_name/sample_prefix/file_name_2.txt

Usuń wszystkie pliki z określonym prefiksem w zasobniku S3.

aws s3 rm s3://bucket_name/sample_prefix --recursive

Usuń wszystkie pliki w zasobniku S3.

aws s3 rm s3://bucket_name --recursive

synchronizacja

Polecenie synchronizacji kopiuje i aktualizuje pliki ze źródła do miejsca docelowego, podobnie jak polecenie cp. Ważne jest, abyśmy zrozumieli różnicę między poleceniem cp a poleceniem sync. Gdy używasz cp, kopiuje dane ze źródła do miejsca docelowego, nawet jeśli dane już istnieją w miejscu docelowym.

Nie usunie również plików z miejsca docelowego, jeśli zostaną usunięte ze źródła. Jednak synchronizacja sprawdza miejsce docelowe przed skopiowaniem danych i kopiuje tylko nowe i zaktualizowane pliki. The polecenie synchronizacji jest podobne do zatwierdzania i wypychania zmian do zdalnej gałęzi w git. Polecenie synchronizacji oferuje wiele opcji dostosowywania polecenia.

Stosowanie

aws s3 sync <SOURCE> <DESTINATION> [--options]

Przykłady

Synchronizuj folder lokalny z S3

aws s3 sync ./local_folder s3://bucket_name

Synchronizuj dane S3 z folderem lokalnym

aws s3 sync s3://bucket_name ./local_folder

Synchronizuj dane między dwoma zasobnikami S3

aws s3 sync s3://bucket_name s3://bucket_name_2

Przenieś dane między dwoma zasobnikami S3 z wyłączeniem wszystkich plików .txt

aws s3 sync s3://bucket_name s3://bucket_name_2 --exclude "*.txt

stronie internetowej

Zasobów S3 można używać do hostowania statycznych witryn internetowych. Polecenie website służy do konfigurowania hostingu statycznej strony internetowej S3 dla Twojego zasobnika.

Określasz indeks i pliki błędów, a S3 podaje adres URL, pod którym możesz wyświetlić plik.

Stosowanie

aws s3 website <S3_URI> [--options]

Przykład:

Skonfiguruj hosting statyczny dla zasobnika S3 i określ pliki indeksów i błędów

aws s3 website s3://bucket_name --index-document index.html --error-document error.html

Wniosek

Mam nadzieję, że powyższe daje wyobrażenie o niektórych często używanych poleceniach AWS S3 do zarządzania zasobnikami. Jeśli chcesz dowiedzieć się więcej, zapoznaj się ze szczegółami certyfikacji AWS.