Architecture de Team Foundation Server

Pour analyser et planifier le déploiement optimal de Visual Studio Team Foundation Server dans le respect de vos exigences opérationnelles, vous devez considérer les aspects suivants :

  • les couches Application logique, Données et cliente pour Team Foundation ;

  • l'emplacement des serveurs physiques qui hébergent ces couches ;

  • Team Foundation Build et les ordinateurs de build qui s'exécuteront dans votre environnement ;

  • Team Foundation Server Proxy

De plus, vous devez considérer les interactions entre ces entités. Vous devez savoir quels services Web, bases de données et modèles d'objet sont utilisés. Vous devez aussi connaître les ports réseau et les protocoles qui sont utilisés par défaut 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, consultez Concepts de Team Foundation Server et Composants de l'entrepôt de données de Team Foundation. Pour plus d'informations sur la configuration et les relations de l'installation, consultez Installation des composants de Team Foundation.

Modèle objet

Vous pouvez étendre les fonctions et fonctionnalités d'Team Foundation en écrivant une application basée sur son modèle de serveur ou d'objet client. Si vous souhaitez étendre les fonctions de serveur, votre application doit s'exécuter sur le serveur de couche Application. Si vous souhaitez étendre les fonctionnalités clientes, votre application doit s'exécuter sur le même ordinateur qu'Team Explorer.

Modèles d'objet pour Team Foundation

Pour plus d'informations, consultez Extending Team Foundation.

Services Web et bases de données

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. Les illustrations suivantes fournissent une vue globale des services Web, des applications et des bases de données.

Diagramme Architecture serveurServeurs supplémentaires utilisés dans TFSDiagramme d'architecture client

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, consultez Extending Team Foundation.

  • 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 Extending 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 de données logique pour Team Foundation se compose des magasins opérationnels suivants dans SQL Server 2008. Cette couche inclut des données, des procédures stockées et autre logique associée. Ces magasins opérationnels peuvent tous être stockés sur un serveur physique ou distribués sur de nombreux 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 Extending 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 des bases de données que Team Foundation Server utilise et leur emplacement de stockage. Sauf indication contraire, vous pouvez déplacer toutes les bases de données de cette liste du serveur d'origine, où elles sont installées et configurées, sur un autre serveur.

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é en premier

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é en premier

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é en premier

Bases de données pour les collections de projets d'équipe Chaque collection de projets d'équipe a sa propre base de données, où les données sont stockées pour tous les projets d'équipe dans la collection.

Instance de SQL Server qui est compatible avec Team Foundation Server

Couche cliente

La couche cliente utilise les mêmes services Web qui sont répertoriés pour la couche Application afin qu'elle communique avec cette couche. Elles communiquent via le modèle objet pour Team Foundation Server. 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

Team Foundation Server dépend de SQL Server, des services IIS (Internet Information Services) et du système d'exploitation Windows. Selon votre déploiement, Team Foundation Server peut dépendre également de SQL Server Reporting Services ou des 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

  • Registre Windows

Si vous procédez à la maintenance du déploiement 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 devez peut-être aussi modifier les informations de configuration pour les couches Données et cliente. Team Foundation Server comprend une console d'administration et plusieurs utilitaires en ligne de commande afin de vous aider à apporter ces modifications. Toutefois, certaines modifications de configuration peuvent requérir que vous fassiez des réglages manuels.

Synchronisation d'identités de groupe entre Active Directory et Team Foundation Server

Dans les déploiements 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) synchronisent avec Active Directory et les identités modifiées sont propagées du serveur aux clients. Les modifications peuvent ne pas être reflétées immédiatement sur Team Foundation Server selon la planification de synchronisation du service de travail. Par défaut, tous les groupes sont mis à jour dans les 24 heures, mais vous pouvez personnaliser ceci pour mieux répondre aux besoins de votre déploiement.

Groupes et autorisations

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 Team Foundation Server peut 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 Ajouter des utilisateurs aux projets d'équipe, Configuration d'utilisateurs, de groupes et d'autorisations, Gestion des autorisations, Rôles dans les produits SharePoint et Rôles SQL Server Reporting Services.

Ports réseau et protocoles

Par défaut, Team Foundation Server 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.

Diagramme simple Ports et communications

L'illustration suivante montre le trafic réseau dans un déploiement plus complexe, qui inclut les composants de Visual Studio Lab Management.

Diagramme complexe Ports et communications - partie 1Diagramme complexe Ports et communications - partie 3Diagramme complexe Ports et communications - partie 2

Paramètres réseau par défaut

Par défaut, la communication entre les ordinateurs dans un déploiement de Team Foundationutilise les protocoles et ports du 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 Windows SharePoint Services

HTTP

17012* (s'il a été installé avec Team Foundation Server) ; sinon, généré de manière aléatoire

Couche Application – Windows SharePoint Services 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

Ordinateur de build - accès distant depuis le serveur de couche Application

SOAP sur HTTP

9191*

Couche Données

MS-SQL TCP

1433*

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*

Couche Application vers contrôleur de build

SOAP sur HTTP

9191*

Couche Application vers agent de build

SOAP sur HTTP

9191*

Contrôleur de build vers couche Application

HTTP/HTTPS

8080/443

Agent de build vers couche Application

HTTP/HTTPS

8080/443

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

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

Ports Dynamiques dans la plage 49152 à 65535.

Couche cliente – Hôtes Virtual Machine Manager

Connexion basée sur hôte à l'ordinateur virtuel. Pour plus d'informations sur les connexions basées sur hôte, consultez Comment : se connecter à un environnement virtuel.

2179 pour exécuter des connexions basées sur hôte.

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 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.

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

Voir aussi

Concepts

Concepts de Team Foundation Server

Autorisations de Team Foundation Server

Autres ressources

Composants de l'entrepôt de données de Team Foundation

Historique des modifications

Date

Historique

Motif

Juin 2010

Informations ajoutées sur les ports réseau par défaut de Lab Management.

Commentaires client.