Pourquoi utiliser les piles de déploiement ?

Effectué

Vous évaluez si les piles de déploiement peuvent fournir les fonctionnalités appropriées pour la gestion du cycle de vie des ressources. Vous avez découvert les fonctionnalités des piles de déploiement et comment les utiliser pour gérer vos applications et vos ressources Azure. Vous voulez découvrir pourquoi vous devez utiliser des piles de déploiement et quels sont leurs avantages généraux.

Dans cette unité, vous découvrez les avantages des piles de déploiement.

Avantages des piles de déploiement

Les piles de déploiement offrent de nombreux avantages dans votre processus de provisionnement de ressources, notamment :

  • Simplification du provisionnement
  • Blocage des changements non autorisés
  • Nettoyage fiable des ressources
  • Modèles standardisés
  • Amélioration des processus existants

Simplification du provisionnement

Imaginez une application qui doit être déployée sur plusieurs groupes de ressources dans plusieurs abonnements. Dans un déploiement standard, vous devez faire plusieurs opérations de création dans l’étendue de chaque groupe de ressources. Votre pipeline de déploiement doit être conçu pour gérer les dépendances des ressources et la séquence de déploiement.

Avec les piles de déploiement, vous pouvez déployer l’application avec une seule commande. Dans cet exemple, quand la pile de déploiement cible le groupe d’administration, toutes les ressources sont déployées sur les abonnements et groupes de ressources appropriés au moment de l’exécution. Les mises à jour de l’application sont gérées de la même façon, avec une seule commande de déploiement.

Ce processus réduit considérablement le nombre d’opérations nécessaires pour déployer ou modifier l’application.

Blocage des changements non autorisés

Les piles de déploiement fournissent une couche supplémentaire de sécurité et de garde-fous qui permettent d’empêcher les changements non autorisés de vos ressources Azure.

Quand vous créez une pile de déploiement, vous pouvez spécifier une autorisation qui est appliquée aux ressources gérées par la pile. Ces autorisations, appelées paramètres de refus, sont utilisées pour empêcher la modification ou la suppression par des utilisateurs non autorisés.

Les paramètres de refus peuvent sembler s’apparenter dans leur concept au contrôle d’accès en fonction du rôle Azure (RBAC) et aux verrous Azure. Le RBAC est utilisé pour attribuer des rôles spécifiques à des utilisateurs spécifiques dans une étendue spécifique. Par exemple, attribution du rôle Contributeur à un utilisateur dans l’étendue du groupe de ressources. Les verrous sont utilisés pour empêcher la modification ou la suppression de ressources dans des étendues spécifiques, quel que soit l’utilisateur effectuant l’action. Par exemple, le placement d’un verrou de lecture seule sur l’étendue de l’abonnement empêche la modification ou la suppression de toutes les ressources, même si l’utilisateur a l’autorisation RBAC pour le faire.

Les paramètres de refus de la pile de déploiement vous permettent d’implémenter des contrôles sur une collection de ressources dans des étendues, qui remplacent les attributions RBAC ou les verrous éventuellement en place.

Nettoyage fiable des ressources

Imaginez un environnement de développement pour une application déployée sur plusieurs groupes de ressources dans un abonnement. Pour supprimer l’environnement ainsi que toutes les ressources, vous devez faire plusieurs opérations de suppression sur les groupes de ressources et les ressources. S’il y a des dépendances entre les ressources, l’opération de suppression peut échouer. Les ressources supprimées dans le désordre peuvent également entraîner l’échec de l’opération de suppression.

Les piles de déploiement vous permettent de supprimer la pile et toutes ses ressources avec un seul appel d’API, sans avoir à comprendre les dépendances. Cette opération unique supprime les ressources de manière fiable et améliore la vitesse de suppression.

Un autre avantage de supprimer les ressources gérées par une pile est la possibilité de réduction des coûts. La suppression d’une application et de ses ressources non gérées par une pile de déploiement est souvent un effort manuel sujet aux erreurs. Vous pouvez oublier accidentellement de supprimer certaines ressources, qui continuent d’entraîner des coûts. Les piles de déploiement résolvent ce problème en jouant le rôle d’un outil de gestion des coûts, en particulier dans les environnements éphémères.

Quand vous supprimez une pile de déploiement, vous pouvez utiliser la propriété actionOnUnmanage pour déterminer comment Azure gère les ressources, les groupes de ressources et les groupes d’administration contenus dans la pile. Azure peut supprimer les ressources, les groupes de ressources et les groupes d’administration, ou peut les détacher, ce qui signifie que les ressources ne sont pas supprimées, mais ne sont plus gérées par la pile.

Processus et modèles standardisés

La création et le déploiement d’une pile de déploiement et de ses ressources sont presque identiques à un déploiement Azure standard. Par exemple :

La commande Azure CLI pour déployer un fichier Bicep dans un groupe de ressources est la suivante :

az deployment group create \
    --resource-group rg-depositsApplication \
    --template-file ./main.bicep

La commande Azure CLI pour créer une pile de déploiement dans l’étendue du groupe de ressources est la suivante :

az stack group create \
    --name stack-deposits \
    --resource-group rg-depositsApplication \
    --template-file ./main.bicep \
    --action-on-unmanage detachAll \
    --deny-settings-mode none

Les piles de déploiement prennent en charge l’utilisation de fichiers Bicep, de modèles ARM JSON ou de specs de modèle pour définir des ressources dans une pile. Quand vous déployez une pile de déploiement avec Azure CLI ou Azure PowerShell, vous pouvez pointer vers le modèle spécifique (fichier Bicep ou modèle ARM JSON) ou les specs de modèle. Vous n’avez pas besoin de changer la définition de vos ressources.

Amélioration des processus existants

Si vous utilisez déjà l’infrastructure en tant que code pour gérer les déploiements de vos ressources sur Azure, les piles de déploiement vous permettent de mieux contrôler le processus. Comme indiqué dans la section précédente, le processus de création d’une pile de déploiement n’est pas très différent de la création d’un déploiement basé sur un groupe de ressources. La possibilité de déployer des groupes d’administration, des abonnements et des groupes de ressources avec une seule commande est beaucoup plus simple avec les piles de déploiement. La sécurité des ressources fait désormais partie de votre processus de déploiement avec des piles.