2016-08-03 22 views
0

Ich verstehe, dass VMs in Azure in Rechnung gestellt werden, wenn sie gerade existieren und auch wenn wir sie nicht verwenden.VM in Azure dynamisch erstellen/löschen, um Kosten zu minimieren

Um Kosten zu minimieren Ich möchte die VM-Erstellung und das Löschen automatisieren, sodass die VM nicht verfügbar ist/inaktiv ist, wenn sie nicht verwendet wird.

Ich möchte, dass die VM nach meiner Nutzungssitzung/geplanten Zeit gelöscht wird (nur VM, Laufwerke können intakt im Speicherkonto sein) und beim nächsten Mal, wenn ich VM verwenden möchte, möchte ich es erstellen und anhängen der Speicher (Laufwerke) zur VM.

Ich möchte diese Erstellung und Löschung mit minimalem Eingriff/Benutzerinteraktion automatisieren (z. B. Erstellen/Löschen zu einem vordefinierten Zeitpunkt oder nur mit einem Klick).

Wie dies zu erreichen? Irgendwelche Hinweise auf Artikel?

+0

Ich denke, Sie haben das VM-Preismodell möglicherweise falsch verstanden - wenn Sie eine laufende VM haben, werden Sie pro Stunde berechnet, ob Sie sie verwenden oder nicht (z. B. bei 0% oder 100% CPU sitzen)). Eine angehaltene VM kostet nichts, abgesehen von den Speicherkosten für das Betriebssystem und die Datenfestplatten. –

Antwort

2

Eine gute Möglichkeit wäre, eine Azure Automation Job erstellen zu tun, was Sie versuchen zu erreichen: Ihr Ansatz

Sie wählen könnten, wie Sie bitte würde; Verwenden Sie klassische PowerShell-Befehle zum Einrichten/Zerlegen Ihrer Umgebung oder verwenden Sie dazu den Ressourcenmanager.

Sie könnten zum Beispiel zwei Runbooks erstellen; eine zum Erstellen/Starten der VM und eine zum Abbauen oder Stoppen der VM. Nur auflisten, dass es eine Option sein könnte, die VM nur dann herunterzufahren, wenn die anderen Kosten (Speicher, Netzwerk usw.) akzeptabel sind. Wenn nicht; Zerreißen Sie es und bauen Sie es erneut auf (am einfachsten wäre es, Ressourcenmanager/Vorlage (ARM) zu verwenden, um dies bereitzustellen).

Wenn Sie sich für die Verwendung der Azure-Automatisierung entscheiden, können Sie die Runbooks zu bestimmten Zeiten oder Ereignissen planen (z. B. mithilfe von Azure Scheduler).

Einige Links, die Ihnen helfen werden:

hoffe, das hilft, zeigen Sie in die richtige Richtung :)

1

Azure VMs werden nicht belastet, wenn sie gestoppt werden. Normalerweise, wenn Sie einige VMs verwenden, können Sie es sich zur Gewohnheit machen, zum Portal zu gehen und sie zu stoppen oder ein Powershell-Skript auszuführen, um dasselbe zu erreichen. Wenn Sie sich eine Arbeitsumgebung mit mehreren VMS ansehen und diese um 9 Uhr morgens gestartet und um 21 Uhr gestoppt haben möchten, müssen Sie azurblaue Automatisierungs-Runbooks verwenden und diese planen.

Zuerst erstellen Sie Runbooks zum Starten und Stoppen von VMs in einer bestimmten Subskription, fügen die erforderlichen Commandlets (PS) hinzu und erstellen dann einen Zeitplan und verknüpfen den Zeitplan mit dem entsprechenden Runbook.

https://azure.microsoft.com/en-in/documentation/articles/automation-solution-startstopvm-graphical/

https://azure.microsoft.com/en-in/documentation/articles/automation-scheduling-a-runbook/

https://blogs.endjin.com/2016/03/using-azure-automation-to-run-vms-during-office-hours-only-using-graphical-runbooks/

Ich glaube, Sie es über die Funktion Anwendungen erreichen können (die geplant werden können). Aber ich habe es nicht versucht.