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.