com!-Academy-Banner

Cloud-Ressourcen stundenweise mieten

Service ohne Server

von - 17.12.2018
AWS-Administrationskonsole
AWS-Administrationskonsole: Hier finden sich Informationen zur VM.
Das Betreiben vollwertiger Server ist oft Overkill. Denken Sie an Aufgaben, in denen eingehende Informationen nur an andere Dienste weitergeleitet werden. In diesem Fall schlägt die Stunde eines als Lambda bezeichneten Features: eine in der Cloud gehostete Ausführungsumgebung, die „Funktionen“ bei Auftreten eines Trigger-Ereignisses ausführt, ohne im Hintergrund eine virtuelle Maschine anzuwerfen.
Derzeit können Sie die für Lambda vorgesehenen Funk­tionen in einer Gruppe verschiedener Programmiersprachen erstellen: C# (.NET Core), Go, Java (Java 8), Node.js (Java­Script) und Python.
Im nächsten Schritt erfolgt das Generieren der Funktion. Hierbei ist es empfehlenswert, auf Amazons hauseigene Erweiterungen für die Eclipse-IDE zurückzugreifen, die das komfortable Generieren ermöglichen. Ein grundlegendes Projektskelett würde folgendermaßen aussehen:
  1. public class Lambda
    FunctionHandler implements RequestHandler<String, String> {
  2.     @Override
  3.       public String handle
        Request(String input, 

        Context context) {
  4.     context.getLogger().
        log("Input: " + input);

        return null;
  5.     }
  6. }
 
Zum erfolgreichen Fertigstellen der Lambda-Funktion müssen Sie diese im Editor hochladen und im Backend mit einer Aktivierungs-Rolle ausstatten.
In der Praxis ist das primäre Problem beim Umgang mit Lambda nicht das Erzeugen der Logik, sondern das erstmalige Einarbeiten des Workflows.

Amazon’sche Speicherdienste

Während EC2-Instanzen einen lokalen Speicher mitbringen, in dem Sie das Ergebnis Ihrer Arbeit ablegen können, ist eine Lambda-Funktion definitionsgemäß heimatlos. Amazon stellt eine Gruppe von Speicherverfahren bereit, einerseits Datenbanken, andererseits block- und objektorientierte Speicher.
Beginnen wollen wir mit S3, dem ältesten AWS-Dienst, der von Amazon seit Jahren unverändert angeboten wird. Der Simple Storage Service wird als Speichersystem für das Internet betrachtet. Daraus folgt, dass es keine Möglichkeit zum blockbasierten Zugriff gibt; ein S3-Speicher lässt sich also nicht wie ein gewöhnlicher Festwertspeicher mounten und mit einem beliebigen Dateisystem wie NTFS oder EXT4 versehen. Stattdessen implementiert Amazon ein ungewohnt aussehendes Schema (siehe Bild unten).
Im S3-Account finden sich als Bucket bezeichnete Strukturen, die der Verwaltung der Informationen dienen. Buckets erlauben das Zuweisen von Lese-, Schreib- und sonstigen Berechtigungen auf globaler Ebene. Da Sie pro AWS-Account bis zu hundert Buckets haben können, bietet es sich an, jeder Applikation einen Bucket zuzuweisen. Dies ist auch in Bezug auf die Abrechnung von Vorteil, da Sie so leicht feststellen können, welches Programm für wie viel Prozent Ihrer Kosten verantwortlich zeichnet.
Eine Besonderheit ist: Alle Buckets sind öffentlich und stellen ihre Inhalte unter http://<bucketname>.s3.amazonaws.com/<key> zum Zugriff bereit. Diese Öffentlichkeit ist insofern kritisch, als der für den Bucket gewählte Name weltweit einzigartig sein muss, selbst dann, wenn man über die Access Control List (ACL) ausschließlich angemeldete Benutzer freigibt.
In den Buckets finden sich als Object bezeichnete Unterfelder, die die eigentlichen Informationen bereitstellen. Jedes Element darf bis zu 5 Terabyte Speicherplatz in Anspruch nehmen; der Zugriff erfolgt über die genannten URLs.
Bemerkenswert an S3 ist die Versionierung. Wenn man die Funktion aktiviert, so legt der Bucket bei jedem Upload oder Löschvorgang eine neue Version an. Auf diese Art und Weise sind Sie vor Überschreiben und Löschen geschützt, allerdings zu wesentlich höheren Betriebskosten. Die Versionen werden nacheinander verrechnet. Laden Sie zehn Versionen eines 4 GByte großen Images hoch, so dürfen Sie unterm Strich für insgesamt 40 GByte bezahlen.
Apropos Kosten: Die pro Monat anfallenden Gebühren sind nicht nur von ihrem absoluten Speicherverbrauch, sondern auch von der ausgewählten Zuverlässigkeitsklasse abhängig. Da eine vollständige Besprechung der Preise - sie sind unter anderem von der Region abhängig.
Zur Langzeitarchivierung bietet Amazon mit Glacier einen Spezial-Speicher an. In manchen Regionen fällt pro Gigabyte nur ein Dollarcent pro Monat an. Der Nachteil ist, dass der Zugriff auf in Glacier befindliche Infos zwischen drei und fünf Stunden in Anspruch nimmt. Beachten Sie zudem, dass das Verschieben von Informationen in den Infrequent-Access-Bereich keine Universallösung ist. Greift man auf dort befindliche Infos zu, so verrechnet Amazon Transferspesen, die die gesparte Monatsmiete für den eigentlichen Speicherplatz in vielen Fällen sehr schnell auffressen.
Verwandte Themen