Transférer Team Foundation Server d'un environnement à un autre

Le scénario de déplacement basé sur l'environnement le plus courant modifie le domaine du déploiement TFS, qu'il s'agisse d'une modification du nom de domaine ou du passage d'un groupe de travail à un domaine.

Important

Dans certains cas, vous pouvez modifier le domaine d'un déploiement TFS ainsi que son matériel.Changer le matériel est un déplacement basé sur la restauration, et vous ne devez jamais combiner les deux types de déplacement.Procédez d'abord au déplacement du matériel, puis modifiez l'environnement.

De plus, le fait de modifier des identités dans TFS dans le cadre d'un déplacement d'environnement est l'aspect qui entraîne le plus souvent des conflits ou des problèmes.La Identities, commande est un outil puissant, mais elle possède certaines limitations.Informez-vous au sujet de cette commande dans le cadre de la planification du déplacement.Pour aider à garantir le succès du déplacement, veillez à bien comprendre les conditions requises suivantes :

  • Une fois qu'un compte d'utilisateur est présent dans TFS, il ne peut pas être supprimé et aucun autre compte ne peut lui être mappé.Par exemple, si vous déplacez DomaineA/UtilisateurA vers DomaineB/UtilisateurB, la commande Identities ne fonctionnera pas pour migrer l'utilisateur si DomaineB/UtilisateurB est déjà présent dans TFS.

  • Les membres du groupe Administrateurs local étant ajoutés automatiquement à TFS, assurez-vous de supprimer les comptes que vous souhaitez migrer à partir de ce groupe avant de modifier le domaine ou l'environnement.

Pour plus d'informations, cliquez ici pour obtenir une description détaillée du fonctionnement des modifications d'identités dans TFS, notamment concernant les limitations de l'outil.

Nous suivrons les étapes de modification de l'environnement de votre déploiement de TFS dans les sections suivantes :

  1. Vérifier les autorisations et les comptes

  2. Arrêter les services TFS

  3. Sauvegarder les données

  4. Joindre TFS à son nouveau domaine

  5. Configurer les produits SharePoint pour le nouvel environnement

  6. Déplacer les comptes de service et d'utilisateurs TFS

  7. Configurer les services Reporting Services et Analysis Services

  8. Redémarrer les services TFS

Vérifier les autorisations et les comptes

Pour modifier l'environnement pour TFS, vous devez être administrateur sur l'ordinateur local ainsi que pour TFS et tous les logiciels dont dépend votre déploiement : SQL Server, la création de rapports, les produits SharePoint (si votre déploiement utilise la création de rapports ou SharePoint) et les autres logiciels avec lesquels votre déploiement interagit, par exemple Project Server. Toutefois, tous les membres du groupe Administrateurs local sont ajoutés automatiquement à TFS, ce qui peut provoquer des problèmes lors des tentatives de migration des comptes. Par conséquent, vous devez utiliser un compte que vous n'envisagez pas de migrer dans le cadre du déplacement d'environnement. Vous pourriez ajouter un compte d'administration spécial uniquement pour le déplacement et utiliser ce compte pour effectuer la migration.

Pour vérifier les autorisations de niveau administrateur

  • Vérifiez que le compte que vous utilisez est membre des groupes suivants :

    • Serveurs : administrateurs (groupe Administrateurs local ou équivalent)

    • TFS : administrateurs Team Foundation et utilisateurs de la console Administration

    • SQL Server : sysadmin

    • Produits SharePoint : administrateurs de batterie (si votre déploiement TFS s'intègre avec les produits SharePoint)

Si vous n'êtes pas membre d'un ou de plusieurs de ces groupes, obtenez des autorisations maintenant.

Maintenant que vous utilisez un compte qui dispose de toutes les autorisations requises, vous devez commencer à vérifier les comptes pour savoir s'il risque d'y avoir des conflits au niveau des noms ou des groupes dans l'environnement vers lequel vous allez effectuer le déplacement. Nous savons déjà que les comptes qui sont membres du groupe Administrateurs local ne peuvent pas être migrés. Nous allons donc commencer par les supprimer.

Supprimer les comptes à migrer du groupe Administrateurs local

  • Ouvrez le groupe Administrateurs local et supprimez tous les comptes que vous souhaitez migrer vers le nouvel environnement. Répétez cette étape pour tous les autres groupes concernés.

Maintenant, vérifiez la liste des identités dans l'environnement TFS actuel et recherchez les éventuels problèmes au niveau des groupes ou des comptes d'utilisateurs qui pourraient exister dans le nouvel environnement.

Conseil

Créez un tableau ou une carte de migration des identités à déplacer dans le cadre du déplacement d'environnement, avec notamment les détails des comptes dont la migration automatique risque de ne pas être possible.

Vérifier les identités

  1. Sur le serveur de couche Application pour Team Foundation, ouvrez une fenêtre d'invite de commandes avec des autorisations d'administration, accédez à %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools, puis exécutez la commande suivante pour afficher les identités actuellement présentes sur le système :

    TFSConfig Identities
    
  2. Une liste d'identités s'affiche. Vérifiez ces utilisateurs et ces groupes pour vous assurer qu'il n'existe aucun duplicat ou problème au niveau des identités dans l'environnement vers lequel vous allez déplacer TFS, et prenez les mesures nécessaires pour atténuer les conflits potentiels.

Arrêter les services TFS

L'arrêt des services permet de s'assurer que les utilisateurs ne peuvent pas apporter de modifications aux éléments de travail ou archiver le code source dans le déploiement d'origine pendant ou après le processus de déplacement.

  1. Sur l'ordinateur de couche Application TFS, ouvrez une fenêtre d'invite de commandes, puis accédez au répertoire Drive:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools.

  2. Tapez la commande TFSServiceControl suivante :

    TFSServiceControl quiesce

Sauvegarder les bases de données et la clé de chiffrement SQL Server Reporting Services

  1. Ouvrez la console Administration pour TFS et, sur la page Sauvegardes planifiées, acceptez une sauvegarde complète. La sauvegarde enregistrera tous les éléments que vous avez configurés pour la sauvegarde dans votre plan de sauvegarde, mais cette opération sera effectuée immédiatement, et pas en fonction du délai planifié dans le plan. Si votre déploiement utilise la création de rapports, vous pouvez sauvegarder la clé de chiffrement dans le cadre de cet ensemble de sauvegardes.

    Vous pouvez fermer la fenêtre pendant que le travail se termine

    (Si vous n'avez pas de sauvegardes configurées, vous devez créer un plan avant de pouvoir effectuer une sauvegarde complète.)

  2. Une fois la sauvegarde terminée, vérifiez qu'elle est disponible sur le dispositif de stockage ou le partage réseau et que vous pouvez y accéder à partir du nouveau matériel.

Joindre TFS à son nouveau domaine

  1. Sur chaque serveur, ouvrez les propriétés de l'ordinateur.

  2. Modifiez les paramètres de l'ordinateur au domaine ou au groupe de travail auquel vous souhaitez joindre le serveur.

    Si vous êtes invité à indiquer le nom d'utilisateur et le mot de passe d'un compte qui dispose des autorisations nécessaires pour joindre cet ordinateur au domaine, spécifiez les informations d'identification appropriées.

  3. Redémarrez l'ordinateur pour que les modifications apportées au domaine soient prises en compte.

    Notes

    Après le redémarrage de l'ordinateur, un avertissement peut s'afficher pour indiquer que les services ou les pilotes n'ont pas pu démarrer.Passez à la procédure suivante.

Configurer les produits SharePoint pour le nouvel environnement

Si vous remplacez l'environnement par un environnement où il n'y a aucune relation d'approbation avec votre environnement précédent, vous devrez peut-être configurer les Produits SharePoint pour qu'ils fonctionnent correctement. Les informations relatives aux utilisateurs importés à partir des services d'annuaire sont disponibles sur les sites SharePoint à partir du contrôle Web Sélecteur de personnes. Les administrateurs de site et autres utilisateurs se servent du Sélecteur de personnes pour sélectionner des personnes et des groupes lors de l'assignation d'autorisations. Lorsque les informations relatives aux utilisateurs se trouvent dans plusieurs forêts ou dans une forêt sans relation d'approbation pour l'ensemble des utilisateurs, des étapes supplémentaires peuvent être nécessaires afin de vérifier que toutes les personnes et tous les groupes sont disponibles à partir de ce contrôle Web.

Ignorez cette procédure si vous n'utilisez pas les Produits SharePoint dans votre déploiement, si votre nouvel environnement comporte une relation d'approbation bidirectionnelle vers l'ancien environnement, ou si aucune erreur pour votre application Web SharePoint ne s'affiche dans la console Administration pour Team Foundation.

  1. Sur chaque serveur qui fait partie de la batterie SharePoint prenant en charge le déploiement de Team Foundation Server, ouvrez une fenêtre d'invite de commandes avec les autorisations d'administration, puis accédez à %programfiles%\Common Files\Microsoft Shared\Web Server Extensions\15\BIN.

  2. Tapez la commande suivante, où Key représente la clé de chiffrement que vous voulez utiliser dans votre déploiement des Produits SharePoint :

    stsadm.exe -o setapppassword -password Key

    Notes

    Cette clé est une chaîne de chiffrement utilisée pour chiffrer le mot de passe du compte utilisé pour accéder à la forêt ou au domaine.La chaîne de chiffrement doit être la même pour chaque serveur de la batterie de serveurs, mais une chaîne unique doit être utilisée pour chaque batterie de serveurs.

  3. Tapez la commande suivante, où domain:DNSName représente la forêt ou le domaine cible et son nom DNS, user,password représente le nom d'utilisateur et le mot de passe d'un compte qui a accès à la forêt ou au domaine cible, et WebApp représente le nom de l'application Web qui prend en charge votre déploiement de Team Foundation Server :

    stsadm.exe -o setproperty -pn peoplepicker-searchadforests -pv domain:DnsName**,user,**password **-url http://**WebApp

  4. Tapez la commande suivante, où URL représente l'URL d'une collection de sites qui prend en charge une collection de projets d'équipe, Port représente le numéro de port assigné à cette collection de sites et UserName représente le nom d'utilisateur du compte propriétaire de cette collection de sites :

    **stsadm.exe -o siteowner -url http://URL:**Port -ownerlogin UserName

  5. Répétez l'étape précédente pour chaque collection de sites utilisée par votre déploiement Team Foundation Server.

Déplacer les comptes de service et d'utilisateurs TFS

Comme mentionné au début de cette rubrique, c'est lors du déplacement des comptes que vous êtes le plus susceptible de rencontrer des difficultés, notamment si vous n'avez pas planifié soigneusement la migration des utilisateurs. La commande TFSConfig Identities ne peut pas migrer un compte vers un compte qui existe déjà dans TFS.

Si des noms de comptes sont identiques dans les deux domaines et que la seule différence est le nom de domaine, vous pouvez utiliser le mode de traitement par lot de TFSConfig Identities pour modifier simultanément toutes les identités. Sinon, vous devez modifier les identités individuellement et spécifier un nom de compte cible différent, comme détaillé ci-dessous.

  1. Sur le serveur de couche Application pour Team Foundation, ouvrez une fenêtre d'invite de commandes avec des autorisations d'administration, accédez à %ProgramFiles%\Microsoft Visual Studio 12.0 Team Foundation Server\Tools, puis exécutez la commande suivante pour remplacer les ID de service (SID) du compte de service par le nouveau domaine :

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

    Avertissement

    Si votre compte de service était un compte système tel que Service réseau, vous ne pouvez pas migrer directement le compte de service, car il existe un compte système avec le même nom dans le nouvel environnement.Vous devrez effectuer un processus de modification en deux étapes.Consultez l'exemple dans Identities, commande.

  2. Pour migrer tous les comptes qui ont le même nom dans le nouvel environnement, tapez la commande suivante :

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

    Cette commande effectuera un traitement par lot des comptes.

  3. Si votre nouveau domaine contient une ou plusieurs identités dont le nom change d'un environnement à l'autre, vous devrez mettre à jour manuellement les SID de chacune de ces identités. Par exemple, si le compte d'utilisateur de Christie Church était Fabrikam\CChurch dans l'environnement précédent, mais NewFabrikam\ChristieC dans le nouvel environnement, vous devrez mettre à jour son SID manuellement. Pour chaque compte concerné par cette exigence, tapez la commande suivante :

    TFSConfig Identities /change /fromdomain:OldDomainName /todomain:NewDomainName /account:OldAccountName /toaccount:NewAccountName
    
  4. Exécutez maintenant la commande suivante pour mettre à jour le compte de service :

    TFSConfig Accounts /change /AccountType:ApplicationTier /account:AccountName /password:Password
    
  5. Si votre déploiement utilise la création de rapports, exécutez la commande suivante pour mettre à jour le compte de source de données utilisé pour la création de rapports :

    TFSConfig Accounts /change /AccountType:ReportingDataSource /account:AccountName /password:Password
    
  6. Si votre déploiement utilise Team Foundation Server Proxy, exécutez la commande suivante pour mettre à jour le compte de service utilisé pour le proxy :

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

    Notes

    Si vous effectuez un déplacement vers un domaine non approuvé, vous devrez peut-être également ajouter manuellement les utilisateurs et les groupes aux équipes, aux projets, aux collections et à Team Foundation Server.Pour plus d'informations, consultez Ajouter des utilisateurs aux projets d'équipe, Définir les autorisations d'administrateur pour les collections de projets d'équipe et Définir les autorisations d'administrateur pour Team Foundation Server.

  7. Si votre déploiement est intégré à Project Server, vous devrez peut-être exécuter des étapes supplémentaires pour configurer les comptes de service avec les autorisations requises pour fonctionner. Pour plus d'informations, consultez Accorder les autorisations pour prendre en charge l'intégration de TFS et Project Server et Configurer l'intégration de TFS et Project Server.

Configurer les services Reporting Services et Analysis Services

Vous pouvez ignorer cette procédure si vous n'utilisez pas la création de rapports dans le cadre de votre déploiement.

Si vous avez renommé un serveur de rapports dans le cadre de ce type de déplacement, vous devez rediriger Team Foundation Server vers le serveur de rapports, à son nouvel emplacement. Vous devez également redémarrer l'entrepôt et régénérer manuellement la base de données pour Analysis Services.

  1. Ouvrez la console Administration pour Team Foundation, accédez au nœud Rapports et modifiez les paramètres.

    Les rapports pointent encore vers l'ancien serveur

  2. Modifiez les valeurs des trois onglets afin qu'ils incluent le nouveau nom du serveur. Veillez à fournir les informations appropriées pour le compte de sources de données dans le nouvel environnement.

    Vérifier l'exactitude des informations sur les 3 onglets

  3. Sélectionnez Démarrer les travaux pour redémarrer la création de rapports.

  4. Sélectionnez Démarrer la régénération pour régénérer l'entrepôt.

Configurer les sauvegardes

Si le nom du partage réseau ou le dispositif de stockage a changé avec la modification du nom de domaine, vous devrez mettre à jour le plan de sauvegarde planifié pour pointer vers ces ressources renommées.

  • Dans la console Administration, accédez au nœud Sauvegardes planifiées et reconfigurez les sauvegardes planifiées pour sauvegarder les bases de données TFS sur le nouveau serveur. Pour plus d'informations, consultez Configurer une planification de sauvegarde.

Redémarrer les services TFS

Maintenant que vous avez mis à jour TFS avec toutes les informations du nouvel environnement, redémarrez les services.

  1. Sur l'ordinateur de couche Application TFS, ouvrez une fenêtre d'invite de commandes avec des autorisations d'administration et accédez au répertoire Drive:\%programfiles%\Microsoft Team Foundation Server 12.0\Tools.

  2. Tapez la commande TFSServiceControl suivante :

    TFSServiceControl unquiesce

Q & R

Q : Je souhaite modifier le ou les serveurs physiques pour mon déploiement, et non les domaines.Est-ce possible ?

R : oui. Cela s'appelle un déplacement basé sur le matériel, et vous trouverez les étapes ici. Vous ne devez pas essayer de combiner un déplacement basé sur l'environnement avec un déplacement basé sur le matériel. Procédez d'abord au déplacement du matériel, puis modifiez l'environnement.

Q : J'ai un déploiement qui s'intègre à Project Server.Dois-je exécuter des étapes supplémentaires pour qu'il fonctionne avec mon TFS déplacé ?

R : Oui, après avoir procédé au déplacement d'environnement, vous devrez utiliser la commande /RegisterPWA de TFSAdmin ProjectServer avec les options /tfs, /force et /pwa pour réenregistrer TFS avec Project Server. Vous pouvez en savoir plus sur l'intégration de TFS à Project Server ici.