Planifier la gestion des coûts d’Azure Batch

Cet article explique comment planifier et gérer les coûts d’Azure Batch. Avant de déployer le service, vous pouvez utiliser la calculatrice de prix Azure pour estimer les coûts d’Azure Batch. Ensuite, lorsque vous ajoutez les ressources Azure, passez en revue les coûts estimés.

Une fois que vous avez commencé à exécuter des charges de travail Batch, utilisez les fonctionnalités de Cost Management pour définir des budgets et surveiller les coûts. Vous pouvez également passer en revue les coûts prévus et déterminer les tendances des dépenses pour identifier les domaines où vous pourriez agir. Les coûts d’Azure Batch ne représentent qu’une partie des coûts mensuels sur votre facture Azure. Bien que cet article explique comment planifier et gérer les coûts d’Azure Batch, vous êtes facturé pour tous les services et ressources Azure utilisés dans votre abonnement Azure, y compris les services tiers.

Prérequis

Analyse des coûts dans Cost Management prend en charge la plupart des types de compte Azure, mais pas tous. Pour accéder à la liste complète des types de comptes pris en charge, voir Comprendre les données de Cost Management. Pour afficher les données de coût, vous avez au minimum besoin d’un accès en lecture pour un compte Azure. Pour plus d’informations sur l’attribution de l’accès aux données Microsoft Cost Management, consultez Assigner l’accès aux données.

Estimer les coûts avant d’utiliser Azure Batch

Utilisez la Calculatrice de prix Azure pour estimer les coûts avant d’ajouter des machines virtuelles.

  1. Sous l’onglet Produits, accédez à la section Calcul ou recherchez Batch dans la barre de recherche. Sur la vignette Batch, sélectionnez Ajouter à l’estimation et faites défiler vers le bas jusqu’à la section Votre estimation.

  2. Notez qu’Azure Batch est un service gratuit et que les coûts associés à Azure Batch concernent les ressources sous-jacentes qui exécutent vos charges de travail. Lorsque vous ajoutez Azure Batch à votre estimation, la calculatrice de prix crée automatiquement une sélection pour Services cloud et Machines virtuelles. Pour en savoir plus sur Azure Cloud Services et Machines virtuelles Azure, consultez la documentation de chaque produit. Lorsque vous estimez le coût d’Azure Batch, sachez que les machines virtuelles constituent la ressource la plus importante.

    Sélectionnez les options dans les listes déroulantes. Vous pouvez choisir parmi différentes options. Les options qui ont le plus d’impact sur le total de votre estimation sont le système d’exploitation de votre machine virtuelle, la licence du système d’exploitation si c’est applicable, la taille de machine virtuelle que vous sélectionnez sous INSTANCE, le nombre d’instances que vous choisissez et la durée d’exécution de vos instances.

    Notez que l’estimation totale change quand vous sélectionnez des options différentes. Cette estimation s’affiche dans le coin supérieur et en bas de la section Votre estimation.

    Screenshot showing the your estimate section and main options available for Azure Batch.

    Pour en savoir plus sur le coût de l’exécution de machines virtuelles, consultez Planifier la gestion des coûts pour des machines virtuelles.

Comprendre le modèle de facturation complet pour Azure Batch

Azure Batch s’exécute sur l’infrastructure Azure qui cumule les coûts lorsque vous déployez de nouvelles ressources. Il est important de comprendre qu’il peut y avoir d’autres coûts d’infrastructure supplémentaires susceptibles de s’accumuler.

Comment Azure Batch vous est facturé

Azure Batch est un service gratuit. L’utilisation de Batch est gratuite. Toutefois, des frais peuvent être facturés pour les ressources de calcul sous-jacentes et les licences logicielles utilisées pour exécuter les charges de travail Batch. Ces coûts peuvent être liés aux machines virtuelles d’un pool, au transfert de données à partir de la machine virtuelle, ou aux données d’entrée ou de sortie stockées dans le cloud.

Coûts pouvant s’accumuler avec Azure Batch

Bien que Batch soit un service gratuit, la plupart des ressources sous-jacentes qui exécutent vos charges de travail ne le sont pas. Il s’agit notamment des paramètres suivants :

  • Machines virtuelles
    • Pour en savoir plus sur les coûts associés aux machines virtuelles, consultez la section Comment vous êtes facturé pour des machines virtuelles de l’article Planifier la gestion des coûts pour des machines virtuelles.
    • Chaque machine virtuelle d’un pool créée avec une Configuration de machine virtuelle est associée à un disque de système d’exploitation managé par Azure. Les disques managés par Azure entraînent un coût supplémentaire, et d’autres niveaux de performance de disque ont également des coûts différents.
  • Stockage
    • Lorsque des applications sont déployées sur les machines virtuelles d’un nœud Batch à l’aide de packages d’application, vous êtes facturé pour les ressources Stockage Azure que vos packages d’application consomment. Le stockage des fichiers d’entrée et de sortie, notamment les fichiers de ressources et autres données de journal, vous est également facturé.
    • En général, le coût des données de stockage associées à Batch est beaucoup moins élevé que celui des ressources de calcul.
  • Dans certains cas, un équilibreur de charge
  • Ressources réseau
    • Pour les pools de configuration de machine virtuelle, des équilibreurs de charge standard sont employés, pour lesquels des adresses IP statiques sont nécessaires. Les équilibreurs de charge utilisés par Batch sont visibles pour les comptes configurés en mode abonnement utilisateur, mais non en mode service Batch.
    • Les équilibreurs de charge standard entraînent des frais pour toutes les données transmises aux et par les machines virtuelles de pools Batch. Certaines API Batch qui récupèrent les données des nœuds de pool (par exemple Get Task/Node File), les packages d’application de tâches, les fichiers de ressources/sortie et les images conteneur engendrent également des frais.
    • Réseau virtuel
  • Selon les services que vous utilisez avec votre solution Batch, des frais supplémentaires peuvent s’appliquer. Parmi les services souvent utilisés avec Batch, les suivants peuvent présenter des coûts associés :
    • Application Insights
    • Data Factory
    • Azure Monitor

Coûts qui peuvent s’accumuler après la suppression de la ressource

Une fois que vous avez supprimé des ressources Azure Batch, les ressources suivantes peuvent continuer à exister. Les coûts continueront de s’accumuler jusqu’à ce que vous supprimiez ces ressources.

  • Machine virtuelle
  • Les disques déployés autres que les disques du système d’exploitation et les disques locaux
  • Réseau virtuel
    • Votre carte réseau virtuelle et votre adresse IP publique (le cas échéant), peuvent être configurées pour être supprimées avec votre machine virtuelle.
  • Bande passante
  • Équilibreur de charge

Pour les réseaux virtuels, un réseau virtuel est facturé par abonnement et par région. Les réseaux virtuels ne peuvent pas s’étendre sur des régions ou des abonnements. La mise en place de points de terminaison privés dans des configurations de réseau virtuel peut également entraîner des frais.

La bande passante est facturée à l’utilisation ; plus vous transférez de données, plus vous êtes facturé.

Utilisation du paiement anticipé Azure avec Azure Batch

Bien qu’Azure Batch soit un service gratuit, vous pouvez payer les frais associés aux ressources sous-jacentes avec votre crédit de paiement anticipé Azure. Vous ne pouvez cependant pas utiliser le crédit Paiement anticipé Azure pour payer des frais pour des produits et services tiers, notamment ceux de Place de marché Azure.

Afficher l’analyse des coûts et créer des budgets

À mesure que vous utilisez des ressources Azure avec Azure Batch, vous générez des coûts. Les coûts unitaires d’utilisation des ressources Azure varient selon les intervalles de temps (secondes, minutes, heures et jours) ou selon l’utilisation d’unités (octets, mégaoctets, etc.). Dès que vous commencez à utiliser des ressources Azure, des coûts sont occasionnés et visibles dans l’analyse des coûts. Microsoft Cost Management vous permet de planifier, d’analyser et de réduire vos dépenses en vue d’optimiser votre investissement dans le cloud. Vous pouvez afficher et filtrer les coûts de Batch à afficher et filtrer, prévoir les coûts futurs et définir des limites de dépense avec des alertes lorsque ces limites sont atteintes.

Dans le portail Azure, vous pouvez créer des budgets et des alertes de dépenses pour vos pools ou comptes Batch. Les budgets et alertes sont utiles pour notifier les parties prenantes des risques de dépassement, même si un retard les alertes de dépenses et un léger dépassement de budget peuvent se produire.

La capture d’écran suivante montre un exemple de vue d'analyse des coûts pour un abonnement, filtrée de manière à n’afficher que les coûts cumulés associés à tous les comptes Batch. Les graphiques inférieurs montrent comment le coût total de la période sélectionnée peut être catégorisé par service consommé, emplacement et compteur. Bien qu’il s’agisse d’un exemple et qu’il ne soit pas destiné à refléter les coûts que vous pouvez voir pour vos abonnements, il est normal que le coût le plus élevé s’applique aux machines virtuelles allouées aux nœuds de pool Batch.

Screenshot showing cost analysis in the Azure portal for all Batch accounts in a subscription.

Un niveau supplémentaire de détail d’analyse des coûts peut être obtenu avec un filtre Ressource. Pour les comptes Batch, ces valeurs sont le nom du compte Batch et le nom du pool. Cela vous permet d’afficher les coûts d’un pool spécifique, de plusieurs pools, ou d’un ou plusieurs comptes.

Affichage de l’analyse des coûts pour un pool Batch

Mode d’allocation de pool du service Batch

Pour les comptes Batch créés avec le mode d’allocation de pool du service Batch :

  1. Dans le portail Azure, tapez ou sélectionnez Cost Management + Billing.
  2. Sélectionnez votre abonnement dans la section Étendues de facturation.
  3. Sous Gestion des coûts, sélectionnez Analyse des coûts.
  4. Sélectionnez Ajouter un filtre. Dans la première liste déroulante, sélectionnez Ressource.
  5. Dans le deuxième menu déroulant, sélectionnez le pool Batch. Une fois le pool sélectionné, vous voyez l’analyse des coûts pour votre pool. La capture d'écran ci-dessous montre un exemple de données. Screenshot showing cost analysis of a Batch pool in the Azure portal.

L'analyse du coût qui en résulte montre le coût du pool ainsi que les ressources qui génèrent ce coût. Dans cet exemple, les machines virtuelles utilisées dans le pool sont la ressource la plus coûteuse.

Notes

Dans cet exemple, le pool utilise la configuration de la machine virtuelle, qui est recommandée pour la plupart des pools et facturée selon la structure tarifaire des machines virtuelles. Les pools qui appliquent la configuration des services cloud sont facturés suivant la structure tarifaire Services cloud.

Des balises peuvent être associées à des comptes Batch, ce qui permet d’utiliser des balises pour un filtrage plus avancé des coûts. Par exemple, les balises peuvent être utilisées pour associer des informations de projet, d’utilisateur ou de groupe à un compte Batch. Les balises ne peuvent pas être associées actuellement à des pools Batch.

Mode d’allocation de pool de l'abonnement utilisateur

Pour les comptes Batch créés avec le mode d’allocation de pool de l’abonnement utilisateur :

  1. Dans le portail Azure, tapez ou sélectionnez Cost Management + Billing.
  2. Sélectionnez votre abonnement dans la section Étendues de facturation.
  3. Sous Gestion des coûts, sélectionnez Analyse des coûts.
  4. Sélectionnez Ajouter un filtre. Dans la première liste déroulante, sélectionnez Balise.
  5. Dans la deuxième liste déroulante, sélectionnez poolname.
  6. Dans la troisième liste déroulante, sélectionnez le pool Batch. Une fois le pool sélectionné, vous voyez l’analyse des coûts pour votre pool. La capture d'écran ci-dessous montre un exemple de données. Screenshot showing cost analysis of a user subscription Batch pool in the Azure portal.

Notez que si vous souhaitez afficher les données de coût de tous les pools dans un compte Batch d’abonnement utilisateur, vous pouvez sélectionner batchaccountname dans la deuxième liste déroulante et le nom de votre compte Batch dans la troisième liste déroulante.

Remarque

Les pools créés par les comptes Batch de l’abonnement utilisateur ne s’affichent pas sous le filtre Ressource, bien que leur utilisation s’affiche toujours lors du filtrage des « machines virtuelles » sous le nom du service.

Création d’un budget pour un pool Batch

Des budgets peuvent être créés et des alertes de coût sont émises lorsque différents pourcentages d’un budget sont atteints, par exemple 60 %, 80 % et 100 %. Les budgets peuvent spécifier un ou plusieurs filtres, ce qui vous permet de surveiller et d’alerter les coûts des comptes Batch à différentes granularités.

  1. Sur la page Analyse des coûts, sélectionnez Budget : aucun.
  2. Sélectionnez Créer un budget >.
  3. Utilisez la fenêtre qui apparaît pour configurer un budget propre à votre pool. Pour plus d’informations, consultez Didacticiel : Créer et gérer des budgets Azure.

Réduction des coûts associés à Azure Batch

Selon les scénarios, il peut être nécessaire de réduire autant que possible les coûts. Envisagez d’appliquer certaines de ces stratégies pour optimiser l’efficacité de vos charges de travail et réduire les coûts potentiels.

Réduire l’utilisation des nœuds de pool

Les coûts les plus importants associés à l’utilisation de Batch proviennent généralement des machines virtuelles allouées aux nœuds de pool. Pour les pools de configuration de machine virtuelle, les disques managés associés utilisés pour les disques de système d’exploitation de machine virtuelle peuvent également contribuer aux coûts de manière significative.

Évaluez votre application Batch pour déterminer si les nœuds de pool sont bien utilisés par des tâches de travail ou si les nœuds de pool sont inactifs pendant une durée supérieure à celle prévue. Il peut être possible de réduire le nombre de nœuds de pool qui sont alloués, de réduire le taux de scale-up des nœuds de pool ou d’augmenter le taux de scale-down pour augmenter l’utilisation.

En plus de la surveillance personnalisée, les métriques Batch peuvent aider à identifier les nœuds qui sont alloués, mais dans un état inactif. Vous pouvez sélectionner une métrique pour la plupart des états de nœud de pool à afficher en utilisant les métriques de surveillance de Batch dans le portail Azure. Le nombre de nœuds inactifs et le nombre de nœuds en cours d’exécution peuvent être consultés pour indiquer, par exemple si les nœuds de pool sont bien utilisés.

Vérifier que les nœuds de pool sont en mesure d’exécuter des tâches

Les nœuds alloués répertoriés pour un pool entraînent normalement des coûts, mais il est possible que les nœuds de pool soient dans un état où il est impossible d’exécuter des tâches, par exemple « inutilisable » ou « starttaskfailed ». Les API ou les métriques Batch peuvent être utilisées pour surveiller et détecter cette catégorie de machine virtuelle. La raison de ces états peut ensuite être déterminée et des mesures correctives peuvent être prises pour réduire ou éliminer ces nœuds non sains.

Utiliser la taille de machine virtuelle de nœud du pool appropriée

Assurez-vous que la taille de machine virtuelle appropriée est utilisée, afin que les machines virtuelles soient bien utilisées lors de l’exécution de tâches, tout en fournissant les performances nécessaires à l’exécution de vos tâches de travail dans le délai imparti. Les machines virtuelles de nœuds de pool peuvent être sous-utilisées dans certaines situations, par exemple dans le cas d’une utilisation faible du processeur. Il est possible de réaliser des économies en choisissant une taille de machine virtuelle à un prix inférieur.

Pour déterminer l’utilisation des machines virtuelles, vous pouvez vous connecter à un nœud lors de l’exécution de tâches pour afficher les données de performances ou utiliser des fonctionnalités de surveillance, telles qu’Application Insights, pour obtenir des données de performances à partir des nœuds de pool.

Utiliser des emplacements de pool pour réduire les conditions de nœud

Plusieurs emplacements de tâches peuvent être spécifiés pour un pool afin que le nombre correspondant de tâches puisse être exécuté en parallèle sur chaque nœud. Les emplacements de tâches de pool peuvent être utilisés pour réduire le nombre de nœuds utilisés dans un pool en choisissant des tailles de machines virtuelles plus grandes et en exécutant plusieurs tâches en parallèle sur le nœud pour vérifier que le nœud est bien utilisé. Si les nœuds sont sous-utilisés, les emplacements peuvent être utilisés pour augmenter l’utilisation. Par exemple, pour une application de tâche à thread unique, un emplacement par cœur peut être configuré. Il est également possible d’avoir plus d’emplacements que de cœurs. Cela s’applique si l’application bloque de manière significative l’attente des appels à des services externes à retourner, par exemple.

Définissez taskSchedulingPolicy sur pack pour vous assurer que les machines virtuelles sont utilisées autant que possible, la mise à l’échelle pouvant plus facilement supprimer des nœuds n’exécutant aucune tâche.

Utiliser des machines virtuelles spot Azure

Les machines virtuelles spot Azure réduisent le coût des charges de travail Batch en tirant parti de la capacité de calcul excédentaire disponible dans Azure. Lorsque vous spécifiez des machines virtuelles spot dans vos pools, Batch utilise ce surplus pour exécuter votre charge de travail. Vous pouvez réaliser des économies substantielles en utilisant des machines virtuelles spot plutôt que des machines virtuelles dédiées. Gardez à l’esprit que les machines virtuelles spot ne conviennent pas à toutes les charges de travail, car il se peut qu’elles ne soient pas disponibles pour l’allocation, ou qu’elles soient préemptées.

Utiliser des disques de système d’exploitation éphémères

Par défaut, les nœuds de pool utilisent des disques managés, ce qui entraîne des coûts. Les pools de configuration de machines virtuelles de certaines machines virtuelles peuvent utiliser des disques de système d’exploitation éphémères, qui créent le disque de système d’exploitation sur le cache de la machine virtuelle ou sur un SSD temporaire, afin d’éviter les coûts supplémentaires associés aux disques managés.

Achat de réservations pour les instances de machine virtuelle

Si vous avez l’intention d’utiliser Batch sur une longue période, vous pouvez réduire le coût des machines virtuelles en utilisant des Réservations Azure pour vos charges de travail. Le coût d’une réservation est nettement inférieur à celui d’un paiement à l'utilisation. Les instances de machines virtuelles utilisées sans réservation sont facturées à l’utilisation. Lorsque vous achetez une réservation, la remise de réservation est appliquée. Lorsque vous souscrivez à des plans d’un ou trois ans pour des instances de machine virtuelle, d’importantes remises sont appliquées à l’utilisation des machines virtuelles, notamment les machines virtuelles consommées via des pools Batch.

Il est important de noter que la remise de réservation est perdue si vous ne l’utilisez pas. Si aucune ressource correspondante n’est utilisée pendant une heure, vous perdrez la quantité de réservation pour cette heure. Les heures réservées inutilisées ne peuvent pas être reportées et sont donc perdues si elles ne sont pas utilisées. Les charges de travail Batch font souvent évoluer le nombre de machines virtuelles allouées en fonction de la charge et ont une charge variable, notamment pendant les périodes où il n’y a pas de charge. Il est donc nécessaire de déterminer la quantité de réservation, étant donné que les heures réservées sont perdues si les machines virtuelles Batch font l’objet d’un scale-down sous la quantité de réservation.

Mise à l’échelle automatique

La mise à l'échelle automatique ajuste dynamiquement le nombre de machines virtuelles dans votre pool Batch en fonction des exigences du travail en cours. Lorsque vous mettez à l’échelle le pool selon la durée de vie d’un travail, la mise à l’échelle automatique garantit que les machines virtuelles font l’objet d’un scale-up et sont utilisées uniquement quand il y a un travail à exécuter. Une fois le travail terminé ou quand il n’y a pas de travail, les machines virtuelles effectuent un scale-down automatiquement pour économiser les ressources de calcul. La mise à l'échelle vous permet de réduire le coût global de votre solution Batch en n'utilisant que les ressources nécessaires.

Étapes suivantes