Wenn Sie Setup ein Auto Scaling - Gruppen in AWS EC2 Min
und Max
Grenzen scheinen Sinn zu machen:
- Die Mindestanzahl von Instanzen, auf die basierend auf Richtlinien verkleinert werden soll
- Die maximale Anzahl von Instanzen, auf die basierend auf Richtlinien skaliert werden kann
Ich war jedoch nie in der Lage, meinen Kopf um das zu wickeln, was zum Teufel das bewirken Desired
soll.
Ich habe immer nur Desired
gleich gesetzt Min
, weil ich Amazon im Allgemeinen den minimal möglichen Zehnten zahlen möchte, und es sei denn, Sie benötigen eine Instanz, um das Laden zu bewältigen, sollte es die Min
Anzahl der Instanzen sein.
Ich weiß, wenn Sie ElasticBeanstalk
a Min
auf 1 und Max
2 setzen und setzen , setzt es a Desired
auf 2 (natürlich!) - Sie können keinen Wert für auswählen Desired
.
Was wäre der Anwendungsfall für eine andere Desired
Anzahl von Instanzen und wie unterscheidet er sich? Wenn Sie erwarten, dass AWS niedriger skaliert als Ihr, Desired
wenn gewünscht, größer als Min
?
Antworten:
Hier sind die Erläuterungen zu den "Min-, gewünschten und Max" -Werten des AWS-Supports:
quelle
Stellen Sie sich das wie ein Gleitbereich-UI-Element vor.
Mit min und max legen Sie die Untergrenze Ihrer Instanzskalierung fest. Mit der gewünschten Kapazität legen Sie fest, wie hoch die Instanzanzahl derzeit sein soll.
Beispiel: Sie wissen, dass Ihre Anwendung aufgrund einer Marketing-E-Mail oder einer Produkteinführung stark ausgelastet sein wird. Skalieren Sie einfach vorher die gewünschte Kapazität:
Quelle
quelle
Dies geschieht, wenn Sie einen CloudWatch-Alarm basierend auf einer AutoScaling-Richtlinie festlegen. Immer wenn dieser Alarm ausgelöst wird, wird der DesiredCount auf den in der Konfiguration angegebenen Wert aktualisiert.
Beispiel: Wenn eine AutoScalingGroup-Konfiguration Min = 1, Desired = 3, Max = 5 hat und auf einer AutoScalingPolicy ein Alarm eingestellt ist, der besagt, dass die CPU-Auslastung für aufeinanderfolgende 10 Minuten <50% beträgt
Remove 1 instances
, wird die Anzahl der Instanzen weiter reduziert 1, wenn der Alarm ausgelöst wird, bis DesiredCount = MinCount.Lessons Learned: Setzen Sie den MinCount auf> 0 oder = DesiredCount. Dadurch wird sichergestellt, dass die Anwendung nicht heruntergefahren wird, wenn mincount = 0 und die CPU-Auslastung sinken.
quelle
"Gewünscht" ist (notwendigerweise) mehrdeutig.
quelle
Basierend auf meiner Lektüre wird der
DesiredCapacity
Wert für Laien automatisch bei Scale-In- und Scale-Out-Ereignissen aktualisiert.Mit anderen Worten,
Scale-In oder Scale-Out erfolgt durch Verringern oder Erhöhen des
DesiredCapacity
Werts.quelle
Gewünschte Kapazität bedeutet einfach die Anzahl der Instanzen, die beim Starten der automatischen Skalierung gestartet / ausgelöst werden. Das heißt, wenn die gewünschte Kapazität = 4 ist, werden 4 Instanzen so lange ausgeführt, bis ein Scale-up- oder Scale-down-Ereignis ausgelöst wird. Wenn ein Scale-up-Ereignis auftritt, wird die Anzahl der Instanzen bis zur maximalen Kapazität erhöht, und wenn ein Scale-down-Ereignis auftritt, wird sie bis zur minimalen Kapazität verringert.
Korrigieren Sie mich, wenn Sie falsch liegen, danke.
quelle
Ich bemerkte, dass die gewünschte Kapazität abnahm und keine neue Instanz auftauchte, als
Daher scheint es, dass keine an ELB angehängte Instanzen den durch min und max festgelegten Schwellenwert nicht überschreiten können, aber die gewünschte Kapazität wird automatisch angepasst oder geändert, basierend auf dem Auftreten eines Scale-In- oder Scale-Out-Ereignisses. Es war definitiv etwas Unbekanntes für mich.
Dies kann eine Möglichkeit sein, AWS darüber zu informieren, dass dies die gewünschte Kapazität ist, die für die jeweilige ELB zu einem bestimmten Zeitpunkt erforderlich ist.
quelle
Min und Max sind selbsterklärend, aber erwünscht war verwirrend, bis ich der ASG eine Richtlinie zur automatischen Skalierung der Zielverfolgung beigefügt habe, bei der die CPU-Auslastung die Zielmetrik war. Hier wurden die gewünschten Instanzen basierend auf der Ziel-CPU-Auslastung skaliert und skaliert. Wenn eine gewünschte Anzahl durch Cloudformation / Handbuch platziert wird, erstellt ASG vorerst die gleiche Anzahl von Instanzen wie die gewünschte Anzahl. Die spätere ASG-Richtlinie passt die gewünschten Instanzen jedoch automatisch an die Ziel-CPU-Auslastung an.
quelle