Share via


Architektur von Team Foundation Server

Zur optimalen Planung und Verwaltung der Bereitstellung sollten Sie sich zunächst mit der zugrunde liegenden Architektur von Team Foundation Server (TFS) vertraut machen. Mit dem Verständnis in Bezug auf die Architektur können Sie die allgemeine Integrität der Bereitstellung beibehalten und die gesamte Verfügbarkeit der Server und Dienste sicherstellen, die für das Entwicklungsteam unerlässlich sind.

Sie können TFS auf verschiedene Arten bereitstellen: auf einem Server, auf verschiedenen Servern oder in einer Domäne oder Arbeitsgruppe oder in mehreren Domänen. Alternativ können Sie die Visual Studio Online-Version verwenden, in der alle Serverelemente der Bereitstellung von Microsoft gehostet werden. Durch das Verständnis der Architektur können Sie besser entscheiden, welche Topologie am ehesten zu Ihren Geschäftsanforderungen passt. Wenn Sie mit der TFS zugrundeliegenden Architektur vertraut sind, können Sie, unabhängig von der Auswahl der Topologie, die physischen und logischen Anforderungen besser verwalten. Dieses Thema enthält eine einfache Übersicht über die verschiedenen Architekturen mit Links zu weiteren Informationen über Beispielsbereitstellungen. Außerdem bietet es technische Informationen über die Dienste, die Datenbanken, die Konfigurationsinformationen und die Netzwerkports und die Protokolle der lokalen Bereitstellungen.

Um die Architektur von TFS zu verstehen und inwieweit sie sich auf die Bereitstellung auswirkt, sollten Sie Folgendes beachten:

  • Die logischen Anwendungs-, Daten- und Clientebenen von Team Foundation und die Tatsache, ob Sie einen oder mehrere Server für die Anwendungs- und Datenebenen verwenden möchten oder ob die Anwendungs- und Datenebenen in der Cloud mithilfe von Visual Studio Online gehostet werden sollen

  • Die Position der physischen oder virtuellen Server, die diese Ebenen hosten

  • Team Foundation Build sowie Anzahl und Standort von Buildcomputern in der Umgebung, einschließlich der Anzahl von Buildcomputern, die Sie zur Unterstützung Ihrer Entwicklungsverfahren benötigen

  • Die potenzielle Anforderung für Team Foundation Server-Proxy

Darüber hinaus müssen Sie die Interaktionen zwischen diesen Entitäten berücksichtigen. Wenn Sie sich beispielsweise für die Verwendung des gehosteten TFS-Diensts entscheiden, müssen Sie sicherstellen, dass die Clients über den Port 443 auf den Dienst zugreifen können. Wenn Sie sich für die lokale Bereitstellung von TFS entscheiden, müssen Sie wissen, welche Webdienste, Datenbanken und Objektmodelle von TFS verwendet werden. Außerdem müssen Sie wissen, welche Netzwerkports und -protokolle standardmäßig von TFS verwendet werden und welche Netzwerkports angepasst werden können. Schließlich müssen Sie mit den Berechtigungen vertraut sein, die Sie in Team Foundation Server und den Komponenten und Programmen festlegen müssen, von denen die Bereitstellung abhängt.

Die ordnungsgemäße Funktion von Team Foundation Server ist nicht nur von den eigenen Diensten, sondern auch von anderen Diensten abhängig. Weitere Informationen zu diesen Diensten finden Sie unter Team Foundation Server-Konzepte und Komponenten des TFS Data Warehouse. Weitere Informationen zu den Anforderungen und Abhängigkeiten für die Installation finden Sie unter Team Foundation Server-Installationshandbuch.

Warnung

Ändern Sie die TFS-Datenbanken nur manuell, wenn Sie vom Microsoft Support dazu aufgefordert werden oder wenn Sie die Prozeduren befolgen, die zum manuellen Speichern der Datenbanken beschrieben werden.Alle anderen Änderungen können dazu führen, dass die Vereinbarung zum Servicelevel ungültig wird.

In diesem Thema

  • Visual Studio Online

  • Das Objektmodell

  • Webdienste und Datenbanken für lokale Bereitstellungen

    • Dienste auf Auflistungsebene

    • Dienste auf Serverebene

    • Datenebene

    • Clientebene

  • Konfigurationsinformationen

  • Gruppen und Berechtigungen

  • Netzwerkanschlüsse und Protokolle

    • Standardnetzwerkeinstellungen

    • Anpassbare Netzwerkeinstellungen

Visual Studio Online

Einfaches Diagramm eines gehosteten TFS-Dienstes.

Microsoft bietet die Möglichkeit, die Visual Studio Online-Version zu verwenden, in der alle serverseitigen Aspekte der Bereitstellung für Sie gehostet werden. Der Quellcode, die Arbeitsaufgaben, die Buildkonfigurationen und die Teamfunktionen werden in der Cloud gehostet. Aus der Architekturperspektive wird dadurch die Bereitstellung erheblich vereinfacht, da die einzigen Aspekte der Architektur, die Sie berücksichtigen müssen, die Clientkomponenten und deren Internetzugriff sind.

Wenn Sie den Dienst in Anspruch nehmen, verwenden Sie einen Webbrowser, um mit dem Microsoft-Konto eine Verbindung mit dem Dienst herzustellen. Sie können Teamprojekte erstellen, dem Team Mitglieder hinzuzufügen und so arbeiten wie bei einer lokal installierten Bereitstellung, aber ohne den Mehraufwand für die Verwaltung der Server. Die Anwendungsebene, die Datenebene und die Buildserver werden mithilfe der Microsoft Cloud-Plattform und SQL Server Azure für Sie in der Cloud gehostet.

Weitere Informationen finden Sie unter Beispiele für gehostete Topologie.

Das Objektmodell

Mit der gehosteten oder der lokal bereitgestellten Architektur können Sie die Funktionen und die Funktionalität von Team Foundation erweitern, indem Sie eine Anwendung schreiben, die auf dem entsprechenden Server oder Clientobjektmodell basiert. Sie können in allen Bereitstellungstypen Anwendungen schreiben, die Clientfunktionen erweitern. Wenn Sie jedoch die Serverfunktionen erweitern möchten, muss die Anwendung auf dem Anwendungsebenenserver ausgeführt werden. Um die Clientfunktionen zu erweitern, müssen Sie die Anwendung auf demselben Computer wie Team Explorer ausführen.

Objektmodelle für Team Foundation

Weitere Informationen finden Sie unter Erweitern von Team Foundation Server.

Webdienste und Datenbanken für lokale Bereitstellungen

Team Foundation Server beinhaltet einen Satz von Webdiensten und Datenbanken, die Sie separat auf den Servern installieren und konfigurieren, die die logischen Anwendungs-, Daten- und Clientebenen für Team Foundation hosten. Einige Funktionen, beispielsweise das Taskboard und teambasierte Funktionen für den Rückstand, sind vollständig webbasiert und können nur über den clientseitigen webbasierten Dienst Team Web Access erreicht werden. Andere Themen, wie die Versionskontrollenfunktionen, sind über Team Web Access oder durch eine Clientanwendung erreichbar. Die folgenden Abbildungen bieten eine allgemeine Übersicht über Webdienste, Anwendungen und Datenbanken für lokale Bereitstellungen von TFS.

Diagramm der ServerarchitekturIn TFS zusätzlich verwendete ServerDiagramm der Clientarchitektur

Dienste auf Auflistungsebene

Dienste auf Auflistungsebene stellen die Funktionalität für Vorgänge auf Ebene der Teamprojektsammlung bereit. Sie können Anwendungen erstellen, durch die Team Foundation Server mithilfe einiger dieser Dienste erweitert wird. Weitere Informationen zum Erstellen von Anwendungen für TFS finden Sie unter Erweitern von Team Foundation Server.

Tipp

Einige Dienste werden in mehr als einer Ebene angezeigt.Der Registrierungsdienst funktioniert beispielsweise sowohl auf der Auflistungsebene als auch auf der Serverebene und wird in beiden Listen angezeigt.

  • Team Foundation Framework-Dienste

    • Registrierungsdienst

    • Registrierungsdienst (um die Kompatibilität mit früheren Versionen von Team Foundation Server zu gewährleisten)

    • Eigenschaftendienst

    • Ereignisdienst

    • Sicherheitsdienst

    • Ortsdienst

    • Identitätsverwaltungsdienst

  • Webdienst zur Versionskontrolle

  • Webdienst zur Arbeitsaufgabenverfolgung

  • Team Foundation Build-Webdienst

  • Lab Management-Webdienst

  • VMM-Verwaltungs-Webdienst

  • Test-Agent-Controller-Webdienst

Dienste auf Serverebene

Dienste auf Serverebene (auch als Dienste auf Anwendungsebene bezeichnet) stellen die Funktionen für Vorgänge für Team Foundation Server als Softwareanwendung bereit. Sie können Anwendungen erstellen, durch die Team Foundation Server mithilfe einiger dieser Dienste erweitert wird. Weitere Informationen finden Sie unter Erweitern von Team Foundation Server.

  • Team Foundation Framework-Dienste

    • Registrierungsdienst

    • Ereignisdienst

    • Teamprojekt-Auflistungsdienst

    • Eigenschaftendienst

    • Sicherheitsdienst

    • Ortsdienst

    • Identitätsverwaltungsdienst

    • Verwaltungsdienst

    • Auflistungsverwaltungsdienst

    • Katalogdienst

Datenebene

Die Datenebene enthält Daten, gespeicherte Prozeduren und weitere zugeordnete Logiken. Wenn Sie Visual Studio Online verwenden, wird die Datenebene mithilfe von SQL Server Azure gehostet. In einer lokalen TFS-Bereitstellung besteht die logische Datenebene aus den folgenden betriebsinternen Speichern innerhalb von SQL Server. Diese Speicher befinden sich möglicherweise auf einem physischen Server oder sind über mehrere Server verteilt. Sie können Anwendungen erstellen, durch die Team Foundation Server mithilfe einiger dieser betriebsinternen Speicher erweitert wird. Weitere Informationen finden Sie unter Erweitern von Team Foundation Server.

  • Konfigurationsdatenbank (TFS_Configuration)

  • Anwendungs-Warehouse (TFS_Warehouse)

  • Analysis Services-Datenbank (TFS_Analysis)

  • Datenbanken für Teamprojektsammlungen (TFS_Auflistungsname)

Die folgende Tabelle enthält eine Liste der Datenbanken, die von Team Foundation Server in lokalen Bereitstellungen verwendet werden. Sofern nicht anders angegeben, können Sie alle Datenbanken in dieser Liste vom ursprünglichen Server und der Instanz, in der sie installiert sind, verschieben und auf einem anderen Server oder einer anderen Instanz wiederherstellen.

Datenbankname und -beschreibung

Server

TFS_Configuration. In dieser Datenbank werden der Ressourcenkatalog und die Konfigurationsinformationen für Team Foundation Server gespeichert. Die Datenbank enthält die betriebsinternen Speicher für Team Foundation Server.

Eine Instanz von SQL Server, die bei einer Installation und Konfiguration von Team Foundation Server verwendet wird.

TFS_Warehouse In dieser Datenbank werden die Daten für Berichte gespeichert.

Eine Instanz von SQL Server, die bei einer Installation und Konfiguration von Team Foundation Server verwendet wird.

TFS_Analysis. In dieser mehrdimensionalen Datenbank werden die aggregierten Daten aus Teamprojektsammlungen gespeichert.

Eine Instanz von SQL Server, die bei einer Installation und Konfiguration von Team Foundation Server verwendet wird.

Datenbanken für Teamprojektsammlungen Jede Teamprojektsammlung verfügt über eine eigene Datenbank, in der Daten aus allen Teamprojekten in der Auflistung gespeichert sind.

Instanz von SQL Server, die mit Team Foundation Server kompatibel ist

Clientebene

Die Clientebene kommuniziert mit der Anwendungsebene über das Serverobjektmodell und verwendet die gleichen Webdienste, die in der Anwendungsebene aufgeführt sind. Dies gilt unabhängig davon, ob Sie TFS lokal bereitstellen oder Visual Studio Online verwenden. Neben diesem Modell besteht die Clientebene aus VSIP-Komponenten (Visual Studio Industry Partners), Microsoft Office-Integration, Befehlszeilenschnittstellen und einem Framework für Eincheckrichtlinien.

Konfigurationsinformationen

Der gehostete Dienst ist von den lokal bereitgestellten Clientdiensten abhängig und von einer Internetverbindung mit den Anwendungs- und Datenebenen, die in der Cloud gehostet werden. Die lokale Bereitstellung von Team Foundation Server ist abhängig von SQL Server, Internetinformationsdiensten (IIS) und dem Betriebssystem Windows. Je nach Ihrer ausgewählten Topologie kann Team Foundation Server zudem von SQL Server Reporting Services oder SharePoint-Produkte abhängen. Daher können Konfigurationsinformationen für Team Foundation Server in jedem der folgenden Speicherorte gespeichert werden:

  • IIS-Datenspeicher.

  • Konfigurationsdateien für Team Foundation Server-

  • Datenquellen für Reporting Services (z. B. TFSREPORTS-Daten).

  • Konfigurationsdatenbank für Team Foundation Server. Die Team Foundation Server-Registrierung ist Bestandteil der Konfigurationsdatenbank.

  • Windows-Registrierung.

Beispiele für verschiedene lokale Bereitstellungstopologien und die Speicherorte dieser Ressourcen finden Sie unter Beispiele für die einfache Topologie, Beispiele für Topologie mit mittlerer Komplexität und Beispiele für die komplexe Topologie. Bei der Verwaltung einer lokalen Team Foundation Server-Bereitstellung müssen Sie diese Konfigurationsquellen berücksichtigen. Zur Änderung der Konfiguration müssen Sie ggf. Informationen in verschiedenen Speicherorten ändern. Möglicherweise müssen Sie auch Konfigurationsinformationen für die Daten- und Clientebene ändern. Team Foundation Server umfasst eine Verwaltungskonsole und verschiedene Befehlszeilenhilfsprogramme, um Ihnen bei diesen Änderungen helfen. Weitere Informationen finden Sie unter Konfigurieren und Verwalten von TFS-Ressourcen.

Synchronisieren von Gruppenidentitäten zwischen Active Directory und Team Foundation Server

In lokalen Bereitstellungen, bei denen Team Foundation Server in einer Active Directory-Domäne ausgeführt wird, werden Gruppen- und Identitätsinformationen synchronisiert, wenn eines der folgenden Ereignisse eintritt:

  • Der Anwendungsebenenserver für Team Foundation wird gestartet.

  • Einer Gruppe in Team Foundation Server wird eine Active Directory-Gruppe hinzugefügt.

  • Der im geplanten Auftrag angegebene Zeitraum läuft ab. Die Standardeinstellung ist eine Stunde. Die Gruppen in Team Foundation Server werden alle 24 Stunden aktualisiert.

Identitätsverwaltungsdienste (Identity Management Services, IMS) werden mit Active Directory synchronisiert, und geänderte Identitäten werden vom Server an die Clients weitergegeben. Standardmäßig werden alle Gruppen innerhalb von 24 Stunden aktualisiert. Sie können diesen Wert jedoch entsprechend den Anforderungen der Bereitstellung anpassen. Weitere Informationen finden Sie unter Aspekte zu Vertrauensstellungen und Gesamtstrukturen für Team Foundation Server. Informationen zu lokalen Bereitstellungen, bei denen Active Directory nicht verwendet wird, finden Sie unter Verwalten von Team Foundation Server in einer Arbeitsgruppe.

Gruppen und Berechtigungen

In einer lokalen Bereitstellung verfügt Team Foundation Server über einen eigenen Satz von Standardgruppen und Berechtigungen, die Sie auf Projekt-, Auflistungs- oder Serverebene festlegen können. Sie können benutzerdefinierte Gruppen erstellen und Berechtigungen auf Gruppen- und Benutzerebene anpassen. Benutzer oder Gruppen, die Sie zu Team Foundation Server hinzufügen, werden jedoch nicht automatisch zwei Komponenten hinzugefügt, von denen lokale Bereitstellungen von Team Foundation Server abhängen kann: SharePoint-Produkte und Reporting Services. Wenn diese Programme in der Bereitstellung verwendet werden, müssen Sie Benutzer und Gruppen zu diesen Programmen hinzufügen und diesen die entsprechenden Berechtigungen erteilen, damit die Benutzer und Gruppen in sämtlichen Team Foundation Server-Vorgängen ordnungsgemäß verwendet werden können. Weitere Informationen finden Sie unter Verwalten von Benutzern und Gruppen in TFS.

Für gehostete Bereitstellungen wird der Zugriff durch eine Kombination aus Microsoft-Konten und Teammitgliedschaft gesteuert. Wenn Sie weitere Informationen benötigen, melden Sie sich mit Ihrem Microsoft-Konto beim Dienst an, und wählen Sie "Lernen".

Netzwerkanschlüsse und Protokolle

Standardmäßig ist eine lokale Bereitstellung von TFS für die Verwendung von bestimmten Netzwerkports und Netzwerkprotokollen konfiguriert. In der folgenden Abbildung ist der Netzwerkdatenverkehr für Team Foundation Server in einer einfachen Bereitstellung dargestellt.

Einfaches Anschluss- und Kommunikationsdiagramm

Gehostetes TFS

Entsprechend wird der gehostete Dienst für TFS konfiguriert, um bestimmte Netzwerkports und -protokolle zu verwenden. In der folgenden Abbildung ist der Netzwerkdatenverkehr in einer gehosteten Bereitstellung dargestellt.

Einfaches Diagramm eines gehosteten TFS-Dienstes.

In der folgenden Abbildung ist der Netzwerkdatenverkehr für eine komplexere Bereitstellung dargestellt, die die Komponenten für Visual Studio Lab Management einschließt.

Komplexes Anschluss- und Kommunikationsdiagramm (Teil 1)Komplexes Anschluss- und Kommunikationsdiagramm (Teil 3)Komplexes Anschluss- und Kommunikationsdiagramm (Teil 2)

Virtuelle Computer verwenden Port 80 für die Kommunikation mit Testcontrollern zum Download eines Lab Management-Agents. Überprüfen Sie, ob dieser Port aktiviert ist, sollten Kommunikationsprobleme auftreten.

Standardnetzwerkeinstellungen

Standardmäßig werden bei der Kommunikation zwischen den Computern in einer Bereitstellung von Team Foundation die in der folgenden Tabelle aufgeführten Protokolle und Ports verwendet. Wenn der Portnummer ein Sternchen (*) folgt, können Sie diesen Port anpassen.

Ebene und Dienst

Protokoll

Port

Anwendungsebene – Webdienste

HTTP/HTTPS

8080/443*

Anwendungsebene – SharePoint-Produkte-Verwaltung

HTTP 

17012* falls SharePoint-Produkte mit Team Foundation Server installiert wurden); anderenfalls wird nach dem Zufallsprinzip generiert

Anwendungsebene – SharePoint-Produkte und Reporting Services

HTTP 

Windows-Verwaltungsinstrumentation-Dienst (Windows Management Instrumentation, WMI) (erforderlich bei der Installation, um die URLs für Reporting Services anzugeben und zu überprüfen)

80*

Dynamischer Port

Datenebene

MS-SQL TCP

1433*

Datenebene (SQL Server Analysis Services)

MS-AS

Standard (2382 oder 2383)*

Der Standardport variiert je nach der installierten SQL Server-Version und dem Instanztyp. Verwenden Sie den SQL Server-Konfigurations-Manager, um die von der Bereitstellung verwendeten Ports zu ermitteln.

Team Foundation Server-Proxy ‑Client zu Proxy

HTTP 

8081*

Team Foundation Server-Proxy ‑Proxy zu Anwendungsebene

HTTP/HTTPS

8080/443*

Clientebene – Reporting Services

HTTP 

80*

Clientebene – Webdienste

HTTP/HTTPS

8080/443*

Buildcontroller – Anwendungsebene

HTTP/HTTPS

8080/443

Build-Agent – Anwendungsebene

HTTP/HTTPS

8080/443

Release Management Server

HTTP oder HTTPS

1000*

Release Management Client

HTTP oder HTTPS

1000*

Release Management Agent

HTTP oder HTTPS

1000*

Testcontroller – Anwendungsebene

HTTP/HTTPS

8080/443*

Anwendungsebene – Testcontroller

.NET-Remoting

6901*

Anwendungsebene – Domain Name System (DNS)

Dynamisches Update für DNS

53

Anwendungsebene – Virtual Machine Manager

HTTP 

8100

Testcontroller – Test-Agent

.NET-Remoting

6910*

Test-Agent – Testcontroller

.NET-Remoting

6901*

Buildcontroller – Build-Agent

SOAP über HTTP

9191

Labor-Agent – Labor-Agent in einer isolierten Umgebung

TCP-Sockets

9050

Build-Agent – Buildcontroller

SOAP über HTTP

9191

Virtual Machine Manager-Administratorkonsole – Virtual Machine Manager

HTTP 

8100

Virtual Machine Manager – Virtual Machine Manager-Hosts

Windows-Remoteverwaltung (Windows Remote Management, WinRM) zum Ausführen von Aktionen

Intelligenter Hintergrundübertragungsdienst (Background Intelligent Transfer Service, BITS) zum Übertragen von Daten

80 zum Ausführen von Aktionen

443 für Datenübertragung

Virtual Machine Manager – Virtual Machine Manager-Bibliotheksserver

WinRM zum Auszuführen von Aktionen

BITS für Datenübertragung

80 zum Ausführen von Aktionen

443 für Datenübertragung

Anwendungsebene – Virtual Machine Manager-Hosts

Kommunikation Distributed Component Object Model (DCOM)/Windows-Verwaltungsschnittstelle für Datenübertragung

135

Dynamisch im Bereich von 49152 bis 65535 zugewiesen

Clientebene – Virtual Machine Manager-Hosts

Hostbasierte Verbindung zum virtuellen Computer.

2179 zum Ausführen von hostbasierten Verbindungen

Gehostete Dienste

HTTPS

443

Anpassbare Netzwerkeinstellungen

Wie in der vorherige Tabelle zu sehen ist, können Sie die Kommunikation zwischen der Anwendungs-, Daten- und Clientebene bei lokalen Bereitstellungen ändern, indem Sie in Team Foundation Server benutzerdefinierte Ports festlegen. Die folgende Tabelle dient als Beispiel für Portänderungen von HTTP in HTTPS.

Hinweis

Um Team Foundation Server für die Verwendung von HTTPS und Secure Sockets Layer zu konfigurieren, müssen Sie nicht nur Ports für HTTPS-Netzwerkverkehr aktivieren, sondern auch noch eine Reihe anderer Aufgaben ausführen.Weitere Informationen finden Sie unter Einrichten von HTTPS mit SSL (Secure Sockets Layer) für Team Foundation Server.

Dienst

Protokoll

Port

Webdienste mit SSL

HTTPS

Wird vom Administrator konfiguriert

SharePoint-Zentraladministration

HTTPS

Wird vom Administrator konfiguriert

SharePoint-Produkte

HTTPS

443

Reporting Services

HTTPS

443

Client-Webdienste

HTTPS

Wird vom Administrator konfiguriert

Versionsverwaltung

HTTPS

Wird vom Administrator konfiguriert

Siehe auch

Konzepte

Team Foundation Server-Konzepte

Berechtigungsreferenz für Team Foundation Server

Komponenten des TFS Data Warehouse