Eseguire un'esecuzione secca dell'aggiornamento in un ambiente di pre-produzione

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

È necessario preoccuparsi?

È consigliabile eseguire un'esecuzione secca dell'aggiornamento in un ambiente di pre-produzione, ma non ha sempre senso. Se si sta discutendo se eseguire o meno un aggiornamento di pre-produzione, pesare i costi di farlo rispetto ai costi di non farlo. In particolare, se si verifica un problema con l'aggiornamento di produzione, il costo primario sarà il tempo di inattività necessario durante il rollback alla versione precedente di TFS. A seconda delle specifiche dell'aggiornamento, questo potrebbe essere un processo rapido e semplice o potrebbe richiedere molto tempo e coinvolgere molte parti mobili. Come per l'aggiornamento, la complessità del rollback dipenderà da elementi come le dimensioni dei database, il numero di computer coinvolti e così via.

Nozioni di base

Se si decide di procedere con un aggiornamento di pre-produzione, il processo generale è costituito da:

  1. Un ambiente di pre-produzione simile all'ambiente di produzione.
  2. Protezione dell'ambiente di produzione.
  3. Ripristino dei database dai backup.
  4. Eseguire l'aggiornamento.

Alzarsi in piedi un ambiente

In un mondo ideale, l'ambiente di pre-produzione sarà esattamente simile all'ambiente di produzione, in questo modo si otterrebbe il più accurato possibile un'immagine del tempo necessario per l'aggiornamento, indipendentemente dal fatto che si verifichino problemi lungo la strada e così via. Nel mondo reale, tuttavia, questo non è sempre possibile o auspicabile. I costi del provisioning di un secondo set di computer identici per i test di pre-produzione possono essere proibitivi. Non lasciare che queste discrepanze dissuadeno l'utente, ma quasi qualsiasi ambiente di pre-produzione è migliore di niente.

Protezione della produzione

I database TFS contengono diverse impostazioni che puntano a varie risorse nell'ambiente di distribuzione. Ad esempio, le stringhe di connessione del database di raccolta vengono archiviate nel database di configurazione, così come la condivisione di rete usata dalla funzionalità di backup pianificati. Di conseguenza, è possibile che un ambiente di pre-produzione causi problemi in un ambiente di produzione ed è una procedura consigliata quando si alza un ambiente di pre-produzione per intervenire per evitare questo problema.

Il passaggio più importante da eseguire consiste nell'usare un account del servizio nell'ambiente di pre-produzione che non dispone delle autorizzazioni per l'ambiente di produzione. Idealmente non deve avere autorizzazioni in TFS, in SQL, nelle condivisioni di rete e così via. Le opzioni includono servizio di rete (presupponendo che l'account computer di pre-produzione non richieda le autorizzazioni nell'ambiente di produzione) o un account di dominio di pre-produzione dedicato, come nell'esempio seguente.

Esempio di account del servizio di pre-produzione

Un altro passaggio facoltativo consiste nell'aggiungere voci ai file host dei computer di pre-produzione per eseguire il mapping dei nomi dei computer di produzione a indirizzi IP non validi. Vedere la voce wikipedia qui se non si è certi di che cos'è un file hosts. Ciò può impedire la comunicazione in uscita ai computer di produzione dai computer di pre-produzione.

Reindirizzamento di file host di esempio di AT e DT

Ripristino dei database

Se si usa la procedura guidata backup pianificati per generare backup di database dalla distribuzione di produzione, è anche possibile usarlo per ripristinare i backup nella distribuzione di pre-produzione. In caso contrario, è possibile seguire le procedure SQL standard per ripristinare anche i backup. L'elenco di database di cui eseguire il backup e il ripristino deve includere sempre il database di configurazione e tutti i database di raccolta. Se l'ambiente di pre-produzione includerà funzionalità di creazione report, è necessario includere anche i database del server di report e del warehouse.

Eseguire l'aggiornamento

Installare la nuova versione di TFS nei computer del livello applicazione. Prima di eseguire l'aggiornamento guidato, eseguire il comando ChangeServerId. Ciò garantisce che non si verifichino problemi se si accede sia agli ambienti di produzione che di pre-produzione dagli stessi client e devono essere eseguiti ogni volta che si clona una raccolta o una distribuzione completa.

Una volta pronti, aggiornare l'ambiente di pre-produzione usando gli stessi passaggi che verranno usati per aggiornare la produzione. Assicurarsi di ricordare di usare un account del servizio che non dispone di autorizzazioni nell'ambiente di produzione.

Configurare nuove funzionalità

Alcuni aggiornamenti introducono nuove funzionalità che consentono di eseguire passaggi aggiuntivi per la configurazione, poiché comportano modifiche al processo dei progetti esistenti. A seconda delle specifiche dei progetti e della versione di TFS da cui si esegue l'aggiornamento, questo potrebbe essere più o meno complicato. Per informazioni dettagliate, vedere qui.

Prova le cose

Portare fuori il server di pre-produzione per uno spin! Poke intorno un po ', provare alcune delle nuove funzionalità... Si noti che alcuni aspetti, ad esempio l'esecuzione di compilazioni, richiederanno una configurazione aggiuntiva.

Se si individuano problemi, provare a risolverli qui per evitare di colpirli nuovamente nell'ambiente di produzione. Quando si è soddisfatti, chiamarlo un giorno e passare all'aggiornamento di produzione.