Comprendre les composants de Microsoft Dev Box

Effectué

Conceptuellement, il existe plusieurs composants pour une configuration de service Dev Box de bout en bout. L’ingénieur de plateforme ou un administrateur informatique configure le centre de développement, le projet et la définition de la zone de développement. Une fois le projet créé, les chefs de l'équipe de développement peuvent être délégués à l'administration des projets, ce qui leur permet de créer des pools Dev Box pour leurs équipes de développement.

Diagramme des étapes clés requises pour créer une machine Dev Box.

Centre de développement

Un Centre de développement est la première ressource qui doit être configurée dans Azure lors du démarrage du processus de déploiement du service Dev Box. Il s’agit de l’entité de gestion centrale pour l’infrastructure Dev Box. Il agit comme un plan de contrôle qui organise et applique des paramètres de configuration sur plusieurs projets. Considérez-le comme le siège social de toutes les ressources liées à Dev Box.

Fonctions clés d’un centre de développement

  • Gestion des ressources : héberge des projets, des définitions Dev Box, et des références Azure Compute Gallery.
  • Supervision du réseau : liens vers des connexions réseau prédéfinies utilisées par tous les ordinateurs Dev Box dans les projets associés
  • Normalisation de la configuration : garantit une stratégie et des outils cohérents via des catalogues partagés.

Un centre de développement unique peut prendre en charge plusieurs projets, ce qui permet une gouvernance centralisée avec la personnalisation au niveau du projet.

Projets

Un projet dans Microsoft Dev Box définit généralement un contexte de développement pour une équipe, un service ou une application. Les projets sont liés à un Centre de développement, ce qui leur permet d’hériter de ressources standardisées telles que l’accès réseau, les images et les tâches d’installation. Les projets peuvent se trouver sur différents abonnements Azure au sein du tenant. S’il existe une séparation au sein de l’entreprise en fonction des fonctions, divisions ou facturation, les projets peuvent être créés dans les abonnements appropriés tout en conservant la gestion centralisée du Centre de développement.

La stratégie de projet peut être utilisée pour contrôler les projets qui accèdent aux ressources et aux personnalisations de projet et aux fonctionnalités d’acquisition d’images pour personnaliser davantage les images de base pour des besoins spécifiques du projet.

Chaque projet inclut

  • Pools dev Box : regroupements de machines Dev Box en fonction de la taille, de la région ou de l’objectif.
  • Accès utilisateur : les développeurs affectés au rôle Utilisateur Dev Box peuvent approvisionner des machines Dev Box dans des pools Dev Box
  • Administrateurs de projet : affecté pour configurer des pools, des définitions d’images et un contrôle d’accès.

Les projets appliquent des limites et des autorisations, ce qui permet aux développeurs d’utiliser uniquement les ressources pertinentes pour leur équipe ou leur produit.

Définitions de dev box

Les définitions de Dev Box établissent les spécifications techniques d'une Box de développement.

Ils spécifient :

  • Image du système d’exploitation de base à utiliser pour l’ordinateur Dev Box (par exemple, Windows 11 avec Visual Studio ou une image personnalisée avec des outils internes).
  • La taille de calcul et la configuration du disque (par exemple, 8 processeurs virtuels de 8 cœurs, 32 Go de RAM, 512 Go de stockage).

Les organisations gèrent généralement les images de machine Dev Box dans une galerie de calcul Azure pour la gestion des versions et la réutilisation facile. Cela prend en charge les scénarios tels que :

  • Images personnalisées par service ou projet.
  • Environnements de développement standardisés pour les industries réglementées.
  • Gestion simplifiée des images et restauration.

Connexions réseau

Les connexions réseau sont essentielles pour s’assurer que les machines Dev Box ont accès aux services appropriés et restent sécurisées. Il existe deux types principaux d’options de connexion réseau disponibles dans Microsoft Dev Box :

  • Microsoft-Hosted Network : Microsoft approvisionne et gère une infrastructure sécurisée sur laquelle les machines Dev Box sont déployées. Idéal pour la configuration rapide et les besoins simples. Toutefois, vous contrôlez les machines dev box installées sur cette infrastructure.
  • Connexion réseau Azure : votre organisation gère l’infrastructure réseau sur laquelle les machines Dev Box seront déployées. Il s’agit d’une option lorsque vous souhaitez contrôler et gérer l’infrastructure, ainsi que la connexion à vos autres réseaux virtuels au sein d’Azure ou à votre infrastructure locale.

Avec la connexion réseau Azure, vous pouvez configurer :

  • Jointures natives Entra ID : Pour les applications cloud natives et les services
  • Jointures hybrides Entra ID : Pour accéder aux ressources locales telles que les lecteurs partagés, les systèmes hérités et les API internes.

Catalogues

Un catalogue est une connexion à un référentiel Git (dépôt GitHub public ou privé ou Azure DevOps) qui contient des tâches et des scripts que vous pouvez utiliser pour configurer votre machine Dev Box pendant la dernière phase du processus de création de machine Dev Box. Ils contiennent généralement des modèles IaC, une définition de zone de développement et des fichiers de configuration.

Vous pouvez ajouter un catalogue à un centre de développement pour rendre ces tâches et scripts disponibles pour tous les projets associés au centre de développement. Vous pouvez également ajouter un catalogue au niveau d’un projet. Toutefois, les catalogues au niveau du projet doivent être activés au niveau du Centre de développement avant qu’un catalogue puisse être ajouté à un projet.

Les catalogues permettent aux équipes de :

  • Installez automatiquement des kits SDK, des compilateurs et des outils CLI.
  • Inscrivez la Boîte de développement auprès des services internes.
  • Appliquez les paramètres de conformité ou les diagnostics.

Avantages des catalogues

Fonctionnalité Avantage
Réutilisabilité Teams peut réutiliser le catalogue pour différents projets
Cohérence Images standardisées, tailles de machine virtuelle, outils, réseaux
Gouvernance Les équipes de plateforme/informatique peuvent contrôler ce qui est disponible pour les développeurs
Libre-service Les développeurs peuvent utiliser ces modèles pour faire tourner des environnements à la demande

Régions Azure pour Dev Box

Le service Microsoft Dev Box est disponible dans plusieurs régions Azure dans le monde entier. Dans l’idéal, vous allez déployer les machines Dev Box dans la région la plus proche de l’endroit où se trouvent les développeurs pour réduire toute latence. Le centre de développement et les projets n’ont pas besoin d’être dans la même région que vos machines Dev Box.

Si vous avez plusieurs développeurs situés dans différents emplacements géographiques, l’ingénierie de la plateforme ou l’équipe d’administration informatique peut créer plusieurs pools de boîtes de développement avec différentes régions Azure géographiques proches de vos développeurs. Les développeurs sélectionnent ensuite le pool Dev Box approprié, le plus proche de leur emplacement, lors du déploiement de machines Dev Box.

Pool de dev box

Un pool Dev Box dans le service Microsoft Dev Box est un groupe de machines Dev Box qui partagent les mêmes :

  • Projet
  • Image (Windows + outils de développement)
  • Taille/UGS de la machine virtuelle (CPU, mémoire)
  • Région Azure (pour le réseau hébergé Par Microsoft)
  • Connexion réseau (réseau hébergé Microsoft ou connexion réseau privée)
  • Fonctionnalités de contrôle des coûts (arrêt automatique au planning + mise en veille prolongée lors de la déconnexion)

Ordinateur Dev Box

Il s’agit d’une machine virtuelle préconfigurée créée par un développeur à l’aide du portail des développeurs ou de l’outil CLI. Cette machine virtuelle cloud est associée à un projet particulier et à un pool Dev Box. Ces ordinateurs ont tous les outils, bibliothèques et configuration appropriés requis qui aident le développeur à devenir productif immédiatement. Un développeur peut être autorisé à créer plusieurs machines Dev Box qui peuvent être dédiées à différents projets ou tâches.

Intégration de bout en bout

Maintenant que vous comprenez les différents composants du service, ce diagramme montre comment différents composants du service sont connectés et fonctionnent de bout en bout.

Diagramme des différents composants de Microsoft Dev Box.