Share via


Architettura di Team Foundation Server

Per pianificare e gestire al meglio la distribuzione, è necessario innanzitutto comprendere l'architettura sottostante di Team Foundation Server (TFS).Comprendere l'architettura consente di gestire l'integrità complessiva della distribuzione e di garantire la disponibilità generale di server e servizi necessari ai team di sviluppo.

È possibile implementare il TFS in diversi modi: in un server; in molti server; in un dominio o gruppo di lavoro o nei domini.In alternativa è possibile scegliere di utilizzare il programma di anteprima di Team Foundation Service, dove tutti gli elementi server della distribuzione sono ospitati da Microsoft.Comprendere l'architettura può aiutare a decidere la topologia che con più probabilità è in grado di soddisfare le proprie esigenze.Indipendentemente dalla scelta della topologia, se si comprende l'architettura sottostante TFS, è possibile gestire meglio i requisiti fisici e logici.In questo argomento vengono forniti semplici cenni preliminari su varie architetture, con collegamenti a ulteriori informazioni sulle distribuzioni di esempio.Fornisce inoltre informazioni tecniche su servizi, database, informazioni di configurazione e protocolli e porte di rete delle distribuzioni locali.

Per comprendere l'architettura di TFS e il modo in cui influisce sulla distribuzione, è necessario considerare quanto segue:

  • i livelli client, dati e applicazione logici di Team Foundation e se si desidera utilizzare uno o più server per i livelli applicazione e dati oppure se si desidera che i livelli applicazione e dati vengano ospitati nel cloud utilizzando l'anteprima di Team Foundation Service

  • Posizione dei server fisici o virtuali che ospitano tali livelli

  • Team Foundation Build, il numero e la posizione dei computer di compilazione che verranno eseguiti nell'ambiente, incluso il numero di cui si potrebbe necessitare per supportare le procedure di sviluppo

  • La necessità potenziale del proxy di Team Foundation Server

È inoltre necessario considerare le interazioni tra queste entità.Ad esempio, se si sceglie di utilizzare il servizio TFS ospitato, è necessario assicurarsi che i client siano in grado di accedere al servizio sulla porta 443.Se si decide di implementare il TFS localmente, è necessario conoscere quali servizi Web, database e modelli a oggetti vengono utilizzati da TFS.È inoltre necessario conoscere le porte e i protocolli TFS utilizzati per impostazioni predefinita e quali di queste porte è possibile personalizzare.Infine, è opportuno conoscere le autorizzazioni che devono essere impostate in Team Foundation Server e i componenti e i programmi dai quali dipende la distribuzione.

Oltre che dai propri servizi, il funzionamento di Team Foundation Server dipende anche da altri servizi.Per ulteriori informazioni su questi servizi, vedere Concetti su Team Foundation Server e Componenti del data warehouse per Team Foundation.Per ulteriori informazioni sulle dipendenze e i requisiti di installazione, vedere Installazione di Team Foundation Server e ALM di Visual Studio.

In questo argomento

  • Programma di anteprima di Team Foundation Service

  • Modello a oggetti

  • Servizi Web e database per distribuzioni locali

    • Servizi a livello di raccolta

    • Servizi a livello di server

    • Livello dati

    • Livello client

  • Informazioni di configurazione

  • Gruppi e autorizzazioni

  • Porte e protocolli di rete

    • Impostazioni di rete predefinite

    • Impostazioni di rete personalizzabili

Programma di anteprima di Team Foundation Service

Diagramma semplice del servizio TFS ospitato

Microsoft offre la possibilità di utilizzare Team Foundation Service Preview, in cui tutti gli aspetti del lato server di distribuzione sono inclusi automaticamente.Il codice sorgente, gli elementi di lavoro, le configurazioni di compilazione e le funzionalità del team sono tutti ospitati nel cloud.Da un punto di vista architetturale, si semplifica notevolmente la distribuzione, poiché gli unici aspetti dell'architettura che è necessario considerare sono i componenti e il relativo accesso Internet.

Quando si utilizza questo servizio, si utilizza un Web browser per connettersi al servizio utilizzando l'account Microsoft.È possibile creare progetti team, aggiungere membri al team ed eseguire operazione come con una distribuzione installata localmente, senza che sia necessaria l'amministrazione dei server.Il livello applicazione, livello dati e il server di compilazione vengono inseriti automaticamente nel cloud, utilizzando la piattaforma cloud Microsoft e SQL Server Azure.

Per ulteriori informazioni, vedere Esempi di topologia ospitata.

Modello a oggetti

Sia con l'architettura ospitata che con l'architettura distribuita localmente è possibile estendere le funzionalità di Team Foundation scrivendo un'applicazione basata sul modello a oggetti del server o del client.In tutti i tipi di distribuzione, è possibile scrivere applicazioni che estendono le funzionalità client.Tuttavia, se si desidera estendere le funzionalità server, l'applicazione deve essere in esecuzione nel server a livello applicazione.Per estendere le funzionalità client, l'applicazione deve essere eseguita nello stesso computer in cui è installato Team Explorer.

Modelli a oggetti per Team Foundation

Per ulteriori informazioni, vedere Estensione di Team Foundation.

Servizi Web e database per distribuzioni locali

Team Foundation Server include un set di servizi Web e database che si installano e configurano separatamente in uno o più server che ospitano i livelli applicazione, dati e client logici per Team Foundation.Alcune funzionalità, ad esempio l'area attività, e le funzionalità basate su team backlog, sono interamente basate sul Web e accessibili unicamente tramite Team Web Access, un servizio lato client basato sul Web.Altre, ad esempio le funzionalità di controllo della versione, sono accessibili tramite Team Web Access o tramite un'applicazione client.Nelle seguenti illustrazioni è fornita una panoramica di alto livello dei servizi Web, delle applicazioni e dei database per le distribuzioni locali di TFS.

Diagramma architettura serverServer aggiuntivi utilizzati in TFSDiagramma architettura client

ms252473.collapse_all(it-it,VS.110).gifServizi a livello di raccolta

I servizi a livello di raccolta forniscono le funzionalità per le operazioni al livello della raccolta di progetti team.È possibile creare applicazioni che estendono Team Foundation Server tramite alcuni di questi servizi.Per ulteriori informazioni sulla creazione di applicazioni per TFS, vedere Estensione di Team Foundation.

SuggerimentoSuggerimento

Alcuni servizi vengono visualizzati in più di un livello.Ad esempio, il servizio Registro di sistema opera a livello di raccolta e a livello di server e viene visualizzato in entrambi gli elenchi.

  • Servizi Framework di Team Foundation

    • Servizio Registro di sistema

    • Servizio di registrazione (per la compatibilità con le versioni precedenti di Team Foundation Server).

    • Servizio proprietà

    • Servizio eventi

    • Servizio di sicurezza

    • Servizio di percorso

    • Servizio di gestione identità

  • Servizio Web del controllo della versione

  • Servizio Web della gestione elementi di lavoro

  • Servizio Web di Team Foundation Build

  • Servizio Web Lab Management

  • Servizio Web di amministrazione VMM

  • Servizio Web controller dell'agente di test

ms252473.collapse_all(it-it,VS.110).gifServizi a livello di server

I servizi a livello di server (denominati anche servizi a livello applicazione) rendono disponibili le funzionalità necessarie affinché Team Foundation Server funzioni come applicazione software.È possibile creare applicazioni che estendono Team Foundation Server tramite alcuni di questi servizi.Per ulteriori informazioni, vedere Estensione di Team Foundation.

  • Servizi Framework di Team Foundation

    • Servizio Registro di sistema

    • Servizio eventi

    • Servizio della raccolta di progetti team

    • Servizio proprietà

    • Servizio di sicurezza

    • Servizio di percorso

    • Servizio di gestione identità

    • Servizio amministrazione

    • Servizio di gestione raccolta

    • Servizio catalogo

ms252473.collapse_all(it-it,VS.110).gifLivello dati

Il livello dati include dati, stored procedure e altra logica associata.Quando si utilizza l'anteprima di Team Foundation Service, il livello dati viene automaticamente ospitato tramite SQL Server Azure.In una distribuzione locale di TFS, il livello dati logico è costituito dagli archivi operativi indicati di seguito all'interno di SQL Server. Questi archivi possono trovarsi in un server fisico o distribuiti in più server.È possibile creare applicazioni che estendono Team Foundation Server tramite alcuni di questi archivi operativi.Per ulteriori informazioni, vedere Estensione di Team Foundation.

  • Database di configurazione (TFS_Configuration)

  • Warehouse applicazioni (TFS_Warehouse)

  • Database di Analysis Services (TFS_Analysis)

  • Database per raccolte di progetti team (TFS_CollectionName)

Nella tabella seguente viene fornito un elenco dei database utilizzati da Team Foundation Server nelle distribuzioni locali. A meno che non sia specificato diversamente, è possibile spostare tutti i database in questo elenco dall'istanza e dal server originale in cui sono installati e ripristinarli in un altro server o un'altra istanza.

Nome e descrizione del database

Server

TFS_Configuration In questo database vengono archiviati il catalogo delle risorse e le informazioni di configurazione per Team Foundation Server.Questo database contiene gli archivi operativi per Team Foundation Server.

Istanza di SQL Server utilizzata quando Team Foundation Server viene installato e configurato.

TFS_Warehouse In questo database vengono archiviati i dati per i rapporti.

Istanza di SQL Server utilizzata quando Team Foundation Server viene installato e configurato.

TFS_Analysis In questo database multidimensionale vengono archiviati i dati aggregati dalle raccolte di progetti team.

Istanza di SQL Server utilizzata quando Team Foundation Server viene installato e configurato.

Database per le raccolte di progetti team Un database per ogni raccolta di progetti team contenente i dati per tutti i progetti team in tale raccolta.

Istanza di SQL Server compatibile con Team Foundation Server.

ms252473.collapse_all(it-it,VS.110).gifLivello client

Il livello client comunica con il livello applicazione attraverso il modello a oggetti del server e utilizza gli stessi servizi Web elencati per il livello applicazione.Ciò si verifica se si distribuisce TFS localmente oppure se si utilizza l'anteprima di Team Foundation Service.Oltre a tale modello, il livello client è costituito da componenti di Visual Studio Industry Partners (VSIP), integrazione con Microsoft Office, interfacce della riga di comando e un framework per criteri di archiviazione.

Informazioni di configurazione

Il servizio ospitato dipende dai servizi client, distribuiti in locale, e da una connessione Internet ai livelli applicazione e dati ospitati nel cloud.Una distribuzione locale di Team Foundation Server dipende da SQL Server, Internet Information Services (IIS) e dal sistema operativo Windows.In base alla topologia scelta, Team Foundation Server potrebbe inoltre dipendere da SQL Server Reporting Services o Prodotti SharePoint.Le informazioni di configurazione per Team Foundation Server possono pertanto essere archiviate in qualsiasi delle posizioni riportate di seguito.

  • Archivi dati di IIS.

  • File di configurazione per Team Foundation Server.

  • Origini dati per Reporting Services (ad esempio, dati di TFSREPORTS).

  • Database di configurazione per Team Foundation Server.Il Registro di sistema di Team Foundation Server fa parte del database di configurazione.

  • Registro di sistema di Windows.

Per esempi relativi a differenti topologie di distribuzione locale e relativi alla posizione in cui queste risorse vengono archiviate, vedere Esempi di topologia semplice, Esempi di topologia moderata e Esempi di topologia complessa.Quando si gestisce una distribuzione locale di Team Foundation Server, è necessario prendere in considerazione queste origini di configurazione.Per modificare la configurazione in qualsiasi modalità, potrebbe essere necessario modificare le informazioni archiviate in più posizioni.Potrebbe inoltre essere necessario modificare le informazioni sulla configurazione per i livelli dati e client. Team Foundation Server include una console di amministrazione e diverse utilità della riga di comando per consentire di apportare queste modifiche.Per ulteriori informazioni, vedere Console di amministrazione di Team Foundation e Riferimenti tecnici per Team Foundation.

ms252473.collapse_all(it-it,VS.110).gifSincronizzazione delle identità di gruppo tra Active Directory e Team Foundation Server

Nelle distribuzioni locali in cui si esegue Team Foundation Server in un dominio Active Directory, il gruppo e le informazioni di identità sono sincronizzate quando si verifica qualsiasi evento seguente:

  • Viene avviato il server di livello applicazione per Team Foundation.

  • Viene aggiunto un gruppo di Active Directory a un gruppo in Team Foundation Server.

  • Trascorre il periodo di tempo specificato nel processo pianificato.L'impostazione predefinita è un'ora e tutti i gruppi in Team Foundation Server vengono aggiornati ogni 24 ore.

I servizi di gestione di identità vengono sincronizzati con Active Directory e le identità modificate vengono propagate dal server ai client. Per impostazione predefinita, tutti i gruppi vengono aggiornati entro 24 ore, ma è possibile personalizzarlo in modo che si adatti alle esigenze della distribuzione.Per ulteriori informazioni, vedere Considerazioni su trust e insiemi di strutture per Team Foundation Server.Per distribuzioni locali che non utilizzano Active Directory, vedere Gestione di Team Foundation Server in un gruppo di lavoro.

Gruppi e autorizzazioni

In una distribuzione locale Team Foundation Server dispone del proprio set di gruppi e autorizzazioni predefiniti che è possibile impostare a livello di progetto, di raccolta o di server.È possibile creare gruppi personalizzati e personalizzare autorizzazioni a livelli singoli e di gruppo.Gli utenti o i gruppi aggiunti a Team Foundation Server, tuttavia, non vengono aggiunti automaticamente ai due componenti su cui si possono basare le distribuzioni locali di Team Foundation Server: Prodotti SharePoint e Reporting Services.Se nella distribuzione vengono utilizzati questi programmi, affinché tali utenti o gruppi siano in grado di funzionare correttamente in tutte le operazioni in Team Foundation Server è quindi necessario aggiungere gli utenti o i gruppi ai programmi e concedere loro le autorizzazioni appropriate.Per ulteriori informazioni, vedere Aggiungere utenti ai progetti team, Attività iniziali di un team, Configurazione di utenti, gruppi e autorizzazioni, Gestione delle autorizzazioni e Gestire il profilo personale e visualizzare le autorizzazioni personali.

Per le distribuzioni ospitate, l'accesso viene controllato mediante una combinazione di account Microsoft e appartenenza ai team.Per ulteriori informazioni, accedere al servizio con l'account Microsoft e scegliere Learn.

Porte e protocolli di rete

Per impostazione predefinita, una distribuzione locale di TFS è configurata per l'uso di porte e protocolli di rete specifici.Nella figura seguente viene mostrato il traffico di rete di Team Foundation Server in una semplice distribuzione.

Diagramma di porte e comunicazioni semplice

Analogamente, il servizio ospitato per TFS è configurato l'uso di porte e protocolli di rete specifici.Nella figura seguente viene mostrato il traffico di rete in una distribuzione ospitata.

Diagramma semplice del servizio TFS ospitato

Nella figura seguente viene mostrato il traffico di rete in una distribuzione più complessa che include i componenti di Visual Studio Lab Management.

Diagramma complesso di porte e comunicazioni - parte 1Diagramma complesso di porte e comunicazioni - parte 3Diagramma complesso di porte e comunicazioni - parte 2

ms252473.collapse_all(it-it,VS.110).gifImpostazioni di rete predefinite

Per impostazione predefinita, la comunicazione tra i computer in una distribuzione di Team Foundation utilizza i protocolli e le porte riportati nella tabella seguente. Se un asterisco (*) segue il numero di porta, è possibile personalizzare la porta.

Livello e servizio

Protocollo

Porta

Livello applicazione - Servizi Web

HTTP/HTTPS

8080/443*

Livello applicazione - Amministrazione di Prodotti SharePoint

HTTP

17012* se i Prodotti SharePoint sono stati installati con Team Foundation Server; altrimenti viene generata casualmente

Livello applicazione - Prodotti SharePoint e Reporting Services

HTTP

Servizio Strumentazione gestione Windows (WMI): necessario durante l'installazione per specificare e verificare gli URL per i servizi di rapporti

80*

Porta dinamica

Livello dati

TCP MS-SQL

1433*

Livello dati (SQL Server Analysis Services)

MS-AS

predefinito (2382 o 2383)*

La porta predefinita varia in base alla versione di SQL Server installata e al tipo di istanza.Utilizzare Gestione configurazione SQL Server per determinare le porte utilizzate dalla distribuzione.

Proxy di Team Foundation Server - dal client al proxy

HTTP

8081*

Proxy di Team Foundation Server - dal proxy al livello applicazione

HTTP/HTTPS

8080/443*

Livello client - Reporting Services

HTTP

80*

Livello client - Servizi Web

HTTP/HTTPS

8080/443*

Dal controller di compilazione al livello applicazione

HTTP/HTTPS

8080/443

Dall'agente di compilazione al livello applicazione

HTTP/HTTPS

8080/443

Dal controller di test al livello applicazione

HTTP/HTTPS

8080/443*

Dal livello applicazione al controller di test

.NET remoto

6901*

Dal livello applicazione a Domain Name System (DNS)

Aggiornamento dinamico DNS

53

Livello applicazione - Virtual Machine Manager

HTTP

8100

Dal controller di test all'agente di test

.NET remoto

6910*

Dall'agente di test al controller di test

.NET remoto

6901*

Dal controller di compilazione all'agente di compilazione

SOAP mediante HTTP

9191

Dall'agente lab all'agente lab in un ambiente isolato

Socket TCP

9050

Dall'agente di compilazione al controller di compilazione

SOAP mediante HTTP

9191

Console di amministrazione Virtual Machine Manager - Virtual Machine Manager

HTTP

8100

Virtual Machine Manager - Host Virtual Machine Manager

Gestione remota Windows (WinRM): per eseguire azioni

Servizio trasferimento intelligente in background (BITS): per trasferire dati

80: per eseguire azioni

443: per trasferire dati

Virtual Machine Manager - Server di libreria Virtual Machine Manager

WinRM: per eseguire azioni

BITS: per trasferire dati

80: per eseguire azioni

443: per trasferire dati

Livello applicazione - Host Virtual Machine Manager

Comunicazione Distributed Component Object Model/Strumentazione gestione Windows (DCOM/WMI): per trasferire dati

135

Assegnato in modo dinamico nell'intervallo compreso tra 49152 e 65535.

Livello client - Host Virtual Machine Manager

Connessione basata su host con la macchina virtuale.Per ulteriori informazioni sulle connessioni basate su host, vedere Procedura: connettersi ai computer in un ambiente lab.

2179: per stabilire connessioni basate su host.

Servizio ospitato

HTTPS

443

ms252473.collapse_all(it-it,VS.110).gifImpostazioni di rete personalizzabili

Come illustrato nella tabella precedente, è possibile cambiare la comunicazione tra i livelli applicazione, dati e client nella distribuzione locale modificando Team Foundation Server in modo da utilizzare porte personalizzate.Nella tabella seguente sono descritte le modifiche di esempio alle porte da HTTP a HTTPS.

[!NOTA]

Per configurare Team Foundation Server per l'utilizzo di HTTPS e di Secure Sockets Layer, è necessario non solo abilitare le porte per il traffico di rete HTTPS, ma eseguire anche molte altre attività.Per ulteriori informazioni, vedere Sicurezza di Team Foundation Server.

Servizio

Protocollo

Porta

Servizi Web con SSL

HTTPS

Configurato dall'amministratore

Amministrazione centrale SharePoint

HTTPS

Configurato dall'amministratore

Prodotti SharePoint

HTTPS

443

Reporting Services

HTTPS

443

Servizi Web client

HTTPS

Configurato dall'amministratore

Vedere anche

Concetti

Concetti su Team Foundation Server

Autorizzazioni per Team Foundation Server

Componenti del data warehouse per Team Foundation