AWS CLI richtig verwenden

Lesezeit
1 Minute
Bis jetzt gelesen

AWS CLI richtig verwenden

24.02.2019 - 00:00
Veröffentlicht in:
Zum Austausch von Dateien bietet sich für Unternehmen Amazon S3 an. Um das Hochladen über die Konsole zu beschleunigen, eignet sich das AWS Command Line Interface. Dabei gibt es jedoch einige Dinge zu beachten, gerade wenn es um das Verwalten von S3-Buckets geht, mit denen sich wiederum beliebige Verzeichnisse synchronisieren lassen.
Beim AWS CLI handelt es sich um ein Open-Source-Tool auf Basis von AWS SDK for Python (Boto3). Es stellt eine Reihe von Befehlen für die Interaktion mit AWS-Services bereit. Mit geringem Konfigurationsaufwand und über ein klassisches Terminal-Programm lassen sich damit sämtliche Funktionen der AWS Management Console nutzen und darüber hinaus mithilfe von Skripten automatisieren. Über das CLI ist der Upload von Dateien über mehrere parallele Kanäle möglich, sodass sich die gesamte Bandbreite einer Netzwerkverbindung nutzen lässt. Das Interface bietet außerdem eine Synchronisierungsfunktion für den Abgleich eines lokalen Verzeichnisses mit einem S3 Bucket.

Für den Datenaustausch verwalten Sie S3-Buckets über AWS-S3-High-Level-Befehle. Diese unterstützen häufig genutzte Vorgänge wie das Erstellen, Entfernen und Auflisten von Buckets. So erstellen Sie etwa mit dem Kommando aws s3 mb einen neuen Bucket. Dabei müssen Sie eindeutige Bucket-Namen verwenden, die DNS-kompatibel sein sollten. Sie können Kleinbuchstaben, Zahlen, Bindestriche und Punkte enthalten, aber nur mit einem Buchstaben oder einer Zahl beginnen und enden. Ein Punkt neben einem Bindestrich oder einem weiteren Punkt ist unzulässig. Der für die Dateisynchronisation relevante Befehl aws s3 sync ermöglicht folgende Quell-Zielkombinationen:

  • Lokales Dateisystem zu Amazon S3
  • Amazon S3 zu lokalem Dateisystem
  • Amazon S3 zu Amazon S3
Das folgende Beispiel synchronisiert die Inhalte des aktuellen Arbeitsverzeichnisses mit einem S3-Ordner namens "path" im S3-Bucket "my-bucket". aws s3 sync aktualisiert dabei ausgehend vom Quellverzeichnis alle Dateien, die eine andere Größe oder Änderungszeit als die gleichnamigen Dateien im Ziel haben. Die Ausgabe enthält bestimmte Vorgänge, die während der Synchronisierung ausgeführt wurden. In diesem Beispiel wird das Unterverzeichnis "MySubdirectory" mitsamt seinen Inhalten rekursiv in "s3://my-bucket/path/MySubdirectory" synchronisiert:
$ aws s3 sync . s3://my-bucket/path
upload: MySubdirectory\MyFile3.txt to s3://my-bucket/path/
 MySubdirectory/MyFile3.txt
upload: MyFile2.txt to s3://my-bucket/path/MyFile2.txt
upload: MyFile1.txt to s3://my-bucket/path/MyFile1.txt
Normalerweise werden mit aws s3 sync fehlende oder veraltete Dateien beziehungsweise Objekte zwischen Quelle und Ziel nur kopiert. Sie können aber die Option "--delete" hinzufügen, um Dateien oder Objekte, die nicht im Quellverzeichnis vorhanden sind, aus dem Ziel zu entfernen. Mehr Informationen entnehmen Sie dem Online-Benutzerhandbuch [1] für die AWS CLI.

ln

[1] https://docs.aws.amazon.com/de_de/cli/latest/userguide/cli-chap-welcome.html

Ähnliche Beiträge