Dans un précédent article, j’avais détaillé comment arrêter et démarrer automatiquement les machines virtuelles grâce à Azure Automation. Mais nous pouvons également réaliser ce genre d’actions avec Azure Logic App. Le principe de Azure Logic Apps est de vous permettre d’automatiser certaines de vos tâches dans Azure sans avoir à écrire une ligne de code. Cette fonctionnalité s’utilise en mode « serverless » vous n’aurez donc besoin de déployer aucun serveur et vous allez voir que c’est très simple à utiliser ! 🙂
Il n’y a pas beaucoup de prérequis à mettre en place. Pour pouvoir reproduire ce que je détaille dans l’article, créez simplement un Resource Group et une VM dedans.
Ensuite, créez une nouvelle Logic Apps depuis votre portail Azure.
Définissez le nom et éventuellement votre localisation favorite.
Dans notre cas, nous souhaitons pouvoir démarrer et arrêter une VM à heure fixe chaque jour. Nous allons donc choisir l’élément Récurrence. Mais comme vous pouvez le voir, cette fonctionnalité offre beaucoup de possibilités.
Il ne vous reste plus qu’à choisir l’heure à laquelle la tâche doit être effectuée. Finalement, c’est un peu comme une tâche cron dans les systèmes Linux. 😉
Pour ma part, j’ai choisi :
- Interval : 1
- Frequency : Day
- At these hours : 19
- At these minutes : 05
Dans mon cas, la tâche que je vais définir s’exécutera donc chaque jour à 19h05. Appuyez ensuite sur New Step pour ajouter une action (vous pouvez en ajouter plusieurs).
Cherchez et sélectionnez « azure vm » dans la liste des objets possibles.
Sélectionnez l’action Deallocate virtual machine – seule option qui vous permet de stopper une VM en arrêtant également les coûts liés à cette charge de calcul dans Azure (pour rappel ce n’est pas le cas de la simple option Power off).
Authentifiez-vous à nouveau (directement ou utilisez un SPN).
Sélectionnez la souscription, le Resource Group et finalement la machine virtuelle à laquelle cette Logic Apps doit être appliquée.
Sauvegardez vos réglages. Il ne reste plus qu’à attendre que vous arriviez à l’heure que vous avez précédemment indiquée.
Créer une seconde Logic App pour démarrer votre VM
Pour cette fois-ci, démarrer automatiquement votre VM à une heure précise. Créez une nouvelle Logic App avec la même démarche que précédemment et sélectionnez la fonction : Start a virtual machine.
Enregistrez le tout et attendez d’arriver à l’heure choisie dans votre Azure Logic App.
Vérifier le démarrage et l’arrêt sur votre VM
Pour vérifier ce que vous avez mis en place, rien de plus simple, il vous suffit de cliquez sur votre VM puis de choisir ensuite l’option Activity Log (dans le menu latéral gauche).
Modifiez ensuite l’échelle de temps et sélectionnez par exemple Timespan : Last week. Vous verrez alors toutes les actions qui ont été exécutées sur cette VM la semaine passée.
Nous voyons bien que la VM est démarrée et arrêtée chaque jour ce qui vous permettra d’optimiser vos coûts en fonction de l’utilisation de cette VM ! 😉
Et nous pouvons également confirmer notre configuration en cliquant directement sur chaque Logic App.
Dans mon cas, j’avais re-changé l’heure pour mettre 10h mais vous pouvez bien voir que chaque jour à 10h ma Logic App a bien été exécutée avec succès et a procédé au démarrage de ma VM. 🙂