Utiliser des groupes de déploiement dans des pipelines de mise en production classiques
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Comme pour un pool d’agents, un groupe de déploiement est un ensemble logique d’ordinateurs cibles sur utilisant chacun un agent de déploiement. Les groupes de déploiement peuvent représenter des environnements tels que « Développement », « Test » ou « Production ». Chaque machine virtuelle ou physique du groupe de déploiement interagit avec Azure Pipelines pour coordonner les tâches de déploiement. Les groupes de déploiement sont différents des travaux de déploiement, qui sont des collections d’étapes liées aux tâches définies dans les pipelines YAML.
Remarque
Les groupes de déploiement sont uniquement disponibles pour les pipelines de mise en production classiques.
À l’aide de groupes de déploiement, vous pouvez :
- Spécifiez le contexte de sécurité et les cibles d’exécution pour les agents.
- Ajoutez des utilisateurs et accordez-leur les autorisations appropriées pour administrer, gérer, afficher et utiliser le groupe.
- Affichez les journaux en direct pour chaque serveur pendant qu’un déploiement se produit et téléchargez les journaux pour suivre les déploiements pour des serveurs individuels.
- Utilisez des balises pour limiter les déploiements à des ensembles spécifiques de serveurs cibles.
Prérequis
- Une organisation et un projet Azure DevOps. Pour créer une organisation et un projet, consultez Créer une organisation ou créer un projet dans Azure DevOps.
- Accès administratif à au moins une machine physique ou virtuelle Windows ou Linux à utiliser comme cible de déploiement.
Créer un groupe de déploiement
Dans votre projet Azure DevOps, sélectionnez Groupes de déploiement de pipelines>.
Dans l’écran Groupes de déploiement, sélectionnez Nouveau ou sélectionnez Ajouter un groupe de déploiement si ce groupe de déploiement est le premier dans le projet.
Entrez un nom de groupe de déploiement, puis sélectionnez Créer.
Dans l’écran suivant, sélectionnez Windows ou Linux pour le type de cible à inscrire. Un script d’inscription est généré.
Sélectionnez Utiliser un jeton d’accès personnel dans le script pour l’authentification, puis sélectionnez Copier le script dans le Presse-papiers.
Enregistrez le script copié pour s’exécuter sur toutes les machines cibles de votre groupe de déploiement.
Inscrire des serveurs cibles
Pour inscrire chaque serveur cible dans le groupe de déploiement :
Connectez-vous à l’ordinateur avec un compte d’administrateur et exécutez le script copié. Pour les machines Windows, utilisez une invite de commandes PowerShell avec élévation de privilèges.
Pour affecter des balises qui vous permettent de limiter les déploiements à certains serveurs dans un travail de groupe de déploiement, entrez Y lorsque vous y êtes invité à entrer des balises, puis entrez une balise ou des balises.
Les balises sont limitées à 256 caractères chacune, ne respectent pas la casse et le nombre de balises que vous pouvez utiliser n’est pas limité.
Une fois que vous avez configuré un serveur cible, le script doit renvoyer le message Service vstsagent.{organization-name}.{computer-name} started successfully
.
Installer et mettre à niveau des agents
Chaque serveur cible du groupe de déploiement nécessite un agent de déploiement. Le script d’inscription généré pour les serveurs cibles installe un agent. Vous pouvez également utiliser les méthodes suivantes pour installer des agents :
Si les serveurs cibles sont des ordinateurs virtuels Azure, vous pouvez facilement configurer vos serveurs en installant l’extension d’agent Azure Pipelines sur chaque ordinateur virtuel.
Vous pouvez utiliser la tâche AzureResourceGroupDeploymentV2 dans votre pipeline de mise en production pour créer et inscrire un groupe de déploiement dynamiquement.
Pour plus d’informations sur ces méthodes, consultez Provisionner des agents pour les groupes de déploiement.
Pour mettre à niveau les agents sur les serveurs cibles vers la dernière version sans avoir à les redéployer, sélectionnez les points de suspension Autres actions en regard du groupe de déploiement dans la page Groupes de déploiement et sélectionnez Cibles de mise à jour. Pour plus d’informations, consultez Agents Azure Pipelines.
Pools de déploiement
Un pool de déploiements est un ensemble de serveurs cibles disponibles pour l’ensemble de l’organisation Azure DevOps. Pour créer et mettre à jour des pools de déploiement, vous avez besoin d’autorisations d’administrateur de regroupement de projets dans l’organisation Azure DevOps.
Lorsque vous créez un pool de déploiement pour une organisation, vous pouvez provisionner automatiquement les groupes de déploiement correspondants pour les projets sélectionnés ou tous les projets de l’organisation. Ces groupes de déploiement ont les mêmes serveurs cibles que le pool de déploiements.
Vous pouvez déclencher manuellement une mise à niveau de version de l’agent pour tous les serveurs du pool en sélectionnant les points de suspension Autres actions en regard du pool de déploiement dans les pools de déploiement et en sélectionnant Cibles de mise à jour.
Surveiller l’état de publication
Pendant qu’un pipeline de mise en production est en cours d’exécution, vous pouvez afficher les journaux en direct pour chaque serveur cible dans votre groupe de déploiement. Une fois le déploiement terminé, vous pouvez télécharger les fichiers journaux pour chaque serveur afin d’examiner les déploiements et de déboguer les problèmes.
Partager un groupe de déploiement
Vous pouvez partager des groupes de déploiement avec d’autres projets dans l’organisation. Pour approvisionner votre groupe de déploiement pour d’autres projets :
Dans votre projet Azure DevOps, sélectionnez Groupes de déploiement de pipelines>.
Sélectionnez votre groupe de déploiement, puis sélectionnez Gérer.
Sélectionnez des projets dans la liste à partager, puis sélectionnez Enregistrer.
Les projets inclus ont désormais le groupe de déploiement partagé répertorié dans les groupes de déploiement.
Déployer automatiquement sur de nouveaux serveurs cibles
Lorsque de nouveaux serveurs cibles sont ajoutés à un groupe de déploiement, vous pouvez configurer l’environnement pour déployer automatiquement la dernière version réussie sur les nouvelles cibles.
Dans la définition de votre pipeline de mise en production, sélectionnez l’icône post-déploiement.
Dans l’écran Conditions de post-déploiement, activez le déclencheur de redéploiement automatique.
Sous Sélectionner des événements, sélectionnez Nouvelle cible avec les balises requises devient disponible.
Sous Sélectionner une action, sélectionnez Redéployer le dernier déploiement réussi sur cet environnement.