Vue d’ensemble de la fonctionnalité Start/Stop VMs v2

La fonctionnalité Start/Stop VMs v2 démarre ou arrête les instances de machines virtuelles Azure sur plusieurs abonnements. Elle démarre ou arrête les machines selon une planification définie par l’utilisateur, fournit des insights via Azure Application Insights et peut envoyer des notifications à l’aide de groupes d’actions. Pour la plupart des scénarios, les machines virtuelles Start/Stop peuvent gérer les machines virtuelles déployées et gérées à la fois par Azure Resource Manager et par Azure Service Manager (classique), ce qui est déconseillé.

Cette nouvelle version de Start/Stop VMs v2 fournit une option d’automatisation low-cost décentralisée pour les clients qui souhaitent optimiser les coûts de leurs machines virtuelles. Elle offre les mêmes fonctionnalités que la version d’origine disponible avec Azure Automation, mais est conçue pour tirer parti des technologies les plus récentes dans Azure. La commande Démarrer/arrêter des machines virtuelles v2 s’appuie sur les services multiples Azure et elle sera facturée en fonction du service déployé et consommé.

Importantes mises à jour de Start/Stop VMs v2

  • Nous avons mis à jour notre ressource d’application de fonction Start/Stop VMs v2 de façon à utiliser Azure Functions version 4.x, et vous obtenez cette version par défaut lorsque vous installez Start/Stop VMs v2 à partir de la Place de marché. Les clients existants doivent migrer de Functions version 3.x vers la version 4.x à l’aide de notre fonctionnalité de mise à jour automatique. Cette fonctionnalité obtient la dernière version en exécutant manuellement la fonction de minuteur TriggerAutoUpdate ou en attendant l’exécution de la planification, si vous l’avez activée.

  • Nous avons ajouté un plan (AZ - Zone de disponibilité) à notre solution Démarrer/Arrêter les machines virtuelles v2 pour activer une offre plus fiable. Vous pouvez désormais choisir entre les plans Consommation et Zone de disponibilité avant de commencer votre déploiement. Dans la plupart des cas, le coût mensuel du plan Zone de disponibilité est plus élevé que celui du plan Consommation.

  • La fonctionnalité de mise à jour automatique a été introduite le 28 avril 2022. Cette nouvelle fonctionnalité de mise à jour automatique vous permet de rester sur la dernière version de la solution. Cette fonctionnalité est activée par défaut lorsque vous effectuez une nouvelle installation.
    Si vous avez déployé votre solution avant cette date, vous pouvez réinstaller la dernière version à partir de notre dépôt GitHub.

Vue d’ensemble

La fonctionnalité Start/Stop VMs v2 a été repensée et ne dépend pas des journaux Azure Automation ou Azure Monitor, comme requis par la version précédente. Cette version s’appuie sur Azure Functions pour gérer l’exécution du démarrage et de l’arrêt des machines virtuelles.

Une identité managée est créée dans Microsoft Entra ID pour cette application Azure Functions et permet à la fonctionnalité Start/Stop VMs v2 d’accéder facilement à d’autres ressources protégées par Microsoft Entra, telles que des applications logiques et des machines virtuelles Azure. Pour plus d’informations sur les identités managées dans Microsoft Entra ID, consultez Identités managées pour les ressources Azure.

Un point de terminaison de fonction de déclencheur HTTP est créée pour prendre en charge les scénarios de planification et de séquence inclus avec la fonctionnalité, comme indiqué dans le tableau suivant.

Nom Déclencheur Description
Planifié HTTP Cette fonction concerne à la fois les scénarios planifiés et les scénarios séquencés (différenciés par le schéma de charge utile). Il s’agit de la fonction de point d’entrée appelée à partir de l’application logique et qui prend la charge utile pour traiter l’opération de démarrage ou d’arrêt de la machine virtuelle.
AutoStop HTTP Cette fonction prend en charge le scénario AutoStop, qui est la fonction de point d’entrée appelée à partir d’une application logique.
AutoStopVM HTTP Cette fonction est déclenchée automatiquement par l’alerte de machine virtuelle lorsque la condition d’alerte est définie sur true.
VirtualMachineRequestOrchestrator File d'attente Cette fonction obtient les informations de charge utile de la fonction Scheduled et orchestre les demandes de démarrage et d’arrêt de la machine virtuelle.
VirtualMachineRequestExecutor File d'attente Cette fonction effectue l’opération de démarrage et d’arrêt réelle sur la machine virtuelle.
CreateAutoStopAlertExecutor File d'attente Cette fonction obtient les informations de charge utile de la fonction AutoStop pour créer l’alerte sur la machine virtuelle.
HeartBeatAvailabilityTest Minuteur Cette fonction analyse la disponibilité des fonctions HTTP principales.
CostAnalyticsFunction Minuteur Cette fonction est utilisée par Microsoft pour estimer le coût agrégé de Start/Stop V2 entre les clients. Cette fonction n’a pas d’impact sur les fonctionnalités de Start/Stop V2.
SavingsAnalyticsFunction Minuteur Cette fonction est utilisée par Microsoft pour estimer les économies agrégées de Start/Stop V2 entre les clients. Cette fonction n’a pas d’impact sur les fonctionnalités de Start/Stop V2.
VirtualMachineSavingsFunction File d'attente Cette fonction calcule les économies réelles que la solution de démarrage/arrêt v2 a permis de réaliser sur une machine virtuelle.
TriggerAutoUpdate Minuteur Cette fonction démarre le processus de mise à jour automatique en fonction du paramètre d’application « EnableAutoUpdate=true ».
UpdateStartStopV2 File d'attente Cette fonction effectue l’exécution réelle de la mise à jour automatique, qui valide votre version actuelle avec la version disponible et décide de l’action finale.

Par exemple, la fonction de déclencheur HTTP Scheduled est utilisée pour gérer les scénarios de planification et de séquence. De même, la fonction de déclencheur HTTP AutoStop gère le scénario d’arrêt automatique.

Les fonctions de déclencheur basées sur la file d’attente sont requises pour la prise en charge de cette fonctionnalité. Tous les déclencheurs basés sur une minuterie sont utilisés pour effectuer le test de disponibilité et surveiller l’intégrité du système.

Azure Logic Apps permet de configurer et de gérer les planifications de démarrage et d’arrêt de la machine virtuelle en appelant la fonction à l’aide d’une charge utile JSON. Par défaut, pendant le déploiement initial, il crée un total de cinq applications logiques pour les scénarios suivants :

  • Planification : Les actions de démarrage et d’arrêt sont basées sur une planification que vous spécifiez sur les machines virtuelles Azure Resource Manager et classiques. ststv2_vms_Scheduled_start et ststv2_vms_Scheduled_stop configurent le démarrage et l’arrêt planifiés.

  • Séquençage : Les actions de démarrage et d’arrêt sont basées sur une planification ciblant les machines virtuelles avec des balises de séquencement prédéfinies. Seules deux balises nommées sont prises en charge : sequencestart et sequencestop. ststv2_vms_Sequenced_start et ststv2_vms_Sequenced_stop configurent le démarrage et l’arrêt séquencés.

    La façon correcte d’utiliser la fonctionnalité de séquence est de créer une balise nommée sequencestart sur chaque machine virtuelle que vous souhaitez démarrer dans une séquence. La valeur de balise doit être un entier compris entre 1 et N pour chaque machine virtuelle dans l’étendue respective. La balise est facultative et, si elle n’est pas présente, la machine virtuelle ne participera tout simplement pas au séquencement. Le même critère s’applique à l’arrêt des machines virtuelles, seul le nom de la balise est différent : utilisez sequencestop dans ce cas. Vous devez configurer les deux balises dans chaque machine virtuelle pour obtenir une action de démarrage et d’arrêt. Si deux machines virtuelles ou plus partagent la même valeur d’étiquette, ces machines virtuelles seront démarrées ou arrêtées en même temps.

    Par exemple, le tableau suivant montre que les actions de démarrage et d’arrêt sont traitées dans l’ordre croissant de la valeur de l’étiquette.

    Table that shows sequence settings tag examples

    Remarque

    Ce scénario ne prend en charge que les machines virtuelles Azure Resource Manager.

  • Autostop : Cette fonctionnalité est utilisée uniquement pour effectuer une action d’arrêt sur les machines virtuelles Azure Resource Manager et classiques en fonction de leur utilisation de l’UC. Il peut également s’agir d’une action basée sur une planification, qui crée des alertes sur les machines virtuelles et, sur la base de la condition, l’alerte est déclenchée pour exécuter l’action d’arrêt. ststv2_vms_AutoStop configure la fonctionnalité d’arrêt automatique.

Chaque action de démarrage/d’arrêt prend en charge l’affectation d’un ou de plusieurs abonnements, groupes de ressources ou d’une liste de machines virtuelles.

Un compte de stockage Azure, qui est requis par Functions, est également utilisé par Start/Stop VMs v2 pour deux raisons :

  • Utilise le Stockage Table Azure pour stocker les métadonnées de l’opération d’exécution (autrement dit, l’action Démarrer/arrêter une machine virtuelle).

  • Utilise le Stockage File d’attente Azure pour prendre en charge les déclencheurs Azure Functions basés sur une file d’attente.

Toutes les données de journalisation de suivi provenant de l’exécution de l’application de fonction, sont envoyées à votre instance Application Insights connectée. Vous pouvez afficher les données de télémétrie stockées dans Application Insights à partir d’un ensemble de visualisations prédéfinies présentées dans un tableau de bord Azure partagé.

Start/Stop VMs shared status dashboard

Les notifications par e-mail sont également envoyées à la suite des actions effectuées sur les machines virtuelles.

Nouvelles versions

Quand une nouvelle version de Start/Stop VMs v2 est publiée, votre instance est mise à jour automatiquement sans que vous deviez effectuer un redéploiement manuel.

Options d’étendue prises en charge

Abonnement

L’étendue au niveau d’un abonnement peut être utilisée lorsque vous devez exécuter l’action de démarrage et d’arrêt sur toutes les machines virtuelles d’un abonnement entier, et vous pouvez sélectionner plusieurs abonnements si nécessaire.

Vous pouvez également spécifier une liste de machines virtuelles à exclure et elles seront ignorées de l’action. Vous pouvez également utiliser des caractères génériques pour spécifier tous les noms qui peuvent être ignorés simultanément.

Groupe de ressources

L’étendue au niveau d’un groupe de ressources peut être utilisée lorsque vous devez exécuter l’action de démarrage et d’arrêt sur toutes les machines virtuelles en spécifiant un ou plusieurs noms de groupes de ressources, et dans un ou plusieurs abonnements.

Vous pouvez également spécifier une liste de machines virtuelles à exclure et elles seront ignorées de l’action. Vous pouvez également utiliser des caractères génériques pour spécifier tous les noms qui peuvent être ignorés simultanément.

VMList

La spécification d’une liste de machines virtuelles peut être utilisée lorsque vous devez exécuter l’action de démarrage et d’arrêt sur un ensemble spécifique de machines virtuelles et sur plusieurs abonnements. Cette option ne prend pas en charge la spécification d’une liste de machines virtuelles à exclure.

Prérequis

  • Vous devez disposer d’un compte Azure avec un abonnement actif. Créez un compte gratuitement.

  • Pour déployer la solution, votre compte doit avoir reçu l’autorisation Propriétaire dans l’abonnement.

  • La fonctionnalité Start/Stop VMs v2 est disponible dans toutes les régions cloud Azure internationales et US Government répertoriées dans la page Produits disponibles par région pour Azure Functions.

Étapes suivantes

Pour déployer cette fonctionnalité, consultez Déployer des machines virtuelles Start/Stop.