Condividi tramite


Passare da un ambiente a un altro per Azure DevOps locale

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

Questo articolo illustra come spostare una distribuzione di Azure DevOps Server da un ambiente a un altro, ad esempio la modifica del nome di dominio o lo spostamento da un gruppo di lavoro a un dominio. Gli spostamenti basati sull'ambiente sono comuni quando le organizzazioni ristrutturano l'infrastruttura IT, aggiornano i nomi di dominio o consolidano le risorse.

È possibile trovare indicazioni dettagliate per preparare la distribuzione, aggiornare autorizzazioni e account, arrestare i servizi, eseguire il backup dei dati, aggiungere il nuovo dominio, eseguire la migrazione di account utente e di servizio, configurare reporting e analysis services, aggiornare i piani di backup e riavviare i servizi.

La modifica dell'ambiente per Azure DevOps Server richiede un'attenta pianificazione, in particolare per la gestione degli account e delle identità, per evitare conflitti e garantire una transizione senza problemi. Questo articolo fornisce procedure consigliate e istruzioni dettagliate per completare correttamente lo spostamento.

Importante

In alcune situazioni, potrebbe essere necessario modificare il dominio di una distribuzione di Azure DevOps Server e il relativo hardware. La modifica dell'hardware è uno spostamento basato sul ripristino e non è mai consigliabile combinare i due tipi di spostamento. Completare prima lo spostamento dell'hardware e quindi modificare l'ambiente.

La modifica delle identità in Azure DevOps Server come parte di uno spostamento ambientale è l'aspetto che spesso causa conflitti o problemi. Il comando Identityes è uno strumento potente, ma presenta alcune limitazioni. Leggilo come parte della pianificazione del tuo movimento. Per garantire un spostamento riuscito, assicurarsi di comprendere i requisiti seguenti:

  • Quando un account utente è presente in Azure DevOps Server, non può essere rimosso né può essere associato a un altro account. Ad esempio, se si sposta DomainA/UserA in DomainB/UserB, il comando Identità funziona solo per eseguire la migrazione dell'utente se DomainB/UserB non è già presente in Azure DevOps Server.
  • Poiché i membri del gruppo Administrators locale vengono aggiunti automaticamente ad Azure DevOps Server, assicurarsi di rimuovere tutti gli account di cui si vuole eseguire la migrazione da tale gruppo prima di modificare il dominio o l'ambiente.

Per altre informazioni generali, vedere questo post di blog.

1. Controllare le autorizzazioni e gli account

Per modificare l'ambiente per Azure DevOps Server, accedere come amministratore nel computer locale, Azure DevOps Server, SQL Server, creazione di report e qualsiasi altro software dipendente, ad esempio Project Server. Evitare di usare gli account di cui si prevede la migrazione. I membri del gruppo Administrators locale vengono aggiunti automaticamente ad Azure DevOps Server, che possono causare problemi di migrazione. Usare un account amministrativo dedicato per lo spostamento per evitare conflitti.

Verificare le autorizzazioni a livello di amministratore

  • Verificare che l'account in uso sia membro dei gruppi seguenti:
    • Server: Amministratori (gruppo Administrators locale o equivalente)
    • Azure DevOps Server: amministratori di Team Foundation e utenti della console di amministrazione
    • SQL Server: sysadmin

Se non si è membri di uno o più di questi gruppi, ottenere ora le autorizzazioni.

Dopo aver confermato che l'account dispone di tutte le autorizzazioni necessarie, verificare la presenza di potenziali conflitti con i nomi di account o gruppi nell'ambiente di destinazione. Poiché non è possibile eseguire la migrazione degli account nel gruppo Administrators locale, rimuovere tutti gli account di cui si intende eseguire la migrazione da tale gruppo prima di procedere.

Rimuovere gli account di cui eseguire la migrazione dal gruppo Administrators locale

Aprire il gruppo Administrators locale e rimuovere tutti gli account di cui si intende eseguire la migrazione al nuovo ambiente. Ripetere questo processo per tutti gli altri gruppi che potrebbero essere interessati.

Esaminare quindi l'elenco delle identità nell'ambiente Azure DevOps Server corrente. Identificare eventuali conflitti con gruppi o account utente già esistenti nel nuovo ambiente.

Suggerimento

Creare una tabella o una mappa di migrazione delle identità da spostare. Includere informazioni dettagliate sugli account di cui non è possibile eseguire automaticamente la migrazione per tenere traccia e risolvere i problemi durante lo spostamento.

Controllare le identità

  1. Nel server a livello di applicazione per Azure DevOps aprire una finestra del prompt dei comandi con autorizzazioni amministrative, passare a %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools ed eseguire il comando seguente per visualizzare le identità attualmente presenti nel sistema:

    TFSConfig Identities
    

Viene visualizzato un elenco di identità.

  1. Esaminare utenti e gruppi per identificare eventuali identità duplicate o in conflitto nell'ambiente di destinazione prima di spostare Azure DevOps Server. Risolvere eventuali conflitti potenziali per garantire una migrazione senza problemi.

2. Arrestare i servizi

L'arresto dei servizi impedisce agli utenti di apportare modifiche agli elementi di lavoro o di controllare il codice sorgente nella distribuzione originale durante o dopo il processo di spostamento.

  1. Aprire una finestra del prompt dei comandi nel computer a livello di applicazione e modificare le directory in Drive:\\%programfiles%\\TFS 12.0\\Tools.

  2. Immettere il comando TFSServiceControl seguente:

    TFSServiceControl quiesce
    

3. Eseguire il backup dei database e della chiave di crittografia di SQL Server Reporting Services

  1. Aprire la console di amministrazione per Azure DevOps Server e passare alla pagina Backup pianificati . Eseguire un backup completo per eseguire immediatamente il backup di tutti gli elementi specificati nel piano di backup. Se la distribuzione usa la creazione di report, includere la chiave di crittografia in questo set di backup.

    È possibile chiudere la finestra al termine del processo

    Annotazioni

    Se i backup non sono mai stati configurati, creare un piano di backup prima di eseguire un backup completo.

  2. Al termine del backup, verificare che il backup sia disponibile nel dispositivo di archiviazione o nella condivisione di rete e verificare che sia possibile accedervi dal nuovo hardware.

4. Aggiungere il server del livello applicazione al nuovo dominio

  1. Su ogni server, apri le proprietà del computer.

  2. Modificare le impostazioni del computer per aggiungere il dominio o il gruppo di lavoro desiderato.

    Se richiesto, immettere le credenziali di un account con l'autorizzazione per aggiungere il computer al dominio.

  3. Riavviare il computer per applicare la modifica del dominio.

    Annotazioni

    Dopo il riavvio, potrebbe essere visualizzato un avviso che indica che non è stato possibile avviare alcuni servizi o driver. È possibile continuare tranquillamente con la procedura successiva.

5. Spostare account utente e account di servizio

La migrazione degli account è spesso la parte più complessa degli ambienti in fase di modifica, soprattutto se non si pianifica attentamente la migrazione degli utenti. Il comando TFSConfig Identities non può eseguire la migrazione di un account a un account di destinazione già esistente in Azure DevOps Server.

Se i nomi degli account sono identici in entrambi i domini (con solo il nome di dominio diverso), è possibile usare la modalità batch delle identità TFSConfig per aggiornare tutte le identità contemporaneamente. Se i nomi degli account differiscono tra gli ambienti, è necessario aggiornare ogni identità singolarmente e specificare il nuovo nome dell'account di destinazione, come descritto di seguito.

  1. Nel server a livello di applicazione per Azure DevOps aprire una finestra del prompt dei comandi con autorizzazioni amministrative. Passare a %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools ed eseguire il comando seguente per aggiornare il SID dell'account del servizio al nuovo dominio:

    TFSConfig identities /change /fromdomain:OldComputerorDomainName /todomain:NewDomainName /account:OldTFSServiceAccount /toaccount:NewTFSServiceAccount
    

    Avvertimento

    Se l'account del servizio è un account di sistema,ad esempio servizio di rete, non è possibile eseguirne la migrazione direttamente perché esiste un account di sistema con lo stesso nome nel nuovo ambiente. È necessario seguire un processo in due fasi. Vedere l'esempio in Comando identità.

  2. Per eseguire la migrazione di tutti gli account con lo stesso nome nel nuovo ambiente, eseguire:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName
    

    Questo comando elabora gli account in batch.

  3. Se il nuovo dominio contiene identità con nomi diversi tra gli ambienti, aggiornare manualmente i SID per ognuno di essi. Ad esempio, se l'account di Christie Church era Fabrikam\CChurch nell'ambiente precedente ed è NewFabrikam\ChristieC nel nuovo, aggiornare il SID come segue:

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Aggiorna l'account del servizio eseguendo:

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Se la distribuzione usa la creazione di report, aggiornare l'account dell'origine dati:

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Se la distribuzione usa il server proxy di Azure DevOps, aggiornare l'account del servizio proxy:

    TFSConfig Accounts /change /AccountType:Proxy /account:AccountName /password:Password
    

    Annotazioni

    Se si passa a un dominio non attendibile, potrebbe anche essere necessario aggiungere manualmente utenti e gruppi a team, progetti, raccolte e Azure DevOps Server stesso. Per altre informazioni, vedere Aggiungere utenti ai progetti, Impostare le autorizzazioni di amministratore per le raccolte di progetti e Impostare le autorizzazioni di amministratore per Azure DevOps Server.

  7. Se la distribuzione si integra con Project Server, potrebbe essere necessario eseguire altri passaggi per configurare gli account del servizio con le autorizzazioni necessarie. Per altre informazioni, vedere Assegnare autorizzazioni per supportare l'integrazione di TFS-Project Server e Configurare l'integrazione di TFS-Project Server.

6. Configurare i servizi di reporting e di analisi

Ignorare questa procedura se la distribuzione non utilizza la funzionalità di reportistica.

Se il server di report è stato rinominato durante lo spostamento, aggiornare Azure DevOps Server in modo che punti al nuovo percorso del server di report. È anche necessario riavviare il magazzino e ricompilare manualmente il database di Analysis Services.

  1. Aprire la console di amministrazione per Azure DevOps, passare al nodo Report e modificare le impostazioni.

    I report puntano ancora al server precedente

  2. Aggiornare i valori in tutte e tre le schede in modo che riflettano il nuovo nome del server. Assicurati di inserire i dati corretti dell'account di origine dati per il nuovo ambiente.

    Assicurarsi che le informazioni siano corrette in tutte e 3 le schede

  3. Selezionare Avvia processi per riavviare la creazione di report.

  4. Selezionare Avvia ricompilazione per ricompilare il magazzino.

7. Configurare i backup

Se il nome della condivisione di rete o il dispositivo di archiviazione sono stati modificati durante la modifica del nome di dominio, aggiornare il piano di backup pianificato per fare riferimento alle nuove risorse.

Nella console di amministrazione passare al nodo Backup pianificati e riconfigurare i backup pianificati per eseguire il backup dei database del server Azure DevOps nel nuovo server. Per informazioni dettagliate, vedere Creare una pianificazione e un piano di backup.

8. Riavviare i servizi

Dopo aver aggiornato Azure DevOps Server con tutte le informazioni per il nuovo ambiente, per riavviare i servizi, seguire questa procedura:

  1. Sul computer con Azure DevOps Server a livello di applicazione, aprire una finestra del prompt dei comandi con autorizzazioni amministrative e spostarsi nella directory Unità:\%programfiles%\TFS 12.0\Tools.

  2. Immettere il comando TFSServiceControl seguente:

    TFSServiceControl unquiesce
    

Domande frequenti (domande frequenti)

D: Si vuole modificare il server fisico o i server per la distribuzione, non i domini. È possibile?

A: Sì, questa azione viene chiamata spostamento basato sull'hardware e i passaggi vengono forniti in Spostare o clonare da un hardware all'altro. Non è consigliabile provare a combinare uno spostamento basato sull'ambiente con uno spostamento basato su hardware. Completare prima lo spostamento dell'hardware e quindi modificare l'ambiente.