2015-08-25 18 views
25

Ich möchte die App-Server herunterfahren, während ich die Datenbank aktualisiere.Pausiere eine Elastic Beanstalk App-Umgebung?

Gibt es eine Möglichkeit, die App-Server anzuhalten oder anzuhalten, ohne die Umgebung zu beenden/zu zerstören?

Kann ich einfach zum Load Balancer von Elastic Beanstalk wechseln und dies ohne Probleme oder Konsequenzen für die Elastic Beanstalk-Konfigurationen oder die Art und Weise, wie sie ihre Server verwaltet, vorübergehend ändern?

+1

Er unterstützte die CLI-Befehle 'eb stop' und 'eb start', funktioniert aber nicht mehr. Vermute, dass Sie Snapshots von Daten erstellen und dann die Umgebung von derselben Version beenden und neu erstellen müssen. Siehe http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.terminating.html. – jarmod

+0

@jarmod - Ich denke, das Pausieren einer Umgebung kann nun effektiv mit [eb-Skala] (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-scale.html) erreicht werden, siehe [meine Antwort] (https://stackoverflow.com/a/32215124/45773) für Details. –

+0

Wenn es nur eine Instanz gibt, wäre es nicht möglich, die zugrunde liegende EC2-Instanz einfach von der EC2-Konsole aus zu stoppen? –

Antwort

17

Dies ist die einzige Methode, die für mich arbeitete.

1) Gehen Sie auf die Umgebung, die Sie auf AWS Management Console

2 anhalten möchten) Wählen Sie "Konfiguration"

3) Öffnen Sie "Skalierung"

4) Gehen Sie auf "Zeitbasierte Skalierung"

5) Klicken Sie auf "hinzufügen Aktion terminieren"

6) Legen Sie die Aktion auf wenige Minuten in die Zukunft (empfohlen 5 Minuten so environmen t würde Zeit zurückgesetzt) ​​haben, geben Sie ihm einen Namen (zum Beispiel „beenden“) und stellen Sie Minimal- und Maximal Instanzen auf ‚0‘:

New scheduled action

Dies würde einen Fehler erstellen, die Ihre Umgebung würde heruntergefahren also musst du nicht dafür bezahlen. Alle anderen vorgeschlagenen Methoden erstellen nur einen Fehler zum Zeitpunkt der Anwendung, so dass es nicht passiert und die Umgebung würde immer noch funktionieren.

Um dies zu deaktivieren, planen Sie einfach eine andere Aktion auf min 1 und max 4 ein.

+3

Das hat für mich funktioniert. –

+0

unter Kapazität jetzt – ricka

11

Je nachdem, wie Sie Ihre AWS Elastic Beanstalk Umgebung orchestrieren, kann dies mit der EB Command Line Interface eb scale Befehl zum Beispiel erreicht werden:

die Umwelt Waagen auf einer bestimmte Anzahl von Instanzen immer läuft, beide Einstellung die minimale und maximale Anzahl der Instanzen zu die angegebene Anzahl.

  • Die Auto Scaling-Einstellungen zugrunde liegen, sind auch über die Elastic Beanstalk Console ‚Konfiguration‘ Abschnitt, insbesondere die ‚Skalierung‘ Kachel zugänglich.

Alternativ können Sie jederzeit verkleinern manuell die automatische Skalierung Gruppe selbst durch die minimale Einstellung und die gewünschte Anzahl von Instanzen auf Null.

  • Dies kann über die AWS Management Console (zugänglich über den EC2 Abschnitt unten links kennzeichnet einen Link zu Auto Scaling Groups), die AWS Command Line Interface (die autoscaling Referenzmerkmale resp. Befehle) oder auch programmgesteuert über die AWS SDKs, in dem Fall erzielt werden, Sie möchten es in Ihre Bereitstellungsautomatisierung einbeziehen.
+5

hmm es scheint so, als würde es mich nicht auf 0 setzen lassen – MonkeyBonkey

+1

@MonkeyBonkey - Haben Sie sowohl die minimale als auch die gewünschte Zahl auf 0 gesetzt? Ich habe das speziell ausprobiert, weil ich nicht zu 100% positiv auf die resp. EB Verhalten, und es könnte in der Tat einige Einschränkungen in dieser Hinsicht sein - aber es hat gut für mich funktioniert, die Umwelt wurde danach einfach als rot aka ungesund gekennzeichnet, aber ansonsten hat es funktioniert und blieb so, bis ich es beendete ein paar Stunden später. –

+0

yeah Ich habe das probiert und es wurde gesagt, dass max nicht kleiner als min sein kann und mich nicht auf 0 setzen lassen wird. – MonkeyBonkey

10

Von AWS What's New blog Dec 16, 2016:

Sie können nun wiederherstellen AWS Elastic Beanstalk-Umgebungen, die beendet haben. Sie können Elastic Beanstalk-Umgebungen innerhalb von 42 Tagen nach deren Beendigung wiederherstellen, und in den wiederhergestellten Umgebungen bleiben die ursprünglichen Umgebungs-IDs, CNAMEs, Anwendungsversionen und Konfigurationsoptionen erhalten.

Sie können die Elastic Beanstalk-Konsole, EB CLI, AWS CLI, SDK und API zum Wiederherstellen von Umgebungen verwenden, die beendet wurden. Besuchen Sie die documentation, um mehr zu erfahren.

Verwandte Themen