Restauration d'un serveur TFS d'un environnement à l'autre

Pourquoi et comment restaurer son serveur TFS

Il existe plusieurs scénarios où il s'avère utile de restaurer son Team Foundation Server.

Le scénario le plus courant est celui qui consiste à restaurer un serveur TFS à partir d'un backup suite à un désastre sur le serveur. Ce scénario est critique pour toute entreprise ayant décidé de migrer tous ses développements dans un référentiel TFS.

Un deuxième scénario consiste à déplacer les données d'un serveur TFS d'une machine à une autre, plus puissante par exemple, ou effectuer un passage d'un serveur virtuel à un serveur physique.

Dans ces scénario où un seul serveur (le nouveau) est actif à la fois, il suffit de suivre la procédure officielle Microsoft qui fonctionne très bien pour l'avoir déjà testée. Bien entendu, comme toute procédure de restauration, il est toujours préférable de l'avoir expérimenté au moins une fois, lorsque tout va bien, afin d'en tirer les meilleurs bénéfices le jour où vous en avez vraiment besoin, et qu'il vous faut restaurer votre environnement TFS en urgence.

Dans le cas où vous avez besoin de faire tourner côte à côte le serveur TFS l'original et le restauré, la procédure ci-dessus n'est pas suffisante.

Je pense notament à la restauration d'un serveur TFS de production vers un environnement de Test à des fins de validation de procédures ou d'application de services pack par exemple.

Je pense également au clonage dans le but de créer des master afin d'installer plus vite des serveurs TFS dans le cas où plusieurs serveurs TFS sont à installer dans l'entreprise.

Cas de la restauration d'un serveur TFS de Production sur l'environnement de Test

Si on se connecte successivement au serveur TFS de production et au serveur de Test contenant la copie des données de production, il faut impérativement supprimer le répertoire de cache de Team Explorer avant chaque passage s'un serveur à l'autre, sous peine de vous connecter sans le savoir au serveur d'origine, quelque soit votre choix dans Team Explorer, avec les risques que vous comprendrez.

Un serveur TFS dispose en interne d'un numéro unique, un GUID, appelé repositoryID. La connection à un serveur TFS est optimisée par le client Team Explorer qui met en cache les informations du serveur TFS dans un dossier dont le nom est le repositoryID.
Lorsqu'on restaure la base de donnée TFS du serveur de production vers le serveur de test, ce dernier hérite du même GUID, ce qui explique ce problème.
Il est donc necessaire de changer ce GUID sur le serveur de Test afin d'éviter tout problème.

Comment changer le GUID sur le serveur TFS de Test

Il existe un outil ligne de commande InstanceInfo.exe fourni avec TFS que l'on utilise en 2 phases :

La première étape consiste à réinitialiser à zero le GUID sur les bases de données TFSWorkItemTracking,TFSBuild,TFSVersionControl,TFSIntegration de TFS.
“%TFSInstallDir%\Tools\InstanceInfo.exe" stamp /setup /install /rollback /d TFSWorkItemTracking,TFSBuild,TFSVersionControl,TFSIntegration /s <<your new data tier>> 

La deuxième consiste à générer un nouveau GUID sur les bases de données TFSWorkItemTracking,TFSBuild,TFSVersionControl,TFSIntegration de TFS.
"% TFSInstallDir %\Tools\InstanceInfo.exe" stamp /d TFSWorkItemTracking,TFSBuild,TFSVersionControl,TFSIntegration /s <<your new data tier>>

Conclusion

On retiendra que le clonage d'un serveur TFS implique de changer un GUID à plusieurs endroits dans la base TFS pour une utilsiation côte à côte. Un utilitaire bien caché, InstanceInfo.exe permet heureusement de faire l'opération proprement. Vivement un update de la documentation d'administration de TFS.

En espérant que çà vous sera utile.

Publié vendredi 4 mai 2007 00:17 par daniel
Classé sous
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires


Les 10 derniers blogs postés

- [SharePoint] Les sessions TechDays 2012… par Le blog de Patrick [MVP SharePoint] le il y a 6 heures et 24 minutes

- TechDays Paris 2012 : Session pleinière jour 3 par Blog Technique de Romelard Fabrice le 02-09-2012, 11:01

- Mishra Reader : un lecteur RSS très Zune Style en Open Source ! par Cyril Sansus le 02-09-2012, 08:28

- [framework 4] Les Tasks et le Thread UI par Fathi Bellahcene le 02-09-2012, 00:33

- Workflow Foundation 3 a un pied dans la tombe par Blog de Jérémy Jeanson le 02-08-2012, 22:15

- TechDays Paris 2012 : Nouvelles tendances du poste de travail - Bring Your own PC par Blog Technique de Romelard Fabrice le 02-08-2012, 19:42

- TechDays Paris 2012 : System Center Service Manager 2012 Vue d’ensemble par Blog Technique de Romelard Fabrice le 02-08-2012, 17:32

- TechDays Paris 2012 : Pleinière second jour par Blog Technique de Romelard Fabrice le 02-08-2012, 16:23

- TechDays Paris 2012 : Retour d'expérience sur la mise en place d'un Cloud Privé par Blog Technique de Romelard Fabrice le 02-08-2012, 16:04

- TechDays Paris 2012 : Comment SharePoint a sauvé mes TechDays par Blog Technique de Romelard Fabrice le 02-07-2012, 23:59