Getty Images/iStockphoto
Mit der richtigen AWS Placement Group Latenzzeiten reduzieren
AWS bietet drei unterschiedliche Placement Groups, auf denen EC2-Instanzen den jeweiligen Anforderungen an Latenz und Leistung entsprechend verteilt werden können.
Cloud-Anwendungen haben oft strenge Anforderungen. Es gibt verteilte Anwendungen mit spezifischen Anforderungen an den Einsatz interner Knoten innerhalb eines bestimmten Gebiets und an die Hardware. Diese Merkmale werden durch die Anforderungen an Latenz, Skalierbarkeit und Verfügbarkeit der Anwendungen bestimmt, die diese Backend-Komponenten unterstützen.
AWS-Benutzer haben die Möglichkeit, die Bereitstellung von EC2-Instanzen in einer verteilten Umgebung zu optimieren. In der Regel werden verteilte Knoten als EC2-Instanzen in mehreren Availability Zones (AZs, Verfügbarkeitszonen) innerhalb einer AWS-Region gestartet. Dieses Setup ist eine gute Praxis für Anwendungen, bei denen die Knoten unabhängig voneinander sind und nicht viele Daten untereinander austauschen.
Es gibt Anwendungen, bei denen EC2-Instanzen stark miteinander interagieren und in einer einzigen AZ bereitgestellt werden müssen, um Latenzzeiten zu reduzieren und den Datendurchsatz zwischen den Knoten zu optimieren. Wenn EC2-Instanzen in einer einzelnen AZ gestartet werden, werden sie standardmäßig auf unterschiedlicher Hardware bereitgestellt. Während dies für viele Anwendungen das beste Szenario ist, gibt es Situationen, in denen dies nicht unbedingt die gewünschte Bereitstellungsstrategie ist.
Eine Möglichkeit ist die Verwendung von AWS Placement Groups oder AWS Placement-Gruppen, mit denen verteilte Anwendungen in der Cloud optimiert werden können. Sehen wir uns die drei Strategien an und wie man sie konfiguriert, um die Latenz zu verringern.
Strategien für AWS Placement-Gruppen
AWS Placement-Gruppen bieten Flexibilität. Ob eine oder mehrere AZs, die Flexibilität liegt in der zugrunde liegenden physischen Infrastruktur, auf der EC2-Instances bereitgestellt werden. Placement-Gruppen bieten drei Arten von Konfigurationen: Cluster, Partition und Spread.
Cluster Placement-Gruppe
Eine Cluster-Placement-Gruppe stellt eine logische Gruppierung von EC2-Instanzen innerhalb einer einzigen AZ dar. Dies optimiert die Datenübertragungsgeschwindigkeit und -bandbreite zwischen den Knoten. AWS erhebt Gebühren für Datenübertragungen zwischen verschiedenen AZ. Datenübertragungen innerhalb einer einzelnen AZ sind kostenlos. Durch die Platzierung von EC2-Instanzen in einer einzigen AZ kann es für Knoten, die große Datenmengen austauschen, kosteneffektiv sein.
Diese Einstellung eignet sich gut für Anwendungen mit Knoten, die komplexe Rechenaufgaben ausführen und stark miteinander interagieren, wie zum Beispiel Datenanalyseplattformen. Um eine optimale Leistung zu erzielen, aktivieren Sie die erweiterte Vernetzung für EC2-Instances und stellen Sie sicher, dass die ausgewählten Instance-Typen die erforderliche Netzwerkbandbreite bereitstellen.
Partition Placement-Gruppe
Partition Placement-Gruppen starten EC2-Instanzen gemäß vorkonfigurierten Infrastrukturgruppen, die Partitionen genannt werden. Hier werden die Knoten, die zu einer bestimmten Partition gehören, auf derselben zugrunde liegenden Hardware bereitgestellt. Jede Partition hat ihre eigene unabhängige Hardwarezuweisung. EC2-Instanzen in verschiedenen Partitionen sind voneinander getrennt.
Partitionen sind eine gängige Anforderung in einigen Speicher- und Datenverarbeitungsanwendungen. Datensätze werden auf der Grundlage spezifischer Anwendungseigenschaften, wie beispielsweise Datenschlüssel und Datenbereiche, in Datenpartitionen aufgeteilt. Bei Bedarf können IT-Teams Partitionen über mehrere AZs innerhalb derselben AWS-Region konfigurieren.
Spread Placement-Gruppe
Eine Spread Placement-Gruppe ist die umgekehrte Konfiguration einer Cluster Placement-Gruppe. Jede EC2-Instanz in einer Gruppe wird auf separater, unabhängiger Hardware innerhalb der gleichen oder einer anderen AZ in einer einzigen AWS-Region gestartet. Diese Einstellung ist für kritische Anwendungen mit geringer Fehlertoleranz relevant, bei denen jeder Knoten unabhängig von den anderen sein muss. Spread Placement Groups unterstützen auch AWS Outposts. Diese Funktion ermöglicht die Bereitstellung von AWS-verwalteter Infrastruktur vor Ort.
Einschränkungen der Placement Groups
Obwohl Placement-Gruppen für viele Anwendungen wichtige Funktionen bieten, ist es wichtig, ihre Einschränkungen zu kennen. Vor allem die Flexibilität der Infrastruktur wird erheblich eingeschränkt. Dies kann dazu führen, dass EC2-Instanzen aufgrund von Einschränkungen der verfügbaren Hardware für eine bestimmte Konfiguration nicht gestartet werden können.
Es ist möglich, dass eine Partition oder ein Cluster zu wenig Kapazität hat oder dass nicht genügend Hardware für ein Spread Instance Placement verfügbar ist. Im Falle von Cluster Placement-Gruppen ist die Beschränkung auf eine einzige AZ ein Risiko, das IT-Teams gegen die Leistungs- und Datenübertragungskostenvorteile abwägen müssen, die sich aus der Platzierung von EC2-Instanzen in unmittelbarer Nähe zueinander ergeben. Für Placement-Gruppen fallen keine zusätzlichen AWS-Kosten an.
So konfigurieren Sie Placement Groups
IT-Teams können Placement-Gruppen über die EC2-Konsole, die AWS-Befehlszeilenschnittstelle (CLI) , das SDK oder CloudFormation konfigurieren. Der Konfigurationsablauf ist einfach.
Schritt 1. Klicken Sie in der EC2-Konsole in der Navigationsleiste auf der linken Seite auf Placement Groups.
Schritt 2. Der Benutzer wird zum Dashboard Placement Groups weitergeleitet. Wählen Sie Create Placement Grouperstellen.
Schritt 3. Wenn Sie eine EC2-Instanz von der Konsole aus starten, können Sie eine bestehende Placement Group unter dem Abschnitt Advanced Details auf der Startseite auswählen.
Placement-Gruppen sind eine Option, die für Anwendungen mit spezifischen Anforderungen an die Hardware-Zuweisung in Betracht gezogen werden sollte. Diese Funktion bietet erweiterte Konfigurationen, die die auf EC2-Instances bereitgestellten Anwendungen erheblich optimieren können, aber sie ist nicht unbedingt für alle Anwendungen geeignet.