2017-08-07 4 views
0

Ich möchte eine Web-App für meine Organisation erstellen, in der Benutzer im Voraus festlegen können, wann ihre EC2-Instanzen gestartet und gestoppt werden sollen (z. B. Ereignisse in einem Kalender erstellen). Diese Instanzen werden automatisch gestartet oder gestoppt zu diesen Zeiten. Ich habe über vier verschiedene Möglichkeiten kommen:Was ist die beste Methode zum Erstellen eines Schedulers zum Ausführen von EC2-Instanzen?

  1. AWS Datapipeline
  2. Cron läuft auf EC2-Instanz
  3. Geplante Skalierung von Auto Scaling Group
  4. AWS Lambda geplante Ereignisse

Es scheint mir, dass ich eine Datenbank brauche, um die geplanten Zeiten des Benutzers zum automatischen Starten und automatischen Stoppen einer Instanz zu speichern, und das muss ich pu lle diese Daten regelmäßig aus der Datenbank (um sicherzustellen, dass es sich um den neuesten aktualisierten Zeitplan handelt). Welches wäre die beste der vier oben genannten Optionen für meinen Anwendungsfall?

Bearbeiten: Auto Scaling scheint nur zum Starten und Beenden von Instanzen, so kann ich das ausschließen.

Antwort

2

Einfach!

  1. Fordern Sie Benutzer zu einen Tag ihre Instanz hinzufügen (n) angibt, wann sie beginnen sollte und nicht mehr (einige Formate herauszufinden, so dass sie leicht Mo-Fr oder jeden Tag angeben)
  2. ein erstellen AWS Lambda-Funktion die Instanzen für ihre Tags durchsucht und startet/stoppt sie basierend auf den Tag-Inhalt
  3. eine Amazon Cloudwatch Ereignisregel, die die Lambda-Funktion alle 15 Minuten auslöst (oder was auch immer gewünschte Auflösung)

Sie können wahrscheinlich einen Beispielcode finden, wenn Sie nach AWS Stopinator suchen.

+1

Mit Lambda-Funktion mit Boto3 und Cloudwatch Regeln ist so einfach: EC2 = boto3.client ('EC2) ec2.stop_instances ( InstanceIds = [ 'XXXXXXXXXX', XXXXXXXX] ) Hier gibt es eine komplette Beispiel: https://www.dbigcloud.com/cloud-computing/220-automatiza-el-apagado-de-anstancias-ec2-a-traves-de-lambdas-en-aws.html – drsromero

0

Werfen Sie einen Blick auf ParkMyCloud, wenn Sie nach einer externen SaaS-App suchen, die Ihren Benutzern dabei helfen kann, Ihre EC2-, RDS- und ASG-Instanzen einfach zu planen (oder diesen Zeitplan außer Kraft zu setzen). Es stellt auch eine Verbindung zu SSO her, stellt eine API bereit und zeigt Ihnen alle Ihre Ressourcen über Regionen/Konten/Clouds hinweg an. Es gibt eine kostenlose Testversion, wenn Sie es testen möchten.

Offenlegung: Ich arbeite für ParkMyCloud.

+1

Dies wurde als Spam gekennzeichnet. Sind Sie mit dieser Firma in irgendeiner Weise verbunden? Wenn dies der Fall ist, müssen Sie Ihre Zugehörigkeit offenlegen (https://stackoverflow.com/help/promotion). –

Verwandte Themen