Ausgesperrt! – Vorsicht bei S3 Berechtigung per Bucket policy

AWS S3 bietet viele Möglichkeiten, den Zugriff zu regeln

S3 Buckets bieten flexible Möglichkeiten, Daten abzulegen und den Zugriff auf diese Daten zu beschränken. Dies für den öffentlichen (Internet) und internen Gebrauch.

Über die normalen Berechtigungen (Permissions) lassen sich Berechtigungen ganz grob für „list“ (Anzeigen), „upload/delete“ (Schreiben), „view permissions“ (Berechtigungen sehen) sowie „edit permission“ (Berechtigungen schreiben) einstellen. Das reicht für viele Fälle, manchmal braucht man aber eine feinere Berechtigungsverwaltung, der bucket policy. Die ist aber nicht ohne Fallstricke…

(mehr …)

6 Tipps und Tricks für AWS Kommandozeilen Ninjas

Das AWS Command Line Interface (CLI) erlaubt es Ihnen AWS Services einfach und bequem zu verwalten. Mit dem CLI können Sie im Terminal interaktiv Aufgaben bewältigen ohne die AWS Management Console benutzen zu müssen, was einen höheren Automatisierungsgrad ermöglicht. Außerdem können Shell-Skripte mit der Hilfe des AWS CLI verwendet werden um Infrastruktur-Setups zu automatisieren. Ein Beispiel: mit einem kleinen Shell-Skript und der AWS CLI kann zum Beispiel am Ende des Boot-Prozesses einer EC2-Instanz ein EBS Volume verbunden oder ein DNS-Eintrag über Route 53 angepasst werden.

Dieser Artikel beschreibt Tipps und Tricks für die Verwendung der AWS CLI im DevOps Alltag.

Kommando-Vervollständigung

Bei der Verwendung der CLI im Terminal ist die Kommando-Vervollständigung ein Killer-Feature. Nach dem Aktivieren lassen sich Kommandos mit der TAB-Taste automatisch vervollständigen. Damit kann die Arbeitsgeschwindigkeit bei der Verwendung der CLI signifikant erhöht werden.

Die folgenden Schritte sind notwendig um die Kommando-Vervollständigung für die bash auf OS X zu aktivieren:

echo "complete -C aws_completer aws" >> ~/.bash_profile
source ~/.bash_profile

(mehr …)

Amazon S3 und Amazon Glacier im Zusammenspiel

Seit dem 14.11.2012 ist nun die angekündigte Verbindung zwischen Amazon S3 und Amazon Glacier verfügbar. Beide zusammen sind ein unschlagbares Team …

Amazon S3 ist ein Cloud-Speicher und hat aufgrund der Redundanz über mehrere Availability-Zonen eine sehr hohe Verfügbarkeit von 99,999999999%, kostest 0,125 US$ pro GByte / Monat  und hat einen schnellen Lese- und Schreibzugriff über HTTPS. Kunden nutzen Amazon S3 in der Regel für die Ablage von Videos, Bildern oder Datensicherungen. Allerdings summieren sich die Kosten bei sehr grossen Datenmengen entsprechend und nicht alle Daten müssen stets sofort wieder im Lesezugriff sein.

Aus diesem Grund hat Amazon mit dem Dienst Amazon Glacier einen Cloud-Speicher für langfrist-Archive seit Sommer 2012 im Angebot. Auch Amazon Glacier hat aufgrund der Redundanz über mehrere Availability-Zonen eine sehr hohe Verfügbarkeit von 99,999999999%, kostet aber nur 0,011 US$ pro GByte / Monat, also ungefähr ein 1/10 von Amazon S3. Der wesentliche Unterschied ist, das Daten nach Amazon Glacier über HTTPS schnell eingestellt werden können, der Abruf der Daten von Amazon Glacier aber angefordert werden muss, anschließend wird innerhalb von 3-4 Stunden ein Download-Link zur Verfügung gestellt, das reduziert das Einsatzszenario wirklich nur auf Archiv-Daten.

(mehr …)

Amazon Glacier: Archiv Speicher für einen Penny pro GB pro Monat

Mit einem kleinen Paukenschlag hat Amazon AWS einen komplett neuen Service bereitgestellt: Amazon Glacier ist ein sehr kostengünstiger Archiv-Speicher in der Cloud. Hier die zusammengefassten Leistungsmerkmale:

  • Pro Gigabyte gespeicherter Daten verlangt Amazon je nach AWS-Region zwischen 1 und 1,2 US-Cent im Monat
  • Die Daten werden wie bei S3 multiredundant gespeichert, Amazon spricht von einer Verfügbarkeit von 99.999999999%
  • Innerhalb von Glacier sind die Daten mit 256-AES verschlüsselt, wobei Amazon die Schlüssel selbst verwaltet
  • Der Upload von Daten erfolgt über ein eigenes API bzw. über Tools von Drittherstellen wie z.B. http://fastglacier.com/, wie bei Amazon AWS üblich, ist der Traffic für eingehende Daten kostenlos
  • Der Abruf der Daten ist allerdings nicht wie bei S3 sofort möglich, sondern es muss ein Request für den Download erfolgen, innerhalb von 3-4 Stunden wird dann ein Download-Link zu den Daten bereitgestellt. Der Download kostet, sofern er ein definiertes Limit überschreitet extra Geld. Somit reduziert sich das Einsatzszenario von Glacier auf Daten, die langfristig dauerhaft archiviert werden müssen und nur gelegentlich abgerufen werden müssen.

Es existieren bereits einige Tools, die wie hier aufgelistet haben:

S3 als Laufwerk für EC2-Windows oder Linux mappen

S3 ist der zentrale Speicherdienst von Amazon AWS. S3 hat für den Kunden eine unlimitierte Größe, verfügt über ein Rechtemanagement, kann Objekte versionieren bzw. mit Verfallsdaten versehen und ist über mehrere Availibility-Zonen verteilt, so dass die Daten sehr sicher gespeichert sind.

Über ein eigenes API kann man in S3 Daten speichern und entsprechend abrufen oder über HTTP wieder herunterladen …  manchmal aber braucht man für eine vielleicht existierende Software den Lese- und Schreibzugriff auf S3 über einen Laufwerkszugriff … gücklicherweise gibt es hier sowohl für Windows als auch für Linux entsprechende Software, die dann z.B. direkt auf einer entsprechenden EC2-Instanz installiert werden kann. Hier eine aktuelle Aufstellung: