Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Hogyan tudom automatizálni az alulfelhasználott virtuális gépek leállítását


Hogyan tudom automatizálni az alulfelhasználott virtuális gépek leállítását


Az alulhasznált Azure virtuális gépek leállításának automatizálása több módszerrel érhető el, mindegyiknek megvan a maga előnyei és összetettsége.

1. Azure Auto-Shutdown Feature

A legegyszerűbb módszer az Azure beépített auto-shutdown funkciójának használata. Ez lehetővé teszi, hogy meghatározott időt állítson be a virtuális gép leállításához, ami segíthet csökkenteni a költségeket a csúcsidőn kívüli órákban. Ennek konfigurálásához:

- Jelentkezzen be az Azure portálra.
- Keresse meg a konfigurálni kívánt virtuális gépet.
- A Műveleti szakasz alatt válassza az Auto-Shutdown lehetőséget.
- Kapcsolja be a kapcsolót BE -re, állítsa be a kívánt leállási időt, és opcionálisan konfigurálja az értesítéseket e -mailben vagy webhook -on [1] [9] [10].

Ez a módszer azonban nem automatikusan újraindítja a virtuális gépeket, vagy nem kezeli az olyan komplex körülményeket, mint a CPU felhasználása.

2. Azure automatizálás

A bonyolultabb forgatókönyvekhez, például a virtuális gépek leállításához a CPU felhasználása vagy más feltételek alapján, az Azure automatizálás használható. Ez magában foglalja egy Runbook létrehozását, amely megállíthatja a virtuális gépeket konkrét kritériumok alapján:

- Hozzon létre egy Azure Automation fiókot: Ez szükséges az Azure erőforrások kezelésére szolgáló szkriptek futtatásához [3].
- Hozzon létre egy Runbook -ot: Írjon egy PowerShell szkriptet, amely ellenőrzi a virtuális gép állapotát, és leállítja, ha alulfelhasználják. Például ellenőrizheti a CPU használatát, és leállíthatja a virtuális gépet, ha egy bizonyos küszöb alatt van [3] [4].
- Állítsa be az ütemtervet: Linerelje a Runbook -ot az ütemtervhez, így rendszeres időközönként fut, hogy ellenőrizze és potenciálisan leállítsa az alulfelhasználott virtuális gépeket [3].

3. Azure riasztások és akciócsoportok

Egy másik megközelítés az Azure Monitor használata riasztások létrehozására a CPU felhasználása vagy más mutatók alapján. Amikor ezek a riasztások kiváltják, felhívhatják a virtuális gépet leállító akciócsoportot:

- Hozzon létre egy riasztási szabályt: Állítson be egy riasztást az Azure Monitor -ban, amely akkor indít, amikor a VM CPU felhasználása egy bizonyos küszöb alá esik [4] [6].
- Konfiguráljon egy műveleti csoportot: Állítson be egy olyan műveleti csoportot, amely tartalmaz egy webhookot vagy más műveletet a virtuális gép leállításához, amikor a riasztást elindítják [2] [4].

4. Azure funkciók

Az Azure funkciók felhasználhatók a virtuális gép leállításának automatizálására is. Készíthet egy olyan funkciót, amely ütemterven fut, vagy a triggerek alapján, és az Azure API -ját használja a virtuális gépek leállításához:

- Hozzon létre egy függvényalkalmazást: Készítsen egy olyan funkciót, amely ellenőrzi a virtuális gép felhasználását, és szükség esetén leállítja [5].
- Ütemezze be a funkciót: Használja az Azure ütemezési képességeit a függvény meghatározására meghatározott időpontokban vagy időközönként [5].

Minden módszernek megvannak a saját előnyei, és az igényeinek összetettsége és a környezet skálája alapján választhatók.

Idézetek:
[1] https://learn.microsoft.com/en-us/azure/virtual-machines/auto-shutdown-vm
[2] https://www.brentmcconnell.com/2021/04/26/autoshutdown
[3] https://dev.to/rajeshkumaryadavdotcom/how-to-shutdown-your-azure-virtual-machine-automaty-when-idle-for-x-minute-a-Step-by-w4Jn
[4] https://learn.microsoft.com/en-us/azure/virtual-machines
[5] https://www.reddit.com/r/azure/comments/xtdaa4/automating_stopping_vms/
[6] https://stackoverflow.com/questions/57897996/underutilized-virtual-machines-azure-alerts
[7] https://stackoverflow.com/questions/71391125/is-it-possible-to-automate-shutdown-in-azure-vms-to-save-costs
[8] https://developer.harness.io/docs/cloud-cost-management/use-ccm-cost-optimization/ccm-racommendations/azure-vm/
[9] https://impulztech.com/optimizing-azure-workloads-automate-vm-tartup-and-shutdown/
[10] https://turbo360.com/blog/auto-shutdown-azure-vm-when-idle