Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Automatische Verwaltung der Amazon ECS-Kapazität mit Cluster-Auto-Scaling
Amazon ECS kann die Skalierung von EC2 Amazon-Instances verwalten, die in Ihrem Cluster registriert sind. Dies wird als Auto Scaling für Amazon-ECS-Cluster bezeichnet. Sie aktivieren die verwaltete Skalierung, wenn Sie den Amazon ECS Auto Scaling Scaling-Gruppenkapazitätsanbieter erstellen. Anschließend legen Sie einen Zielprozentsatz (dentargetCapacity
) für die Instanznutzung in dieser Auto Scaling Scaling-Gruppe fest. Amazon ECS erstellt zwei benutzerdefinierte CloudWatch Metriken und eine Skalierungsrichtlinie für die Zielverfolgung für Ihre Auto Scaling Scaling-Gruppe. Amazon ECS verwaltet dann die Scale-In- und Scale-Out-Aktionen auf der Grundlage der Ressourcenauslastung, die Ihre Aufgaben verbrauchen.
Für jeden Kapazitätsanbieter der Auto-Scaling-Gruppe, der einem Cluster zugeordnet ist, erstellt und verwaltet Amazon ECS die folgenden Ressourcen:
-
Ein Alarm bei niedrigem metrischen Wert CloudWatch
-
Ein CloudWatch Alarm bei hohem metrischen Wert
-
Eine Skalierungsrichtlinie für die Ziel-Nachverfolgung.
Anmerkung
Amazon ECS erstellt die Skalierungsrichtlinie für die Ziel-Nachverfolgung und fügt sie an die Auto-Scaling-Gruppe an. Um die Skalierungsrichtlinie für die Ziel-Nachverfolgung zu aktualisieren, aktualisieren Sie die vom Kapazitätsanbieter verwalteten Skalierungseinstellungen, statt die Skalierungsrichtlinie direkt zu aktualisieren.
Wenn Sie die verwaltete Skalierung deaktivieren oder den Kapazitätsanbieter von einem Cluster trennen, entfernt Amazon ECS sowohl die CloudWatch Metriken als auch die Ressourcen der Ziel-Tracking-Skalierungsrichtlinie.
Amazon ECS verwendet die folgenden Metriken, um zu bestimmen, welche Maßnahmen zu ergreifen sind:
CapacityProviderReservation
-
Der Prozentsatz der Container-Instances, die für einen bestimmten Kapazitätsanbieter verwendet werden. Amazon ECS generiert diese Metrik.
Amazon ECS legt den Wert
CapacityProviderReservation
auf eine Zahl zwischen 0–100 fest. Amazon ECS verwendet die folgende Formel, um das Verhältnis der verbleibenden Kapazität in der Auto-Scaling-Gruppe darzustellen. Anschließend veröffentlicht Amazon ECS die Metrik für CloudWatch. Weitere Informationen zur Berechnung der Metrik finden Sie unter Deep Dive on Amazon ECS Cluster Auto Scaling. CapacityProviderReservation = (number of instances needed) / (number of running instances) x 100
DesiredCapacity
-
Die Kapazitätsmenge für die Auto-Scaling-Gruppe. Diese Metrik wurde nicht veröffentlicht in CloudWatch.
Amazon ECS veröffentlicht die CapacityProviderReservation
Metrik CloudWatch im AWS/ECS/ManagedScaling
Namespace. Die CapacityProviderReservation
-Metrik führt zu einer der folgenden Aktionen:
- Der Wert
CapacityProviderReservation
entsprichttargetCapacity
-
Die Auto-Scaling-Gruppe muss weder ab- noch aufskaliert werden. Der angestrebte Nutzungsprozentsatz wurde erreicht.
- Der Wert
CapacityProviderReservation
ist größer alstargetCapacity
-
Es gibt mehr Aufgaben, die einen höheren Prozentsatz der Kapazität beanspruchen als Ihr
targetCapacity
-Prozentsatz. Der erhöhte Wert derCapacityProviderReservation
Metrik führt dazu, dass der zugehörige CloudWatch Alarm ausgelöst wird. Dieser Alarm aktualisiert denDesiredCapacity
-Wert für die Auto-Scaling-Gruppe. Die Auto Scaling Scaling-Gruppe verwendet diesen Wert, um EC2 Instances zu starten und sie dann im Cluster zu registrieren.Wenn die
targetCapacity
der Standardwert 100 % ist, befinden sich die neuen Aufgaben im StatusPENDING
während der Skalierung, da auf den Instances keine Kapazität zur Ausführung der Aufgaben verfügbar ist. Nachdem sich die neuen Instances bei ECS registriert haben, werden diese Aufgaben auf den neuen Instances gestartet. - Der Wert
CapacityProviderReservation
ist kleiner alstargetCapacity
-
Es gibt weniger Aufgaben, die einen niedrigeren Prozentsatz der Kapazität beanspruchen als Ihr
targetCapacity
-Prozentsatz, und es gibt mindestens eine Instance, die beendet werden kann. Der verringerte Wert derCapacityProviderReservation
Metrik führt dazu, dass der zugehörige CloudWatch Alarm ausgelöst wird. Dieser Alarm aktualisiert denDesiredCapacity
-Wert für die Auto-Scaling-Gruppe. Die Auto Scaling Scaling-Gruppe verwendet diesen Wert, um EC2 Container-Instances zu beenden und sie dann vom Cluster abzumelden.Die Auto-Scaling-Gruppe folgt der Beendigungsrichtlinie der Gruppe, um zu bestimmen, welche Instances sie bei Abskalieren-Ereignissen zuerst beendet. Außerdem werden Instances vermieden, für die der Instance-Abskalierungsschutz aktiviert ist. Cluster-Auto-Scaling kann verwalten, für welche Instances die Einstellung für den Instance-Abskalierungsschutz gilt, wenn Sie den verwalteten Beendigungsschutz aktivieren. Weitere Informationen zum verwalteten Beendigungsschutz finden Sie unter Steuern Sie die Instanzen, die Amazon ECS beendet. Weitere Informationen darüber, wie Auto Scaling Scaling-Gruppen Instances beenden, finden Sie unter Steuern, welche Auto Scaling Scaling-Instances während der Skalierung beendet werden im Amazon EC2 Auto Scaling-Benutzerhandbuch.
Bei Verwendung von Cluster-Auto-Scaling sollte Folgendes berücksichtigt werden:
-
Ändern oder verwalten Sie nicht die gewünschte Kapazität für die Auto-Scaling-Gruppe, die einem Kapazitätsanbieter zugeordnet ist, der über andere Skalierungsrichtlinien verfügt als die, die Amazon ECS verwaltet.
-
Wenn Amazon ECS ab 0 Instances skaliert, werden automatisch 2 Instances gestartet.
-
Amazon ECS verwendet die
AWSServiceRoleForECS
serviceverknüpfte IAM-Rolle für die Berechtigungen, die erforderlich sind, um in Ihrem Namen AWS Auto Scaling aufzurufen. Weitere Informationen finden Sie unter Verwendung von serviceverknüpften Rollen für Amazon ECS. -
Bei der Verwendung von Kapazitätsanbietern mit Auto-Scaling-Gruppen benötigt der Benutzer, die Gruppe oder die Rolle, der bzw. die die Kapazitätsanbieter erstellt, die
autoscaling:CreateOrUpdateTags
-Berechtigung. Dies liegt daran, dass Amazon ECS an die Auto-Scaling-Gruppe ein Tag hinzufügt, wenn sie es dem Kapazitätsanbieter zuordnet.Wichtig
Stellen Sie sicher, dass die von Ihnen verwendeten Tools das
AmazonECSManaged
-Tag nicht aus der Auto-Scaling-Gruppe entfernen. Wenn dieses Tag entfernt wird, kann Amazon ECS die Skalierung nicht verwalten. -
Bei der auto Clusterskalierung wird das MinimumCapacityoder MaximumCapacityfür die Gruppe nicht geändert. Damit die Gruppe horizontal skaliert werden kann, MaximumCapacitymuss der Wert für größer als Null sein.
-
Wenn Auto Scaling (verwaltete Skalierung) aktiviert ist, kann ein Kapazitätsanbieter nur mit einem Cluster gleichzeitig verbunden sein. Wenn Ihr Kapazitätsanbieter die verwaltete Skalierung deaktiviert hat, können Sie ihn mehreren Clustern zuordnen.
-
Wenn die verwaltete Skalierung deaktiviert ist, führt der Kapazitätsanbieter keine Auf- oder Abskalierung durch. Sie können eine Kapazitätsanbieter-Strategie verwenden, um Ihre Aufgaben zwischen Kapazitätsanbietern auszugleichen.
-
Die
binpack
Strategie ist in Bezug auf die Kapazität die effizienteste Strategie. -
Wenn die Zielkapazität unter 100% liegt, muss die Platzierungsstrategie die
binpack
Strategie verwenden, ohne dass diespread
Strategie eine höhere Ordnung als diebinpack
Strategie hat. Dadurch wird verhindert, dass der Kapazitätsanbieter eine Skalierung durchführt, bis jede Aufgabe über eine eigene Instanz verfügt oder das Limit erreicht ist.
Auto Scaling von Clustern aktivieren
Sie können die auto Clusterskalierung mithilfe der Konsole oder der aktivieren AWS CLI.
Wenn Sie mithilfe der Konsole einen Cluster für den EC2 Starttyp erstellen, erstellt Amazon ECS in Ihrem Namen eine Auto Scaling Scaling-Gruppe und legt die Zielkapazität fest. Weitere Informationen finden Sie unter Erstellen eines Amazon ECS-Clusters für den EC2 Amazon-Starttyp.
Sie können auch eine Auto Scaling Scaling-Gruppe erstellen und sie dann einem Cluster zuweisen. Weitere Informationen finden Sie unter Aktualisierung eines Amazon ECS-Kapazitätsanbieters.
Wenn Sie den verwenden AWS CLI, nachdem Sie den Cluster erstellt haben
-
Vor dem Erstellen des Kapazitätsanbieters müssen Sie eine Auto-Scaling-Gruppe erstellen. Weitere Informationen finden Sie unter Auto Scaling Scaling-Gruppen im Amazon EC2 Auto Scaling Scaling-Benutzerhandbuch.
-
Wird verwendet
put-cluster-capacity-providers
, um den Cluster-Kapazitätsanbieter zu ändern. Weitere Informationen finden Sie unter auto Skalierung des Amazon ECS-Clusters aktivieren.