L'automatisation de l'arrêt des machines virtuelles azur sous-utilisées peut être réalisée par plusieurs méthodes, chacune avec ses propres avantages et complexités.
1. Fonction Azure Auto-Shutdown
La méthode la plus simple consiste à utiliser la fonction de shutdown intégrée d'Azure. Cela vous permet de définir une période spécifique pour que votre machine virtuelle s'arrête, ce qui peut aider à réduire les coûts pendant les heures hors pointe. Pour configurer ceci:
- Connectez-vous au portail Azure.
- Accédez à la machine virtuelle que vous souhaitez configurer.
- Dans le cadre de la section Opérations, sélectionnez Auto-Shutdown.
- Basculez le commutateur vers ON, définissez le temps d'arrêt souhaité et configurez éventuellement les notifications par e-mail ou WebHook [1] [9] [10].
Cependant, cette méthode ne redémarre pas automatiquement les machines virtuelles ni ne gére les conditions complexes comme l'utilisation du processeur.
2. Azure Automation
Pour des scénarios plus complexes, tels que l'arrêt des machines virtuelles sur la base de l'utilisation du processeur ou d'autres conditions, l'automatisation azure peut être utilisée. Cela implique la création d'un runbook qui peut arrêter les machines virtuelles en fonction de critères spécifiques:
- Créez un compte Azure Automation: Ceci est nécessaire pour exécuter des scripts qui gèrent vos ressources Azure [3].
- Créez un RunBook: écrivez un script PowerShell qui vérifie l'état de la machine virtuelle et l'arrête s'il est sous-utilisé. Par exemple, vous pouvez vérifier l'utilisation du processeur et arrêter la machine virtuelle si elle est en dessous d'un certain seuil [3] [4].
- Configurez un horaire: liez le RunBook à un calendrier afin qu'il fonctionne à intervalles réguliers pour vérifier et potentiellement arrêter les machines virtuelles sous-utilisées [3].
3. Alertes Azure et groupes d'action
Une autre approche consiste à utiliser Azure Monitor pour créer des alertes basées sur l'utilisation du processeur ou d'autres mesures. Lorsque ces alertes se déclenchent, elles peuvent appeler un groupe d'action qui arrête la machine virtuelle:
- Créez une règle d'alerte: configurez une alerte dans le moniteur Azure qui déclenche lorsque l'utilisation du processeur d'une machine virtuelle tombe en dessous d'un certain seuil [4] [6].
- Configurer un groupe d'action: Configurez un groupe d'action qui inclut un webhook ou une autre action pour arrêter la machine virtuelle lorsque l'alerte est déclenchée [2] [4].
4. Fonctions Azure
Les fonctions Azure peuvent également être utilisées pour automatiser les arrêts de machine virtuelle. Vous pouvez créer une fonction qui s'exécute sur un calendrier ou en fonction des déclencheurs et utilise les API d'Azure pour arrêter les machines virtuelles:
- Créez une application de fonction: développez une fonction qui vérifie l'utilisation de la machine virtuelle et l'arrête si nécessaire [5].
- Planifiez la fonction: utilisez les capacités de planification d'Azure pour exécuter la fonction à des moments ou des intervalles spécifiques [5].
Chaque méthode a ses propres avantages et peut être choisie en fonction de la complexité de vos besoins et de l'échelle de votre environnement.
Citations:
[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-t-shutdown-your-azure-virtual-machine-automatiquemated-when-idle-for-x-minute-a-step-by-ttep-guide-24jn
[4] https://learn.microsoft.com/en-us/azure/virtual-machines/cost-optimisation-best-practices
[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 /
[8] https://developer.harness.io/docs/cloud-cost-management/use-ccm-cost-optimisation/ccm-recommendations/azure-vm/
[9] https://impulztech.com/optimizing-azure-workloads-automate-vm-startup-and-down/
[10] https://turbo360.com/blog/auto-shutdown-azure-vm-when-idle