Der Herbst ist angebrochen. Die Tage werden kürzer und das Jahr neigt sich langsam, aber sicher dem Ende entgegen. Trotz dessen wird Amazon nicht müde, weitere Neuerungen, Verbesserungen und Erweiterungen zu entwickeln und zu publizieren. Dieser Blogbeitrag stellt einen Ausschnitt aus den Ankündigungen des Monats Oktober dar, erhebt aber nicht den Anspruch auf Vollständigkeit. Das Hauptaugenmerk dieser Liste liegt auf Veränderungen, bei denen wir von einem direkten Einfluss auf Kunden im Versicherungs‑, Finanz- und Retailbereich ausgehen. Die größten Neuigkeiten dieses Monats beinhalten einige spannende Erweiterung zu Amazon PrivateLink, S3, Amazon Sagemaker, Amazon RDS und AWS SNS, sowie einer kurzen Zusammenfassung von Amazon Distro for OpenTelemetry, welches sich seit diesem Monat im Preview-Status befindet.
Amazon Simple Storage Service (S3)
Nachdem gegen Ende des letzten Monats AWS Outpost Kunden ermöglich wurde, die API des Simple Storage Services zu verwenden, um Daten so zu speichern und abzufragen, wie es in jeder normalen AWS Region möglich wäre, wurden zu Beginn des Monats Oktober auch Änderungen zur allgemeinen Sicherheit und Access Control dem Simple Storage Service hinzugefügt.
Bereits vor Jahren hat AWS hierfür die IAM-Policies hinzugefügt und Nutzern so die Möglichkeit gegeben, den Zugriff von außerhalb konsequent zu verbieten. Um diese Sicherheitsaspekte weiter zu erhöhen, wurden von AWS nun drei weitere Features eingeführt: Object Ownership, Bucket Owner Condition und Copy API via Access Points.
Object Ownership
Sofern geeignete Berechtigungen gesetzt wurden, ist es bereits seit längerer Zeit möglich, über mehrere AWS Accounts hinweg Dateien in ein und demselben S3 Bucket zu laden. Bis dato wurden sowohl der Besitz als auch die Kontrolle des Objektes dem Account zugeschrieben, der dieses hinzugefügt hat. Diese Form des many-to-one-Uploads kann durchaus praktisch sein, wenn der S3 Bucket als Data Lake für verschiedene Quellen fungieren soll, allerdings bringt es auch den Nachteil mit sich, dass der Besitzer des Buckets einen Teil der Kontrolle abgibt und somit unter Umständen nicht in der Lage ist, Objekte mittels Bucket Policies zu teilen.
Ein derartiges Szenario kann mit den neuen Möglichkeiten zur Object Ownership umgangen werden. Diese gestatten es, eine einheitliche Ownership zu erzwingen, d.h. es ist möglich dem Besitzer des Buckets den Besitz an jedem Objekt innerhalb des Buckets zuzuschreiben, sodass dieser frei über die Objekte verfügen kann. Um dies zu erreichen, kann entweder manuell dem Put-Befehl die ACL „bucket-owner-full-control“ während des Uploads hinzugefügt werden oder mittels Bucket Policy ein automatisches Hinzufügen dieser ACL erzwungen werden. Es ist allerdings zu beachten, dass eine Änderung der Bucket Policy nicht bereits existierende Objekte betrifft, sondern lediglich neu hinzugefügte Objekte. Die neuen Möglichkeiten zur Zuweisung der Object Ownership werden auch bereits von vielen weiteren AWS Services unterstützt.
Bucket Owner Condition
Das neue Feature Bucket Owner Condition erlaubt es, während eines Schreibprozesses auf einem S3 Bucket den Besitzer zu verifizieren. Hierfür genügt es dem „expectedBucketOwner“-Parameter oder dem „x‑amz-expected-bucket-owner“-HTTP-Header die Account ID des vermeintlichen Besitzers hinzuzufügen. Sollte diese mit der des tatsächlichen Besitzers übereinstimmen, so wird der Schreibvorgang ganz normal durchgeführt. In dem Fall, dass die IDs nicht übereinstimmen, wird der Schreibvorgang abgebrochen und der Fehlercode 403 ausgegeben.
Copy API via Access Points
Die S3 Access Points dienen der granularen Kontrolle über den Zugriff auf Objekte innerhalb eines Buckets. Anstatt eine einzige Bucket Policy zu verwalten, die für jedes einzelne Objekt die Zugriffrechte definiert, können Access Points für jede Applikation erstellt und dann mittels IAM Policies der Zugriff auf S3 reguliert werden. Hier ist als Neuerung in diesem Monat hinzugekommen, dass nun die S3 Access Points mit der CopyObject API unter Verwendung der ARN anstatt des Namens des Buckets benutzt werden können.
Amazon PrivateLink
Die Änderungen zu Amazon PrivateLink im Monat Oktober beziehen sich auf das Zusammenspiel mit dem serverless-compute-Service AWS Lambda. Seit Mitte Oktober ist es nun möglich, Lambda Funktionen mittels AWS PrivateLink von einem VPC oder von einem on-premises-System aus aufzurufen, ohne dass das öffentliche Internet hierfür passiert werden muss.
Die bisherige Architektur für ein derartiges Unterfangen beinhaltete ein Internet Gateway, ein NAT Gateway oder eine öffentliche IP-Adresse. Mit dieser Neuerung entfallen diese Notwendigkeiten und die Anfrage kann durch das AWS private Network direkt zum Ziel geroutet werden. Dadurch wird nicht nur die Sicherheit der Anfragen erhöht, da die Daten nicht mehr durch das öffentliche Internet geleitet werden müssen, sondern es ermöglicht nun auch Usern die Benutzung von Lambda-Funktionen, die aufgrund von Sicherheitsbestimmungen ihren VPCs den Zugang zum Internet verwehren mussten.
Amazon Sagemaker
Amazon Sagemaker ist der fully-managed Machine Learning Service von AWS, welcher es erlaubt schnell und einfach Modelle zu erstellen, zu trainieren und schlussendlich auch zu deployen. Kunden versprechen sich durch die Verwendung von Sagemaker unter anderem einen Kostenvorteil gegenüber einer self-managed Machine Learning Infrastruktur. Dies wird bei Sagemaker zum einen dadurch erreicht, dass das zeitintensive, und somit auch kostspielige, Verwalten der Infrastruktur ausgelagert wird und somit effektiver an der Lösung von Machine-Learning-Problemen gearbeitet werden kann, zum anderen über die Preispolitik. Letztere wurde von AWS verbessert und die Kosten für die ml.p2- und ml.p3-GPU-Instanzen gesenkt. Die genauen Änderungen können der unteren Tabelle entnommen werden.
Instanz | Preissenkung |
ml.p2.xlarge | -11% |
ml.p2.8xlarge | -14% |
ml.p2.16xlarge | -18% |
ml.p3.2xlarge | -11% |
ml.p3.8xlarge | -14% |
ml.p3.16xlarge | -18% |
ml.p3dn.24xlarge | -18% |
Amazon RDS
Auch der Relational Database Service von Amazon hat eine Verbesserung hinsichtlich des Preis-/Leistungsverhältnisses erhalten. Diese soll im Vergleich zur Benutzung der M5 bzw. R5 Instanzen-Typen durch die Verwendung der Graviton2 Prozessoren erreicht werden. Die neue M6g soll für normale Arbeitsvorgänge verwendet werden und die R6g, welch über 100% mehr Memory verfügt als ihr M6-Pendant, für rechenintensive Prozesse, wie zum Beispiel der Analyse von Big Data.
Amazon verspricht bei der Verwendung von Graviton2-Instanzen eine Verbesserung der Performance um bis zu 35% und eine Verbesserung des Preis-/Leistungsverhältnis von bis zu 52%. Die Performance-Verbesserungen sind unter anderem auf größere L1 und L2 Caches pro Kern zurückzuführen. Für einen Wechsel von einer älteren RDS Instanz auf eine der neuen Graviton2 Instanzen ist kein Erstellen einer neuen Datenbank nötig. Es genügt die alte Instanz in der Konsole zu modifizieren.
In der unteren Tabelle können Details zu einigen Konfigurationen eingesehen werden.
Instanz | vCPU | Memory in GiB | EBS Bandbreite in MB/s | Netzwerk Bandbreite in Gb/s | |
M6g | R6g | ||||
large | 2 | 8 | 16 | < 4750 | < 10 |
xlarge | 4 | 16 | 32 | < 4750 | < 10 |
2xlarge | 8 | 32 | 64 | < 4750 | < 10 |
4xlarge | 16 | 64 | 128 | 4750 | < 10 |
8xlarge | 32 | 128 | 256 | 9000 | 12 |
12xlarge | 48 | 192 | 384 | 12500 | 20 |
16xlarge | 64 | 256 | 512 | 19000 | 25 |
AWS FIFO SNS
Beim Erstellen einer Infrastruktur in der Cloud ist es unabdingbar eine Kommunikationsstrecke zwischen den einzelnen Services zu entwickeln. Diese Kommunikation wird in AWS häufig mit der Verwendung von AWS SNS in Verbindung mit AWS SQS gelöst.
AWS Simple Queue Service (SQS) ist ein fully managed Message-Queue Service. SQS speichert Nachrichten solange ab, bis diese aus der Queue abgezogen, verarbeitet und schlussendlich gelöscht werden.
AWS Simple Notification Service (SNS) ist ein pub/sub-Messaging Service von AWS, d.h. wenn eine Nachricht zu einem sogenannten Topic hinzugefügt wird, wird diese Nachricht an alle Subscriber publiziert. Die Übertragung solcher Nachrichten war bisher ungeordneter Natur, allerdings wurde im Verlauf des Oktobers die sogenannten SNS FIFO Topics vorgestellt.
Die AWS FIFO (First In First Out) Topics ermöglichen eine Bearbeitung der Nachrichten in der strikten Reihenfolge, in welcher diese auch eingetroffen sind. Neben der geordneten Verarbeitung von Nachrichten ergibt sich durch die Verwendung von FIFO Topics ein weiterer Vorteil: Verteilungssysteme, wie es SNS auch ist, können unter Umständen Nachrichten doppelt erzeugen beziehungsweise diese in doppelter Form an die Subscriber weiterreichen. Um dies zu verhindern, können Einstellungen vorgenommen werden, sodass anhand des Bodys der Nachricht eine eindeutige ID erzeugt und durch das Abgleichen dieser, Duplikate gefunden und entfernt werden können.
Die Verwendung von FIFO SNS Topics und FIFO Queues erleichtern die Kommunikation zwischen Anwendungen, bei denen die Reihenfolge der Ausführung elementar ist oder eine doppelte Ausführung aufgrund von duplizierten Benachrichtigungen nicht tolerierbar ist.
Amazon Distro for OpenTelemetry (Preview)
Stillstand ist Rückschritt. In der heutigen Zeit befindet sich alles in Bewegung. Irgendetwas passiert immer – Sei es die Abfrage von Webseiten, das Bearbeiten von Streams oder das Handhaben von Ereignissen. Um den Status eines Systems zu erfassen, kann es weit weniger zielführend sein, einzelne Abfragen zu beobachten, als vielmehr das Gesamtbild in Form von Statistiken zu betrachten.
AWS Distro for Open Telemetry ist eine sichere Distribution von OpenTelemetry, welche APIs, Libraries und Agents bereitstellt, um beispielsweise Metriken zum Monitoring von Applikationen zu sammeln. Der Service ermöglicht eine einmalige Instrumentalisierung von Applikationen, sodass diese automatisch Metriken an mehrere Monitoring Tools weiterreichen. AWS Distro for OpenTelemetry sammelt außerdem Metadaten von AWS Ressourcen und Managed Services. Dies erlaubt es die Performancedaten der Applikation mit den Daten der jeweiligen Infrastruktur in Verbindung zu setzen und ermöglicht so, einen detaillierten Einblick in den Zustand des Systems zu erhalten.
Für weitere regelmäßige Updates zum Thema AWS Cloud, folgen Sie unserer Präsenz auf Xing und Instagram oder direkt unserem Blog.