Exemples de topologie complexe pour Azure DevOps Server

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Vous pouvez configurer Azure DevOps Server dans l’une des configurations de topologie. En règle générale, plus la topologie est simple, plus vous pouvez facilement gérer un déploiement Azure DevOps Server. Vous devez déployer la topologie la plus simple qui répond aux besoins de votre entreprise.

Cet article décrit deux topologies Azure DevOps Server complexes. Une topologie complexe a Azure DevOps Server composants distribués sur de nombreux serveurs. Il est accessible par les clients dans plusieurs domaines dans des emplacements physiques géographiquement distants. Le serveur proxy Azure DevOps est installé en plus des composants facultatifs tels que les produits SharePoint et SQL Server Reporting Services. Il existe plusieurs bases de code différentes, et ces bases de code ont chacune leur propre collection de projets pour les projets qui les utilisent. Les bases de données pour les collections de projets d’équipe sont stockées sur plusieurs serveurs différents qui exécutent SQL Server.

Topologie complexe à domaine unique

Une topologie de serveur complexe utilise plusieurs serveurs dans des clusters ou d’autres configurations de basculement pour héberger les données Azure DevOps logiques et les composants de la couche Application. Le diagramme suivant illustre une topologie complexe à domaine unique :

Exemple de topologie complexe d'un seul domaine

Cet exemple de topologie est similaire à la topologie modérée. Azure DevOps Server services sont déployés sur un serveur et les bases de données Azure DevOps Server sont installées sur un serveur distinct, avec Team Foundation Build, les agents de test et les contrôleurs d’agent de test de l’équipe déployés sur des serveurs supplémentaires. En outre, des composants de basculement ont été ajoutés. Les bases de données Azure DevOps ont été installées sur un cluster SQL Server.

L’exemple de diagramme montre des domaines enfants à Seattle et Cleveland, chacun avec une approbation transitive bidirectionnelle au domaine parent. Le compte de service pour Azure DevOps Server est approuvé par les deux domaines. Chaque domaine enfant géographiquement distant utilise une connexion à bande passante limitée. Étant donné que l’obtention d’une inscription à partir du composant de contrôle de code de version de Azure DevOps Server peut prendre beaucoup de temps dans des conditions de bande passante aussi limitées, un serveur proxy Azure DevOps est installé dans chaque domaine enfant pour faire office de cache proxy de fichier de contrôle de version. Toutes les demandes clientes vont directement à la couche Application, à l’exception des demandes d’obtention de code de contrôle de version. Ces demandes sont dirigées par le biais du serveur proxy Azure DevOps, qui met ensuite en cache tous les fichiers sources qu’il télécharge sur le serveur proxy.

La topologie de cet exemple concerne également la tolérance de panne et les performances élevées. La tolérance de panne de la couche Données est fournie en tirant parti des technologies SQL Server clustering. Plusieurs applications Web SharePoint sont configurées pour être utilisées par des projets au sein de collections dans une batterie de serveurs Web SharePoint. Les bases de données de collection de projets sont distribuées entre SQL Server instances pour améliorer les performances et faciliter la gestion individuelle. SQL Server Reporting Services et SQL Server Analysis Server s’exécutent sur des serveurs distincts pour améliorer les performances.

Cet exemple est conçu pour une grande équipe de développement de produits avec jusqu’à 2 000 utilisateurs.

Topologie complexe de plusieurs domaines

Une topologie de serveur multi-domaines complexe utilise plusieurs serveurs dans deux domaines ou plus. Comme avec la topologie complexe à domaine unique, le déploiement utilise des clusters ou d’autres configurations de basculement pour héberger les composants de la couche Données pour Azure DevOps. Les administrateurs de ce déploiement ont configuré l’équilibrage de charge réseau et ajouté plusieurs serveurs de la couche Application pour distribuer la charge opérationnelle. L’illustration suivante illustre une topologie complexe à plusieurs domaines :

Topologie complexe de plusieurs domaines

Suite de la topologie complexe de plusieurs domaines

Comme dans l’exemple ci-dessus, cette topologie est configurée pour la tolérance de panne et les performances élevées. En outre, cette topologie est distribuée entre plusieurs domaines, dont certains sont des domaines enfants entièrement approuvés des domaines parents, mais dont l’un (IsolatedLab.com) est un domaine complètement distinct. Les comptes de service utilisés par Azure DevOps Server sont des membres entièrement approuvés de tous les domaines, et les comptes d’utilisateur ont été configurés dans le domaine parent et dans le domaine distinct si nécessaire pour les utilisateurs qui doivent travailler dans les deux domaines. Les pare-feu ont été configurés pour autoriser le trafic sur les ports requis par Azure DevOps Server.