Architecture de Team Foundation Server
Pour planifier et gérer votre déploiement de manière optimale, vous devez d'abord comprendre l'architecture sous-jacente de Team Foundation Server (TFS). La compréhension de l'architecture peut vous aider à assurer l'intégrité globale du déploiement et à garantir la disponibilité globale des serveurs et des services dont vos équipes de développement ont besoin.
Déployez TFS de plusieurs façons : sur un serveur, sur plusieurs serveurs ou dans un domaine, un groupe de travail ou sur des domaines. En guise d'alternative, vous pouvez choisir d'utiliser Visual Studio Online, où tous les éléments serveur de votre déploiement sont hébergés pour vous par Microsoft. La compréhension de l'architecture peut vous aider à choisir la topologie la plus à même de répondre aux besoins de votre organisation. Indépendamment du choix de la topologie, si vous comprenez l'architecture sous-jacente à TFS, vous pouvez mieux gérer les spécifications physiques et logiques. Cette rubrique fournit une vue d'ensemble simplifiée des différentes architectures, avec des liens vers des informations sur les exemples de déploiement. Il fournit également des informations techniques relatives aux services, aux bases de données, aux données de configuration et aux ports réseau et protocoles de déploiements locaux.
Pour comprendre l'architecture de TFS et la manière dont elle affecte votre déploiement, vous devez tenir compte des éléments suivants :
Les couches Application, Données et Cliente logiques de Team Foundation, et si vous souhaitez utiliser un ou plusieurs serveurs pour les couches Application et Données, ou si vous souhaitez que les couches Application et Données soient hébergées dans le Cloud pour vous à l'aide de Visual Studio Online
L'emplacement des serveurs physiques ou virtuels qui hébergent ces couches
Team Foundation Build et le nombre et l'emplacement des ordinateurs de build qui s'exécuteront dans votre environnement, y compris le nombre dont vous pouvez avoir besoin pour prendre en charge vos pratiques de développement
Le besoin potentiel du proxy Team Foundation Server
De plus, vous devez considérer les interactions entre ces entités. Par exemple, si vous décidez d'utiliser le service TFS hébergé, vous devez vérifier que vos clients peuvent accéder au service sur le port 443. Si vous choisissez de déployer TFS localement, vous devez savoir quels services web, bases de données, et modèles objet, TFS utilise. Vous devez aussi connaître les ports réseau et les protocoles qui sont utilisés par défaut par TFS et les ports réseau que vous pouvez personnaliser. Enfin, vous devez comprendre les autorisations à définir dans Team Foundation Server, ainsi que les composants et programmes dont dépend votre déploiement.
Outre ses propres services, Team Foundation Server dépend d'autres services pour fonctionner. Pour plus d'informations sur ces services, voir Concepts de Team Foundation Server et Composants de l'entrepôt de données TFS. Pour plus d'informations sur la configuration et les relations de l'installation, voir Guide d'installation de Team Foundation Server.
Avertissement
Vous ne devez modifier manuellement aucune des bases de données TFS, à moins d'y être invité par le Support Microsoft ou de suivre les procédures décrites dans pour la sauvegarde manuelle des bases de données.Toutes les autres modifications peuvent invalider votre contrat de service.
Dans cette rubrique
Visual Studio Online
Modèle d'objet
Services web et bases de données pour les déploiements locaux
Services au niveau de la collection
Services au niveau du serveur
Couche Données
Couche cliente
Informations de configuration
Groupes et autorisations
Ports et protocoles réseau
Paramètres réseau par défaut
Paramètres réseau personnalisables
Visual Studio Online
Microsoft offre la possibilité d'utiliser Visual Studio Online, où tous les aspects côté serveur du déploiement sont hébergés pour vous. Le code source, les éléments de travail, les configurations de build et les fonctionnalités d'équipe sont hébergés dans le cloud. Du point de vue architectural, cela simplifie considérablement votre déploiement, puisque les seuls aspects de l'architecture à considérer sont les composants clients et leur accès Internet.
Lors de l'utilisation du service, vous devez utiliser un navigateur web pour vous connecter au service à l'aide de votre compte Microsoft. Créez des projets d'équipe, ajoutez des membres à votre équipe et travaillez comme vous le feriez avec un déploiement installé localement, sans la charge de gérer les serveurs. La couche application, la couche Données et les serveurs de builds sont hébergés dans le cloud, à l'aide de la plateforme Cloud de Microsoft et de SQL Server Azure.
Pour plus d'informations, consultez Exemples de topologie hébergée.
Modèle d'objet
Avec l'architecture hébergée ou déployée localement, étendez les fonctionnalités de Team Foundation en écrivant une application basée sur son modèle d'objet serveur ou client. Dans tous les types de déploiement, écrivez les applications qui étendent les fonctionnalités clientes. Cependant, si vous souhaitez étendre les fonctions de serveur, votre application doit s'exécuter sur le serveur de couche Application. Pour étendre les fonctionnalités clientes, vous devez exécuter votre application sur le même ordinateur qu'Team Explorer.
Pour plus d'informations, consultez extension de Team Foundation.
Services web et bases de données pour les déploiements locaux
Team Foundation Server inclut un jeu de services web et de bases de données que vous installez et configurez séparément sur le ou les serveurs qui hébergent les couches Application logique, Données et cliente pour Team Foundation. Certaines fonctionnalités, telles que le tableau de tâches et les fonctionnalités d'équipe de Backlog, sont entièrement basées sur le web et accessibles uniquement via Team Web Access, un service web client. D'autres, comme les fonctionnalités de contrôle de version, sont accessibles via Team Web Access ou une application cliente. Les illustrations suivantes fournissent une vue globale des services web, des applications et des bases de données pour les déploiements locaux de TFS.
Services au niveau de la collection
Les services au niveau de la collection fournissent les fonctionnalités pour les opérations au niveau de la collection de projets d'équipe. Vous pouvez créer des applications qui étendent Team Foundation Server en utilisant quelques-uns de ces services. Pour plus d'informations sur la création d'applications pour TFS, voir extension de Team Foundation.
Conseil
Certains services s'affichent dans plusieurs niveaux.Par exemple, les fonctions du service Registre au niveau de la collection et au niveau serveur, et apparaît dans les deux listes.
Services d'infrastructure Team Foundation
Service de registre
Service d'inscription (pour des raisons de compatibilité avec les versions précédentes de Team Foundation Server)
Service de propriété
Service d'événement
Service de sécurité
Service d'emplacement
Service de gestion des identités
Service web de contrôle de version
Service web de suivi des éléments de travail
Service web de Team Foundation Build
Service web Lab Management
Service web d'administration VMM
Service web du contrôleur d'agent de test
Services au niveau du serveur
Les services au niveau du serveur (également connus sous le terme de services au niveau de l'application) fournissent les fonctionnalités requises pour les opérations de Team Foundation Server comme application logicielle. Vous pouvez créer des applications qui étendent Team Foundation Server en utilisant quelques-uns de ces services. Pour plus d'informations, consultez extension de Team Foundation.
Services d'infrastructure Team Foundation
Service de registre
Service d'événement
Service de collection de projets d'équipe
Service de propriété
Service de sécurité
Service d'emplacement
Service de gestion des identités
Service d'administration
Service de gestion de collection
Service de catalogue
Couche Données
La couche Données inclut des données, des procédures stockées et une autre logique associée. Lorsque vous utilisez Visual Studio Online, la couche Données est hébergée pour vous à l'aide de SQL Server Azure. Dans un déploiement local de TFS, la couche de données logique se compose des magasins opérationnels suivants dans SQL Server. Ces magasins peuvent se trouver sur un serveur physique ou être distribués sur plusieurs serveurs. Vous pouvez créer des applications qui étendent Team Foundation Server en utilisant quelques-uns de ces magasins opérationnels. Pour plus d'informations, consultez extension de Team Foundation.
Base de données de configuration (TFS_Configuration)
Entrepôt d'application (TFS_Warehouse)
Base de données Analysis Services (TFS_Analysis)
Bases de données pour les collections de projets d'équipe (TFS_NomCollection)
Le tableau suivant fournit une liste de bases de données utilisées par Team Foundation Server dans les déploiements locaux. Sauf indication contraire, vous pouvez déplacer toutes les bases de données de cette liste à partir du serveur d'origine et de l'instance où elles sont installées, puis les restaurer sur un autre serveur ou une autre instance.
Nom de la base de données et description |
Serveur |
---|---|
TFS_Configuration Cette base de données stocke le catalogue de ressources et les informations de configuration pour Team Foundation Server. Cette base de données contient les magasins opérationnels pour Team Foundation Server. |
Instance de SQL Server utilisée lorsque Team Foundation Server est installé et configuré. |
TFS_Warehouse Cette base de données stocke les données des rapports. |
Instance de SQL Server utilisée lorsque Team Foundation Server est installé et configuré. |
TFS_Analysis Cette base de données multidimensionnelle stocke les données agrégées à partir de collections de projets d'équipe. |
Instance de SQL Server utilisée lorsque Team Foundation Server est installé et configuré. |
Bases de données pour les collections de projets d'équipe Une base de données pour chaque collection de projets d'équipe, contenant les données de tous les projets d'équipe dans cette collection. |
Instance de SQL Server qui est compatible avec Team Foundation Server. |
Couche cliente
La couche Application communique avec cette couche via le modèle d'objet serveur et utilise les mêmes services web qui sont répertoriés pour cette couche. Cela est vrai, que vous déployiez TFS localement ou que vous utilisiez Visual Studio Online. Outre ce modèle, la couche cliente est constituée de composants Visual Studio Industry Partners (VSIP), de l'intégration Microsoft Office, des interfaces en ligne de commande et d'une infrastructure pour les stratégies d'archivage.
Informations de configuration
Le service hébergé dépend des services clients déployés localement et d'une connexion Internet à l'application et aux couches Données hébergées dans le cloud. Un déploiement local de Team Foundation Server dépend de SQL Server, des services IIS (Internet Information Services) et du système d'exploitation Windows. En fonction de la topologie choisie, Team Foundation Server peut dépendre également de SQL Server Reporting Services ou de Produits SharePoint. Par conséquent, les informations de configuration pour Team Foundation Server peuvent être stockées dans chacun des emplacements suivants :
Magasins de données IIS.
Fichiers de configuration pour Team Foundation Server.
Sources de données pour Reporting Services (par exemple, données TFSREPORTS).
Base de données de configuration pour Team Foundation Server. Le Registre Team Foundation Server fait partie de la base de données de configuration.
Registre Windows.
Pour obtenir des exemples de différentes topologies de déploiement locales et connaître où sont stockées ces ressources, voir Exemples de topologie simple, Exemples de topologie modérée, et Exemples de topologie complexe. Si vous procédez à la maintenance du déploiement local de Team Foundation Server, vous devez prendre en compte ces sources de configuration. Pour modifier la configuration d'une quelconque façon, vous pouvez avoir besoin de modifier des informations qui sont stockées à plusieurs endroits. Vous devrez peut-être modifier également les informations de configuration pour la couche Données et la couche cliente. Team Foundation Server comprend une console d'administration et plusieurs utilitaires en ligne de commande pour vous aider à apporter ces modifications. Pour plus d'informations, consultez Configurer et gérer des ressources TFS.
Synchronisation des identités de groupes entre Active Directory et Team Foundation Server
Dans les déploiements en local où Team Foundation Server s'exécute dans un domaine Active Directory, les informations de groupe et d'identité sont synchronisées lorsque l'un des événements suivants se produit :
Le serveur de couche Application de Team Foundation démarre.
Un groupe Active Directory est ajouté à un groupe dans Team Foundation Server.
La période de temps spécifiée dans le travail planifié s'écoule. La valeur par défaut est une heure, et tous les groupes dans Team Foundation Server sont mis à jour toutes les 24 heures.
Les services de gestion des identités (IMS, Identity Management Services) se synchronisent avec Active Directory, et les identités modifiées se propagent du serveur aux clients. Par défaut, tous les groupes sont mis à jour dans les 24 heures, mais vous pouvez personnaliser ce paramètre afin de répondre au mieux aux besoins de votre déploiement. Pour plus d'informations, consultez Considérations sur les approbations et les forêts pour Team Foundation Server. Pour les déploiements locaux qui n'utilisent pas Active Directory, voir Gestion de Team Foundation Server dans un groupe de travail.
Groupes et autorisations
Dans un déploiement local, Team Foundation Server a son propre jeu de groupes par défaut et d'autorisations que vous pouvez définir au niveau du projet, de la collection ou du serveur. Vous pouvez créer des groupes personnalisés et personnaliser des autorisations au niveau des groupes et des individus. Toutefois, des utilisateurs ou des groupes que vous ajoutez à Team Foundation Server ne sont pas automatiquement ajoutés aux deux composants dont les déploiements locaux de Team Foundation Server peuvent dépendre : les Produits SharePoint et Reporting Services. Si votre déploiement utilise ces programmes, vous devez ajouter des utilisateurs et des groupes et leur accorder les autorisations appropriées avant que ces utilisateurs ou ces groupes fonctionnent correctement pour toutes les opérations dans Team Foundation Server. Pour plus d'informations, consultez Gérer des utilisateurs ou des groupes dans TFS.
Pour les déploiements hébergés, l'accès est contrôlé par une combinaison de comptes Microsoft et d'appartenance à une équipe. Pour plus d'informations, connectez-vous au service avec votre compte Microsoft et sélectionnez En savoir plus.
Ports et protocoles réseau
Par défaut, un déploiement local de TFS est configuré pour utiliser les ports réseau et les protocoles spécifiques. L'illustration suivante montre le trafic réseau de Team Foundation Server dans un déploiement simple.
TFS hébergé
Pareillement, le service hébergé de TFS est configuré pour utiliser des ports réseau et protocoles spécifiques. L'illustration suivante montre le trafic réseau dans un déploiement hébergé.
L'illustration suivante montre le trafic réseau dans un déploiement plus complexe, qui inclut les composants de Visual Studio Lab Management.
Les ordinateurs virtuels utilisent le port 80 pour communiquer avec un contrôleur de test concernant le téléchargement d'un agent Lab Management. Si vous rencontrez des problèmes de communication, vérifiez que ce port est activé.
Paramètres réseau par défaut
Par défaut, la communication entre les ordinateurs d'un déploiement de Team Foundation utilise les protocoles et les ports répertoriés dans le tableau suivant. Si un astérisque (*) suit le numéro de port, vous pouvez personnaliser ce port.
Couche et service |
Protocole |
Port |
---|---|---|
Couche Application - Services web |
HTTP/HTTPS |
8080/443* |
Couche Application – Administration Produits SharePoint |
HTTP |
17012* si les produits SharePoint ont été installés avec Team Foundation Server ; sinon, généré de manière aléatoire |
Couche Application – Produits SharePoint et Reporting Services |
HTTP Service Windows Management Instrumentation (WMI) (obligatoire pendant l'installation pour spécifier et vérifier les URL chargées de signaler les services) |
80* Port dynamique |
Couche Données |
MS-SQL TCP |
1433* |
Couche Données (SQL Server Analysis Services) |
MS-AS |
par défaut (2382 ou 2383)* Le port par défaut varie selon la version de SQL Server que vous avez installée et le type d'instance. Utilisez le Gestionnaire de configuration SQL Server pour déterminer les ports utilisés par votre déploiement. |
Team Foundation Server Proxy - client à proxy |
HTTP |
8081* |
Team Foundation Server Proxy - proxy à couche Application |
HTTP/HTTPS |
8080/443* |
Couche cliente - Reporting Services |
HTTP |
80* |
Couche cliente - Services web |
HTTP/HTTPS |
8080/443* |
Contrôleur de build vers couche Application |
HTTP/HTTPS |
8080/443 |
Agent de build vers couche Application |
HTTP/HTTPS |
8080/443 |
Release Management Server |
HTTP ou HTTPS |
1000* |
Release Management Client |
HTTP ou HTTPS |
1000* |
Release Management Agent |
HTTP ou HTTPS |
1000* |
Contrôleur de test vers couche Application |
HTTP/HTTPS |
8080/443* |
Couche Application vers contrôleur de test |
.NET Remoting |
6901* |
Couche Application vers DNS (Domain Name System) |
Mise à jour dynamique de DNS |
53 |
Couche Application – Virtual Machine Manager |
HTTP |
8100 |
Contrôleur de test vers agent de test |
.NET Remoting |
6910* |
Agent de test vers contrôleur de test |
.NET Remoting |
6901* |
Contrôleur de build vers agent de build |
SOAP sur HTTP |
9191 |
Agent lab vers agent lab dans un environnement isolé |
Sockets TCP |
9050 |
Agent de build vers contrôleur de build |
SOAP sur HTTP |
9191 |
Console Administrateur Virtual Machine Manager – Virtual Machine Manager |
HTTP |
8100 |
Virtual Machine Manager – Hôtes Virtual Machine Manager |
Administration à distance Windows (WinRM) pour exécuter des actions Service de transfert intelligent en arrière-plan (BITS) pour transférer des données |
80 pour exécuter des actions 443 pour transférer des données |
Virtual Machine Manager – Serveur de bibliothèque Virtual Machine Manager |
WinRM pour exécuter des actions BITS pour transférer des données |
80 pour exécuter des actions 443 pour transférer des données |
Couche Application – Hôtes Virtual Machine Manager |
Communication DCOM/WMI (Distributed Component Object Model/Windows Management Interface) pour transférer des données |
135 Assigné dynamiquement dans la plage 49152 à 65535 |
Couche cliente – Hôtes Virtual Machine Manager |
Connexion basée sur hôte à l'ordinateur virtuel. |
2179 pour exécuter des connexions basées sur hôte. |
Services hébergés |
HTTPS |
443 |
Paramètres réseau personnalisables
Lorsque le tableau précédent s'affiche, vous pouvez modifier la communication entre les couches Application, Données et couche cliente dans les déploiements locaux en modifiant Team Foundation Server pour utiliser des ports personnalisés. Le tableau suivant décrit les exemples de modification apportées aux ports de HTTP vers HTTPS.
Notes
Pour configurer Team Foundation Server pour utiliser HTTPS et SSL, vous devez non seulement activer les ports pour le trafic réseau HTTPS mais également effectuer de nombreuses autres tâches.Pour plus d'informations, consultez Configurer le protocole HTTPS avec le protocole SSL (Secure Sockets Layer) pour Team Foundation Server.
Service |
Protocole |
Port |
---|---|---|
Services web avec SSL |
HTTPS |
Configuré par l'administrateur |
Administration centrale de SharePoint |
HTTPS |
Configuré par l'administrateur |
Produits SharePoint |
HTTPS |
443 |
Reporting Services |
HTTPS |
443 |
Services web clients |
HTTPS |
Configuré par l'administrateur |
Gestion des versions |
HTTPS |
Configuré par l'administrateur |
Voir aussi
Concepts
Concepts de Team Foundation Server