mardi 30 mars 2010

Migration TFS 2008 vers TFS 2010 Step by Step

Le Processus de mise à jour d'une plate forme de production TFS 2008 vers TFS 2010 est un processus hautement critique qui doit donc être planifié dans les règles de l'art.
L'objectif de cet article est de démontrer un des 2 scénarios possibles de bout en bout.
Tout d'abord quels sont les scénarios possibles :
Scénario 1 : In Place Ugrade
Dans ce scénario, on va tout simplement mettre à jour le serveur de production. L'avantage de ce scénario est la simplicité et la rapidité, les inconvénients : les risques et l'interruption d'activité des équipes travaillant sur la plate forme en cas d'échec. De plus, on est obligé de rester en 32 bits.
Le schéma ci dessous extrait du document TFS 2010 Upgrade Guidance (CodePlex) en illustre le principe sous jacent.
Scenario 2 : Migration
Ce scénario consiste à provisionner une machine(s) distincte et utiliser les backups de l'ancienne plate forme pour effectuer la migration.
Ce scénario est à mon sens le meilleur, pour de multiples raisons :
  • Peu de risques
  • Passage en 64 bits
  • Possibilité de scale up / scale out de la plate forme en toute simplicité.
  • Solution de Rollback en cas d'échec (l'ancienne plate forme étant toujours disponible)

Ci dessous le schéma illustrant le scénario :

Nous allons décrire étape par étape la procédure pour migrer une plate forme TFS 2008 vers TFS 2010 en utilisant un nouveau Host 64 bits mode Single Server donc le scénario 2.

Etape 1 : Les prérequis

Disposer d'un backup complet du système de bases de données TFS et Sharepoint dont la liste est la suivante :
  • TFSActivityLogging
  • TFSBuild
  • TFSIntegration
  • TFSVersionControl
  • TFSWarehouse
  • TFSWorkitemtracking
  • TFSWorkitemtrackingAttachments
  • WSS_Content
  1. Faire le choix d'un plate forme cible : Single Server ou Dual Server (Data Tier séparé de l'application Tier)
  2. Provisionner la plate forme (dans le cas de l'exemple : un serveur Windows 2003 / IIS / SQL Server 2008 avec Reporting Services et Analysis Services)
  3. Configurer la plate forme pour être conforme à l'installation de TFS 2010 (voir guide d'installation TFS 2010 sur MSDN)
  4. Dans le cas d'une installation WSS : Installer WSS 3.0 avec SP2 sur l'application Tier (nous verrons plus loin comment attacher la base de contenu)
  5. Attention : Bien configurer Reporting Services avant de lancer l'upgrade (en mode natif). Pour vérifier,il suffit simplement d'accèder au site http://localhost/reports sur le serveur TFS
  6. Procéder à la restauration des bases de données sur le nouveau serveur SQL
  7. Attacher la base de contenu WSS-Content TFS 2008 au nouveau site Sharepoint : Pour cela se connecter au Sharepoint Administration Central, A partir de l'espace Application Management, créer une nouvelle Application Web puis Cliquer sur le menu Manage Content Databases. Selectionner le site récemment crée et supprimer la base de contenu. finalement, il reste à attacher la base de contenu du backup TFS 2008, pour cela, nous allons utiliser la commande suivante :
    stsadm -o addcontentdb -url http://teamserver/ -databasename WSS_Content
    Cette commande doit être lancée à partir du dossier suivant :
  8. On vérifie ensuite dans Sharepoint Administration Central / Manage Content Database la complétion du précédent processus :

  9. Sharepoint et Reporting Services étant configurés
  10. Lancer l'installation de TFS 2010 qui s'effectue en moins de 10 mns
Un reboot est nécessaire durant l'installation
Une fois l'installtion terminée, à l'aide du menu démarrer, lancer All Programs / Team Foundation Server 2010 / Team Foundation Administration Console pour entamer le processus d'upgrade
Selectionner le noeud Application Tier puis dans le panneau droit cliquer sur Configure :
Puis sélectionner dans le menu Gauche l'option Upgrade puis cliquer sur le bouton Start Wizard

Cliquer sur Next

La page Databases s'affiche, entrer le nom de l'instance SQL ou les bases TFS 2008 ont été restaurées puis cliquer sur le lien : "List Available Databases" :

La base TFSIntegration doit apparaitre dans la liste. Cliquer sur Next :
Entrer le compte de service TFS par exemple Domain\Tfsservice et son password puis cliquer sur Test pour valider
Sur l'écran Application Tier, conserver les options par défaut et cliquer sur Next
Sur l'écran Reporting conserver l'option cochée pour activer la configuration Reporting Services par Team Foundation Server
Dans cet écran de configuration, entrer le nom de l'instance Report Server puis cliquer sur le lien : Populate Urls : les 2 champs doivent être remplis automatiquement. Le cas échéant, revoir la configuration Reporting Services. Cliquer sur Next
Pour Analysis Services, entrer le nom de l'hote puis cliquer sur Test pour obtenir la validation
Ignorer cet écran et cliquer sur Next
Sur cet écran de configuration Sharepoint, laisser la case à cocher activée et cliquer sur Next
Sur l'écran Settings, les adresses doivent être préremplies, il suffit de les valider en cliquant sur les liens tests
Les deux adresses doivent apparaitre validées comme ci dessous :
Cet écran permet de provisionner une Project Collection. Conserver cette option par défaut et cliquer sur Next
L'écran récapitulatif s'affiche, Cliquer sur Next
Le processus de vérification s'enclenche et doit absolument être validé avant de lancer le processus d'upgrade.
Bien analyser les warnings et vérifier qu'aucun point bloquant ne soit remonté avant de continuer.
Cliquer sur Configure :
L'opération de configuration étant terminée, cliquer sur Next pour finaliser le processus d'upgrade
Le processus d'upgrade est plus ou moins long en fonction de la volumétrie des données migrées.
Une fois terminé, l'écran tant attendu apparait
Puis l'écran final
La deuxième grande étape va consister à valider les artefacts migrés : Documents, Work Items, Source Control, Branches, Rapports, Builds.
Pour cela lancer une instance de Team Explorer 2010, puis se connecter au Serveur TFS 2010 (migré)
Vérifier l'accès à la Default Collection et au Projets d'équipes migrés
Remonter les projets à vérifier et commencer une action de QA pour valider la migration
Sur le scénario joué dans cet article, l'ensemble des artefacts projets ont été récupérés avec succès, y compris toute la partie personnalisation de Work Items et les branches du source Control. A noter que ce scénario a été joué avec la version RC de TFS 2010 : Plutot prometteur pour la suite

3 commentaires:

DaMasteraf a dit…

Bonjour Philippe,

Comment procéder si l'on souhaite migrer uniquement un ou deux projets vers TFS 2010 ?

Merci d'avance.

Rafik.

christophep a dit…

MOi je te dis "t'es une star !"
MVP et 50 certifications dans la poche.
T'es pas un mickey toi !
Avanade for ever ?
Microsoft for next years ?

Note: Triathlon for ever !!!!!!!!!

cdt,
christophep | Microsoft Architect
06.88.04.27.27

christophep a dit…

POur info,
j'ai pické ton PPT ALM TechED2009 pour mon client CACIB.

Cedric G est passé avant.
J'ai rectifié le tir après...
Un peu comme sur Carrefour... Nicolas M et retalix...
C'est la passé. Mais franchement, ton PPT c'est de la balle man !

Avanade for ever !
Microsoft for ever !

cdt,
christophep