Azure DevOps : Présentation de l'outil et des services associés

Auteur
Team Redac
Date de publication
Dec 15, 2022
Temps de lecture
7
m

Azure DevOps est une plateforme entièrement dédiée au DevOps sur le cloud Microsoft Azure. Découvrez tout ce que vous devez savoir sur ses fonctionnalités, ses avantages et les formations à suivre pour la maîtriser.

En combinant les équipes de développement (Dev) et d'exploitation IT (Ops), le DevOps permet la relaxe de logiciels de haute qualité en flux continu. Les organisations l'adoptent pour raccourcir le cycle de vie de développement logiciel (SDLC), mais aussi pour améliorer la qualité des produits.

Cette méthodologie est devenue un standard dans le monde de l'informatique. Il existe de nombreux outils dédiés au DevOps, tels que des outils CI/CD, des systèmes de gestion de version, des solutions d'infrastructure en tant que code ou des logiciels de monitoring.

Avec l'essor du cloud computing, les outils DevOps font désormais partie du catalogue de services des fournisseurs de cloud public. Sur sa plateforme cloud Azure, Microsoft propose la plateforme Azure DevOps.

Qu'est-ce que Azure DevOps ?

Lancée en octobre 2018, Azure DevOps est la plateforme de Microsoft entièrement dédiée au DevOps. Il s'agit d'un SaaS (logiciel en tant que service) offrant une boîte à outils complète pour la construction et la distribution de logiciel.

Elle offre aux équipes de développement des fonctionnalités de gestion de version, de reporting, de gestion de configuration et de projet, d'automatisation, de testing et de gestion relaxe. En outre, cette plateforme s'intègre avec les autres outils DevOps populaires.

Il est possible d'utiliser les Azure DevOps Services sur le cloud, mais aussi Azure DevOps Server sur site. Le logiciel est agnostique et compatible avec les OS Windows, Linux, mac et tous les langages de programmation comme C ou Python.

Les avantages d'Azure DevOps

Azure DevOps présente plusieurs avantages. Il s'agit tout d'abord d'une plateforme collaborative, avec notamment des services comme Azure Boards.

Ce SaaS est également fiable, et bénéficie d'une maintenance régulière. Concernant la gouvernance et la coordination de l'administration des systèmes, Work Items permet de simplifier la tâche.

Autre point fort : Azure DevOps est extensible et permet aux entreprises le « scaling » en fonction de leurs besoins. Les mises à jour et les patches sont très faciles à déployer, et de nouvelles fonctionnalités sont introduites toutes les trois semaines.

Très simple à implémenter, Azure DevOps offre un dépôt de code Git pouvant être utilisé pour commencer un projet DevOps. Un pipeline de livraison continu est configuré pour un déploiement sans encombre sur Azure. De même, le tableau de bord DevOps Projects du portail Azure permet de superviser les builds et les déploiements.

Lorsque les applications sont complétées, Azure propose différentes options de déploiement. Les équipes DevOps peuvent héberger leurs applications sur une machine virtuelle Windows ou Linux, une application web Azure, ou via le Azure Container Service.

Les services DevOps Azure

La plateforme Azure DevOps regroupe plusieurs services pour répondre à tous les besoins des équipes DevOps.Voici un tour d'horizon des différentes fonctionnalités.

Azure Boards

Azure Boards permet aux équipes de gérer les projets tout au long du cycle de vie de développement. Les équipes peuvent suivre leurs tâches, le statut des travaux, ou les découvertes de failles et de problèmes.

Les travaux progressent à travers différentes phases comme « à faire », « en cours » et « complété ». Le statut de progression des tâches est mis à jour automatiquement.

Ce service est utile aux ingénieurs DevOps pour plusieurs raisons. Il offre tout d'abord une extensibilité permettant de suivre l'évolution de l'entreprise et de l'équipe, ce qui est essentiel pour mesurer et gérer le travail quelle que soit l'ampleur du projet.

En outre, les outils visuels sont simples à personnaliser. Une interface configurable standard permet de surveiller l'avancée des travaux en temps réel.

L'interface primaire de Azure Boards est divisée en quatre sections : l'onglet Azure Boards, les éléments de travail, les problèmes, et la gestion du projet et des membres de l'équipe.

On retrouve également des outils permettant de capturer l'information. Ils permettent aussi l'édition, l'ajout de photos ou l'attachement de pièces jointes.

Enfin, l'intégration avec GitHub permet d'effectuer des pulls, des push et des requêtes depuis des dépôts de code existants. La connexion avec GitHub s'effectue très simplement.

Azure Pipeline

Le service Azure Pipeline regroupe plusieurs processus automatisés et aide les développeurs à compiler, construire et déployer du code sur diverses plateformes informatiques.

Il s'agit d'un outil de livraison continue, similaire à Jenkins et CodeShip en open source. Son objectif principal est d'éliminer les besoins en intervention manuelle, puisque toutes les modifications effectuées sur Pipeline sont implémentées au projet instantanément.

Les différentes fonctionnalités de Azure Pipeline sont réparties dans les catégories contrôle de source, création de package, outils de construction, gestion de configuration et monitoring.

Cette solution fonctionne avec tous les langages de programmation principaux comme Java, Go, Python, JavaScript, Node.js, .Net, C++ ou XCode. Il est nécessaire de la connecter à une système de contrôle source comme GitHub, Azure Repos, Bitbucket ou Subversion.

Basé sur les principes d'intégration continue et de livraison continue, Azure Pipeline aide à tester, développer et déployer le code régulièrement.

Azure Repos

Azure Repos regroupe des outils de gestion de version de code. Quelle que soit l'ampleur d'un projet logiciel, il est toujours utile d'employer la gestion de version aussi tôt que possible.

Les systèmes de gestion de version comme Azure Repos permettent de suivre les changements apportés au code au fil du temps. À tout moment, il est possible de capturer une image des fichiers pendant leur modification. Ce snapshot est conservé indéfiniment, et peut être restauré en cas de besoin.

La gestion de version permet de sauvegarder le travail, et de gérer les modifications de code au sein de l'équipe. Même pour un développeur individuel, cette pratique aide à rester organisé en corrigeant les bugs ou en ajoutant de nouvelles fonctionnalités.

Le service Azure Repos conserve l'historique de développement, et permet de passer en revue et de restaurer n'importe quelle version antérieure du code. Il est possible de choisir entre le système décentralisé Git ou l'alternative centralisée TFVC (Team Foundation Version Control).

Azure Test Plans

Le service Azure DevOps Test Plans était anciennement appelé Team Foundation Server (TFS). Il permet de créer des plans de test, des scénarios de test, des tests manuels et des tests d'explication.

Les utilisateurs peuvent créer et utiliser des plans de testing automatiques ou manuels pour la sécurité des applications. Ils peuvent également tester les travaux des équipes de développement, de contrôle qualité ou d'analyse métier. Différents groupes peuvent participer aux tests et apporter leur perspective.

De plus, Azure Test Plans fournit aussi un hub de paramètres, plans de test et configuration simplifiant la création et la gestion d'éléments de test.

Azure Artifacts

Azure Artifacts est un système de gestion de packaging incorporé à Azure DevOps. Il permet de créer et de partager des paquets Maven, npm et NuGet en utilisant des flux publics ou privés.

Ces flux entrants peuvent être incorporés aux flux de package définis. Ainsi, Azure Artifacts permet la mise en cache des éléments sur lesquels les applications reposent au sein des flux.

Ceci permet de continuer à ajouter des dépendances aux éléments de l'application, même si la source principale du flux n'est plus accessible. En parallèle, Azure Artifacts peut aussi être utilisé pour stocker les artefacts supplémentaires au flux dans des packages universels personnalisables.

Ce service est également essentiel pour la sécurité, puisqu'il protège les packages sources et empêche les utilisateurs non autorisés de les supprimer ou d'effectuer des changements.

Azure DevOps Server

Azure DevOps est disponible sur le cloud sous forme de différents services, mais aussi en local avec Azure Server. C'est en septembre 2018 que Microsoft a renommé la suite Visual Studio Team Services (VSTS) en Azure DevOps Services.

Par la suite, en 2019, Visual Studio Team Foundation Server en Azure DevOps Server. De nombreuses fonctionnalités de Azure DevOps Services ont été ajoutées à la version sur site au fil des dernières années.

Les développeurs individuels et les groupes de cinq personnes ou moins peuvent utiliser Azure DevOps Server Express gratuitement. Il n'est pas nécessaire d'investir dans un serveur d'hébergement, car le logiciel peut être installé sur PC de bureau ou portable.

En revanche, les équipes de plus de cinq doivent choisir Azure DevOps Server pour poursuivre leurs projets et préserver toutes leurs données. Il est possible d'intégrer Azure DevOps Server avec n'importe quel IDE (environnement de développement intégré), ce qui simplifie le travail sur un projet de n'importe quelle ampleur pour une équipe cross-fonctionnelle.

Azure DevTest Labs

Le service Azure DevTest Labs permet de créer, d'utiliser et de gérer l'infrastructure en tant que services (IaaS), les machines virtuelles, et les environnements PaaS (plateformes en tant que service).

Les fondations pré-configurées et les artefacts de constructions de machines virtuelles sont disponibles dans les laboratoires. Il est possible d'utiliser les guides Azure Resource Manager (ARM) pour créer des environnements tels que des fermes SharePoints et Azure Web Applications.

Les utilisateurs peuvent se servir de machines virtuelles préconçues, ou configurer leurs propres machines virtuelles configurées sur mesure. Les fonctionnalités de mesure permettent de suivre et contrôler la consommation de ressources.

Au sein d'une organisation, les développeurs peuvent utiliser Azure DevTest Labs pour exploiter les machines virtuelles et ressources PaaS en self-service.

Les Labs DevTest peuvent être produits depuis Azure Resource Manager ou depuis les templates pré-configurés. Ils contiennent tous le logiciel et les outils nécessaires pour créer des environnements. Le temps de configuration est donc réduit au strict minimum.

On peut notamment exploiter Azure DevTest Labs pendant le déploiement de machines virtuelles pour concevoir des environnements de test, ou pour construire des salles de classe virtuelles et des laboratoires d'apprentissage.

Ce service apporte efficacité, uniformité et réduction des coûts grâce à la restriction d'usage des ressources au sein de l'environnement de laboratoire via l'application de règles automatisées.

Azure Monitor

Azure Monitor fournit des données sur les services et applications DevOps. Ceci permet d'améliorer leurs performances et leur disponibilité.

Il s'agit d'une solution complète pour l'assemblage, l'évaluation et la réponse à la télémétrie sur le cloud ou sur site. Les données collectées permettent de mieux comprendre les performances des applications, et de détecter les menaces potentielles.

On peut utiliser Azure Monitor pour détecter et résoudre les problèmes sur différentes applications et interfaces à l'aide du module Application Insights. Il est aussi possible de comparer les problèmes d'infrastructure IT avec des machines virtuelles et des images de conteneurs.

Le module Log Analytics permet d'explorer les données de monitoring plus en profondeur pour le débogage et le diagnostic avancé. Ce service délivre aussi des notifications intelligentes et des actions automatiques.

À l'aide des panneaux et workbooks Azure, il est également possible de créer des visualisations. Les métriques Azure Monitor permettent de collecter des données de ressources surveillées.

Le service permet de suivre la disponibilité, la productivité et la consommation de ressources de n'importe quelle application hébergée sur Azure ou sur site. On peut le connecter aux technologies et services DevOps comme Azure DevOps et Jira. Les langages et frameworks tels que .NET, Java et Node.js sont pris en charge.

L'intégration des outils DevOps

L'un des grands points forts de Azure DevOps est l'intégration avec une large gamme d'outils et de services. Ceci concerne aussi bien des outils Microsoft que des solutions tierces.

On retrouve notamment des intégrations natives avec Ansible, Chef, Puppet, Terraform et d'autres outils DevOps populaires. En plus de sa collection d'intégrations natives, Azure DevOps permet l'intégration via le Azure Cloud Shell. Il est donc possible de gagner en efficacité, en automatisation et en extensibilité grâce à la connexion à de nombreux services.

Combien coûte le service Azure DevOps ?

Le coût du cloud Azure dépend de divers facteurs, comme le type de service, la capacité requise, la région ou la taille de l'entreprise. Rappelons qu'une offre gratuite permet d'utiliser certains services pendant 12 mois sans rien payer.

La majeure partie des services Azure sont facturés selon l'usage. Les utilisateurs payent uniquement pour les ressources utilisées. Par ailleurs, il est possible de profiter de réductions en planifiant les instances ou en optant pour les « spot cases » : des machines virtuelles basées sur le surplus de capacité d'Azure et pouvant être terminées à tout moment.

Le service Azure Pipelines inclut une instance CI/CD hébergée par Microsoft, et une instance CI/CD auto-hébergée. Comptez 40 euros supplémentaires pour toute tâche parallèle additionnelle hébergée par Microsoft, et 15 euros en auto-hébergement.

De son côté, Azure Artifacts inclut 2GB de stockage. Passé ce seuil, vous devrez payer 2 euros par GB supplémentaire de 2 à 10 GB, 1 euro par GB de 10 à 100GB, 0,50 euro par GB de 100 à 1000 GB, et 0,25 euro par GB au-delà. Le tarif est donc dégressif.

Les utilisateurs peuvent aussi opter pour une licence en bundle plutôt que de choisir des services individuels. Le forfait basique inclut Azure Pipelines, Azure Boards, Azure repos et Azure Artifacts. Il est gratuit pour un maximum de cinq utilisateurs, puis coûte 6 euros par utilisateur et par mois au-delà. Pour le forfait regroupant Basic + Test, comptez 52 euros par utilisateur par mois.

Enfin, Azure DevOps Server Express est un service gratuit pour une utilisation sur site, afin d'essayer ses fonctionnalités. Pour la version payante, une licence Windows ou Windows Server et la licence Azure DevOps Server sont obligatoires.

L'outil de gestion des coûts Azure Cost Calculator permet d'estimer à l'avance vos dépenses cloud pour les nouveaux déploiements Azure DevOps ou les variantes d'applications existantes.

Quel est l'intérêt de suivre une formation Azure DevOps ?

Azure DevOps apporte de nombreux avantages pour la collaboration, la gestion de version, et l'extensibilité. Il permet aux ingénieurs logiciels et aux équipes d'exploitation IT d'unir leurs forces pour produire des logiciels de haute qualité beaucoup plus vite qu'avec les méthodes de développement traditionnelles.

Alors que le cloud Azure et la méthode DevOps sont de plus en plus adoptés en entreprise, la maîtrise d'Azure DevOps est de plus en plus recherchée. Acquérir cette compétence peut vous ouvrir de nombreuses portes.

Afin d'apprendre à manier Azure DevOps et son écosystème de services, vous pouvez choisir DevUniversity. Nos formations à distance vous permettent de découvrir les outils et pratiques DevOps, pour pouvoir exercer le métier d'ingénieur DevOps ou tout autre rôle lié à cette approche du développement.

Notre organisme est reconnu par l'État, et éligible au Compte Personnel de Formation pour le financement. Découvrez DevUniversity dès maintenant pour devenir un expert d'Azure DevOps !

Vous savez tout sur Azure DevOps. Pour plus d'informations sur le même sujet, découvrez notre dossier complet sur les outils DevOps et notre dossier sur les certifications DevOps.

Omnes education logo

OMNES Education est une institution privée d'enseignement supérieur et de recherche interdisciplinaire, implantée à Beaune, Bordeaux, Chambéry, Lyon, Rennes et Paris. Avec ses campus à Abidjan, Barcelone, Genève, Londres, Monaco, Munich, Montreux et San Francisco, OMNES Education occupe une place unique dans le paysage éducatif français.

15
[Écoles]
200 000
[Alumni]
3 000
[Experts]
40 000
[Étudiants]
20
[Campus en France et à l’étranger]
Management
Ingénieurs
Communication
Sciences politiques et Relations internationales
Création et design