Exemples de topologie complexe pour Azure DevOps Server

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2013

Notes

Azure DevOps Server a été précédemment nommé Visual Studio Team Foundation Server.

Vous pouvez configurer Azure DevOps Server dans l’une des différentes configurations de topologie. En règle générale, plus la topologie est simple, plus vous pouvez conserver 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 de Azure DevOps Server complexes. Une topologie complexe a Azure DevOps Server composants répartis sur de nombreux serveurs. Il est accessible par les clients dans plusieurs domaines situés dans des emplacements physiques géographiquement distants. Le serveur proxy Azure DevOps est installé en plus des composants facultatifs tels que les produits et les SQL Server Reporting Services SharePoint. 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 à domaine unique complexe

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

Exemple de topologie complexe d'un seul domaine

Cet exemple de topologie est similaire à la topologie modérée. Les services Azure DevOps Server 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 et 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, les 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 les domaines enfants de Seattle et Cleveland, chacun avec une approbation transitive bidirectionnelle vers le domaine parent. Le compte de service de 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 du composant de contrôle de code de version de Azure DevOps Server peut prendre beaucoup de temps dans des conditions de bande passante limitées, un serveur proxy Azure DevOps est installé dans chaque domaine enfant pour agir en tant que cache du proxy de fichier de contrôle de version. Toutes les demandes du client passent directement à la couche application, à l’exception des demandes d' extraction de code de contrôle de version. Ces requêtes sont dirigées vers le serveur proxy Azure DevOps, qui met ensuite en cache tous les fichiers sources qu’il télécharge sur le serveur proxy.

Dans cet exemple, la topologie s’intéresse également à la tolérance de panne et aux performances élevées. La tolérance de panne de la couche données est fournie en tirant parti des technologies de clustering SQL Server. Plusieurs applications Web SharePoint sont configurées pour être utilisées par des projets dans des collections dans une batterie de serveurs Web SharePoint. Les bases de données de la collection de projets sont distribuées entre les instances de SQL Server pour améliorer les performances et la facilité de gestion. Les serveurs d’analyse SQL Server Reporting Services et SQL Server s’exécutent sur des serveurs distincts pour améliorer les performances.

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

Topologie complexe de plusieurs domaines

Une topologie de serveur à plusieurs domaines complexe utilise plusieurs serveurs dans deux domaines ou plus. Comme avec la topologie à domaine unique complexe, 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 la charge réseau et ajouté plusieurs serveurs de couche application pour distribuer la charge opérationnelle. L’illustration suivante montre une topologie complexe de 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 sur plusieurs domaines, dont certains sont des domaines enfants d’un niveau de confiance suffisant des domaines parents, mais l’un d’entre eux (IsolatedLab.com) est un domaine complètement distinct. Les comptes de service utilisés par Azure DevOps Server sont des membres de confiance totale 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.