Å automatisere nedleggelse av underutnyttede Azure VM -er kan oppnås gjennom flere metoder, hver med sine egne fordeler og kompleksiteter.
1. Azure Auto-Shutdown-funksjon
Den enkleste metoden er å bruke Azures innebygde auto-shutdown-funksjon. Dette lar deg angi et spesifikt tidspunkt for at VM-en din skal slå seg av, noe som kan bidra til å redusere kostnadene i løpet av topptider. For å konfigurere dette:
- Logg deg på Azure Portal.
- Naviger til VM du vil konfigurere.
- Velg Auto-Shutdown under operasjonsseksjonen.
- Bytt bryteren til på, angi ønsket avstengningstid og eventuelt konfigurere varsler via e -post eller webhook [1] [9] [10].
Imidlertid starter ikke denne metoden automatisk VMS eller håndterer komplekse forhold som CPU -bruk.
2. Azure Automation
For mer komplekse scenarier, for eksempel å slå av VM -er basert på CPU -bruk eller andre forhold, kan Azure Automation brukes. Dette innebærer å lage en runbook som kan stoppe VM -er basert på spesifikke kriterier:
- Opprett en Azure Automation -konto: Dette er nødvendig for å kjøre skript som administrerer Azure Resources [3].
- Lag en Runbook: Skriv et PowerShell -skript som sjekker VMs status og stopper det hvis det er underutnyttet. For eksempel kan du sjekke CPU -bruk og stoppe VM hvis det er under en viss terskel [3] [4].
- Sett opp en plan: Koble Runbook til en plan slik at den kjører med jevne mellomrom for å sjekke og potensielt stoppe underutnyttede VM -er [3].
3. Azure varsler og handlingsgrupper
En annen tilnærming er å bruke Azure Monitor for å lage varsler basert på CPU -bruk eller andre beregninger. Når disse varslene utløser, kan de ringe en handlingsgruppe som stopper VM:
- Opprett en varslingsregel: Sett opp et varsel i Azure Monitor som utløser når en VMs CPU -utnyttelse faller under en viss terskel [4] [6].
- Konfigurer en handlingsgruppe: Sett opp en handlingsgruppe som inkluderer en webhook eller annen handling for å stoppe VM når varselet utløses [2] [4].
4. Azure -funksjoner
Azure -funksjoner kan også brukes til å automatisere VM -avstengninger. Du kan opprette en funksjon som kjører på en plan eller basert på triggere og bruker Azures API -er for å stoppe VMS:
- Lag en funksjonsapp: Utvikle en funksjon som sjekker VM -bruk og stopper den om nødvendig [5].
- Planlegg funksjonen: Bruk Azures planleggingsfunksjoner for å kjøre funksjonen på bestemte tidspunkter eller intervaller [5].
Hver metode har sine egne fordeler og kan velges basert på kompleksiteten i dine krav og omfanget av miljøet ditt.
Sitasjoner:
[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-zure-virtual-machine-automatically-when-dle-for-x-minute-a-Step-by-Step-guide-24Jn
[4] https://learn.microsoft.com/en-us/azure/virtual-machines/cost-optimization-best-practices
[5] https://www.reddit.com/r/azure/comments/xtdaa4/automating_stopping_vms/
[6] https://stackoverflow.com/questions/57897996/underutilized-virtual-machines-zure-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-recommendations/azure-vm/
[9] https://impulztech.com/optimizing-azure-workloads-automate-vm-startup-and-hutdown/
[10] https://turbo360.com/blog/auto-shutdown-zure-vm-when-idle