Partager via


Effectuer une exécution sèche de votre mise à niveau dans un environnement de préproduction

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

Dois-je me déranger ?

Une exécution sèche de votre mise à niveau dans un environnement de préproduction est fortement recommandée, mais elle n’a pas toujours de sens. Si vous discutez si vous souhaitez ou non effectuer une mise à niveau en préproduction, pesez les coûts de cette opération par rapport aux coûts de ne pas le faire. En particulier, si quelque chose ne va pas avec votre mise à niveau de production, le coût principal sera le temps d’arrêt impliqué pendant que vous revenez à l’ancienne version de TFS. Selon les spécificités de votre mise à niveau, cela peut être un processus rapide et simple, ou cela peut prendre beaucoup de temps et impliquer beaucoup de pièces mobiles. Tout comme avec la mise à niveau, la complexité de la restauration dépend de choses telles que la taille de vos bases de données, le nombre d’ordinateurs impliqués, etc.

Concepts de base

Si vous décidez de passer à une mise à niveau de préproduction, le processus général se compose des éléments suivants :

  1. Mettre en place un environnement de préproduction similaire à votre environnement de production.
  2. Protection de votre environnement de production.
  3. Restauration de bases de données à partir de sauvegardes.
  4. Effectuer la mise à niveau.

Mise en place d’un environnement

Dans un monde idéal, votre environnement de préproduction ressemblerait exactement à votre environnement de production : de cette façon, vous obtiendriez une image aussi précise que possible d’une image de la durée de votre mise à niveau, si vous rencontrerez des problèmes le long de la route, etc. Dans le monde réel, cependant, cela n’est pas toujours possible ou souhaitable. Les coûts d’approvisionnement d’un deuxième ensemble de machines identiques pour les tests de préproduction peuvent être prohibitifs. Ne laissez pas ces écarts vous dissuer, cependant, presque n’importe quel environnement de préproduction est préférable que rien.

Protection de la production

Les bases de données TFS contiennent un certain nombre de paramètres qui pointent vers différentes ressources dans leur environnement de déploiement. Par exemple, les chaînes de connexion de base de données de collecte sont stockées dans la base de données de configuration, car il s’agit du partage réseau utilisé par la fonctionnalité de sauvegardes planifiées. Par conséquent, il est possible qu’un environnement de préproduction provoque des problèmes dans un environnement de production et qu’il soit recommandé de mettre en place un environnement de préproduction pour éviter cela.

L’étape la plus importante consiste à utiliser un compte de service dans votre environnement de préproduction qui n’a pas d’autorisations pour votre environnement de production. Dans l’idéal, il ne doit pas disposer d’autorisations dans TFS, dans SQL, sur des partages réseau, etc. Les options suivantes incluent le service réseau (en supposant que votre compte d’ordinateur de préproduction n’a pas besoin d’autorisations en production) ou d’un compte de domaine de préproduction dédié, comme dans l’exemple ci-dessous.

Exemple de compte de service de préproduction

Une autre étape facultative consiste à ajouter des entrées aux fichiers hôtes de vos ordinateurs de préproduction pour mapper vos noms d’ordinateurs de production aux adresses IP non valides. Consultez l’entrée Wikipédia ici si vous ne savez pas ce qu’est un fichier hosts. Cela peut empêcher la communication sortante vers vos machines de production à partir de vos machines de préproduction.

Exemples de redirection de fichiers hôtes d’AT et DT

Restauration de bases de données

Si vous utilisez l’Assistant Sauvegardes planifiées pour générer des sauvegardes de base de données à partir de votre déploiement de production, vous pouvez également l’utiliser pour restaurer des sauvegardes sur votre déploiement en préproduction. Si ce n’est pas le cas, vous pouvez bien sûr suivre les procédures SQL standard pour restaurer les sauvegardes. Votre liste de bases de données à sauvegarder et restaurer doit toujours inclure votre base de données de configuration et toutes vos bases de données de collection. Si votre environnement de préproduction inclut des fonctionnalités de création de rapports, vous devez également inclure les bases de données de l’entrepôt et du serveur de rapports.

Effectuer la mise à niveau

Installez la nouvelle version de TFS sur vos machines du niveau d'application. Avant d’exécuter l’Assistant mise à niveau, exécutez la commande ChangeServerId. Cela garantira que vous ne rencontrerez pas de problèmes si vous accédez à vos environnements de production et de préproduction à partir des mêmes clients, et cela devrait être fait chaque fois que vous clonez une collection ou un déploiement complet.

Une fois que vous êtes prêt, mettez à niveau votre environnement de préproduction en suivant les mêmes étapes que celles que vous utiliserez pour mettre à niveau la production. Veillez à n’oubliez pas d’utiliser un compte de service qui n’a aucune autorisation dans votre environnement de production.

Configurer de nouvelles fonctionnalités

Certaines mises à niveau introduisent de nouvelles fonctionnalités qui prennent des mesures supplémentaires pour configurer, car elles impliquent des modifications de processus apportées à vos projets existants. En fonction des spécificités de vos projets et de la version de TFS à partir de laquelle vous effectuez une mise à niveau, cela peut être plus ou moins compliqué. Pour plus d’informations , voir ici .

Essayer des choses

Testez le serveur de préproduction ! Explorez un peu, essayez quelques-unes des nouvelles fonctionnalités... Notez que certaines choses, comme l'exécution de compilations, nécessitent une configuration supplémentaire.

Si vous détectez des problèmes, essayez de les résoudre ici pour éviter de les rencontrer à nouveau en production. Lorsque vous êtes satisfait, arrêtez pour aujourd'hui et passez à la mise à niveau de votre production.