Mester AWS S3: 9 Kommandoer for Effektiv Datahåndtering

Effektiv Datahåndtering med AWS S3 Kommandoer

Å kontrollere og håndtere data kan ofte føles som en overveldende oppgave. Heldigvis finnes det verktøy som kan forenkle prosessen. AWS S3-kommandoer er en samling kraftige verktøy som gir deg muligheten til raskt og effektivt å administrere dine AWS S3-bøtter og data.

AWS S3 er en skybasert lagringstjeneste som tilbys av Amazon Web Services. Den er designet for å håndtere store mengder data på en pålitelig og skalerbar måte. S3 er en av de mest populære lagringstjenestene fra AWS, og tilbyr praktisk talt ubegrenset kapasitet. Tjenesten er kjent for sin høye tilgjengelighet, robusthet og sømløse integrasjon med andre AWS-tjenester.

AWS S3 er et fleksibelt verktøy som kan brukes i en rekke sammenhenger, fra lagring av mobil- og webapplikasjonsdata, til håndtering av store datasett for maskinlæring, og hosting av statiske nettsteder. Mulighetene er mange.

Hvis du benytter S3 i dine prosjekter, har du kanskje allerede erfart at administrering av et stort antall bøtter og terabyte med data kan være utfordrende. Derfor har vi satt sammen en oversikt over AWS S3-kommandoer, med eksempler, som kan hjelpe deg med å administrere dine S3-bøtter og data på en mer effektiv måte.

Konfigurering av AWS CLI

Før du kan ta i bruk AWS S3-kommandoene, må du konfigurere AWS Command Line Interface (CLI). Dette innebærer å installere AWS CLI og konfigurere legitimasjonene som gir tilgang til din AWS-konto og tjenestene dine. La oss se på hvordan du kan sette opp AWS CLI.

Først må du opprette en bruker med programmatisk tilgang til din AWS-konto. Det er viktig å krysse av for denne tilgangen under brukeropprettelsen.

Gi den nye brukeren de nødvendige tillatelsene. Etter at brukeren er opprettet, vil du få tilgang til tilgangsnøkkel-ID og hemmelig tilgangsnøkkel. Disse nøklene er nødvendig for å logge på via AWS CLI. Sørg for å lagre disse nøklene på et sikkert sted.

Åpne terminalen og kjør følgende kommando:

aws configure

Du vil nå bli bedt om å oppgi tilgangsnøkkel-ID og hemmelig tilgangsnøkkel. Angi disse og velg ønsket AWS-region og format for kommando-output. Det anbefales å bruke JSON-formatet for dette. Du kan endre disse innstillingene senere.

Nå kan du kjøre AWS CLI-kommandoer i terminalen. La oss se på noen av de mest brukte AWS S3-kommandoene.

cp

cp-kommandoen brukes til å kopiere data mellom ulike lokasjoner, enten det er mellom lokale maskiner og S3-bøtter, eller mellom to S3-bøtter. Det finnes en rekke tilleggsparametere som kan spesifiseres sammen med kommandoen.

For eksempel, --dryrun parameteren kan brukes til å teste kommandoen uten å faktisk utføre den. --storage-class parameteren lar deg spesifisere lagringsklassen til dataene i S3. Andre parametere lar deg angi kryptering og andre sikkerhetsinnstillinger. cp-kommandoen gir deg full kontroll over hvordan dataene dine håndteres i S3.

Bruksmåte

aws s3 cp <KILDE> <DESTINASJON> [--alternativer]

Eksempler

Kopier data fra lokal maskin til S3

aws s3 cp filnavn.txt s3://bøttenavn/filnavn_2.txt

Kopier data fra S3 til lokal maskin

aws s3 cp s3://bøttenavn/filnavn_2.txt filnavn.txt

Kopier data mellom S3-bøtter

aws s3 cp s3://bøttenavn/filnavn.txt s3://bøttenavn_2/filnavn_2.txt

Kopier data fra lokal maskin til S3 – IA (Infrequent Access)

aws s3 cp filnavn.txt s3://bøttenavn/filnavn_2.txt --storage-class STANDARD_IA

Kopier alle data fra en lokal mappe til S3

aws s3 cp ./lokal_mappe s3://bøttenavn --recursive

ls

ls-kommandoen brukes til å liste opp dine S3-bøtter eller innholdet i disse bøttene. Denne kommandoen er nyttig for å få oversikt over din lagring i S3.

Bruksmåte:

aws s3 ls INGEN eller <BØTTENAVN> [--alternativer]

Eksempler

List opp alle bøtter i kontoen

aws s3 ls

Output:
2022-02-02 18:20:14 BØTTENAVN_1
2022-03-20 13:12:43 BØTTENAVN_2
2022-03-29 10:52:33 BØTTENAVN_3

Denne kommandoen viser alle bøttene i din AWS-konto, sammen med datoen for opprettelse.

List opp alle objekter på øverste nivå i en bøtte

aws s3 ls BØTTENAVN_1 eller s3://BØTTENAVN_1 

Output:
                           PRE eksempelPrefiks/
2021-12-09 12:23:20       8754 fil_1.png
2021-12-09 12:23:21       1290 fil_2.json
2021-12-09 12:23:21       3088 fil_3.html

Denne kommandoen viser alle objektene som finnes direkte i den angitte S3-bøtten. Objekter i undermapper, som eksempelPrefiks/, vises ikke her.

List opp alle objekter i en bøtte

aws s3 ls BØTTENAVN_1 eller s3://BØTTENAVN_1 --recursive

Output:
2021-12-09 12:23:20       8754 fil_1.png
2021-12-09 12:23:21       1290 fil_2.json
2021-12-09 12:23:21       3088 fil_3.html
2021-12-09 12:23:20      16328 eksempelPrefiks/fil_1.txt
2021-12-09 12:23:20      29325 eksempelPrefiks/eksempelUnderPrefiks/fil_1.css

Denne kommandoen viser alle objektene i den angitte S3-bøtten, inkludert objekter i undermapper.

mb

mb-kommandoen brukes til å opprette nye S3-bøtter. Det er viktig å huske at navnet på den nye bøtten må være unikt for alle S3-bøtter på tvers av hele AWS.

Bruksmåte

aws s3 mb <BØTTENAVN>

Eksempel

Opprett en ny bøtte i en spesifikk region

aws s3 mb mittUnikeBøttenavn --region eu-west-1

mv

mv-kommandoen flytter data mellom ulike lokasjoner, enten det er mellom lokal maskin og S3, eller mellom ulike S3-bøtter. Denne kommandoen fungerer på samme måte som cp-kommandoen, men med en viktig forskjell.

I motsetning til cp-kommandoen, vil mv-kommandoen slette filen fra kildelokasjonen etter at den er flyttet til destinasjonen. Du kan angi en rekke alternativer for kommandoen.

Bruksmåte

aws s3 mv <KILDE> <DESTINASJON> [--alternativer]

Eksempler

Flytt data fra lokal maskin til S3

aws s3 mv filnavn.txt s3://bøttenavn/filnavn_2.txt

Flytt data fra S3 til lokal maskin

aws s3 mv s3://bøttenavn/filnavn_2.txt filnavn.txt

Flytt data mellom S3-bøtter

aws s3 mv s3://bøttenavn/filnavn.txt s3://bøttenavn_2/filnavn_2.txt

Flytt data fra lokal maskin til S3 – IA

aws s3 mv filnavn.txt s3://bøttenavn/filnavn_2.txt --storage-class STANDARD_IA

Flytt alle data fra et prefiks i S3 til en lokal mappe

aws s3 mv s3://bøttenavn/noenPrefiks ./lokalMappe --recursive

presign

presign-kommandoen genererer en forhåndssignert URL for en fil i en S3-bøtte. Denne URL-en kan brukes av andre for å få tilgang til den spesifikke filen i bøtten, uten å ha direkte tilgang til bøtten selv.

Bruksmåte

aws s3 presign <OBJEKT_NØKKEL> --expires-in <TID_I_SEKUNDER>

Eksempel

Generer en forhåndssignert URL som er gyldig i 1 time for et objekt i bøtta

aws s3 presign s3://bøttenavn/eksempelPrefiks/filnavn.png --expires-in 3600

Output:
https://s3.ap-south-1.amazonaws.com/bøttenavn/eksempelPrefiks/filnavn.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

rb-kommandoen brukes til å slette S3-bøtter. Vær forsiktig ved bruk av denne kommandoen, da den sletter bøtten permanent.

Bruksmåte

aws s3 rb <BØTTENAVN>

Eksempel

Slett en S3-bøtte

aws s3 rb mittBøttenavn
# Denne kommandoen vil mislykkes hvis det finnes data i bøtten.

Slett en S3-bøtte, inkludert dataene i bøtten.

aws s3 rb mittBøttenavn --force

rm

rm-kommandoen brukes til å slette objekter i S3-bøtter. Du kan bruke denne kommandoen til å slette enkeltfiler, eller å slette alle filer i en bøtte.

Bruksmåte

aws s3 rm <S3Uri_Til_Filen>

Eksempler

Slett én fil fra S3-bøtten

aws s3 rm s3://bøttenavn/eksempel_prefiks/filnavn_2.txt

Slett alle filer med et spesifikt prefiks i en S3-bøtte

aws s3 rm s3://bøttenavn/eksempel_prefiks --recursive

Slett alle filer i en S3-bøtte

aws s3 rm s3://bøttenavn --recursive

sync

sync-kommandoen brukes til å synkronisere data mellom kilde og destinasjon. Denne kommandoen er lik cp-kommandoen, men det er en viktig forskjell. Når du bruker cp-kommandoen vil den kopiere alle data fra kilde til destinasjon, selv om de allerede finnes i destinasjonen. sync-kommandoen derimot, vil kun kopiere nye og oppdaterte filer.

sync-kommandoen vil også slette filer i destinasjonen hvis de er slettet fra kilden. sync-kommandoen er nyttig for å holde to lokasjoner synkronisert. Det finnes en rekke alternativer for å tilpasse kommandoen.

Bruksmåte

aws s3 sync <KILDE> <DESTINASJON> [--alternativer]

Eksempler

Synkroniser lokal mappe til S3

aws s3 sync ./lokal_mappe s3://bøttenavn

Synkroniser S3-data til en lokal mappe

aws s3 sync s3://bøttenavn ./lokal_mappe

Synkroniser data mellom to S3-bøtter

aws s3 sync s3://bøttenavn s3://bøttenavn_2

Synkroniser data mellom to S3-bøtter, unntatt alle .txt filer

aws s3 sync s3://bøttenavn s3://bøttenavn_2 --exclude "*.txt"

website

Du kan bruke S3-bøtter til å hoste statiske nettsteder. website-kommandoen brukes til å konfigurere S3 statisk webhosting for din bøtte.

Du spesifiserer indeksfilen (f.eks. index.html) og feilfilen (f.eks. error.html) og S3 gir deg en URL for å se nettstedet ditt.

Bruksmåte

aws s3 website <S3_URI> [--alternativer]

Eksempel:

Konfigurer statisk hosting for en S3-bøtte, spesifiser indeks og feilfil.

aws s3 website s3://bøttenavn --index-document index.html --error-document error.html

Konklusjon

Vi håper denne oversikten gir deg en god forståelse av noen av de mest brukte AWS S3-kommandoene. Med disse kommandoene kan du effektivt administrere dine S3-bøtter og data. For mer inngående informasjon om AWS-tjenester, kan du vurdere å utforske AWS-sertifiseringsdetaljer.