Effectuer une exécution à sec de votre mise à niveau dans un environnement de pré-production

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015

Notes

Azure DevOps Server a été précédemment nommé Visual Studio Team Foundation Server.

Dois-je m’en soucier ?

Il est fortement recommandé de procéder à une mise à niveau à sec dans un environnement de préproduction, mais cela n’est pas toujours judicieux. Si vous souhaitez savoir si vous devez effectuer une mise à niveau de pré-production, évaluez les coûts de cette opération par rapport aux coûts de non-réalisation. En particulier, en cas de problème lié à la mise à niveau de la production, le coût principal sera le temps d’arrêt de l’ancienne version de TFS. Selon les spécificités de votre mise à niveau, il peut s’agir d’un processus rapide et simple, ou l’opération peut prendre beaucoup de temps et impliquer un grand nombre de pièces mobiles. À l’instar de la mise à niveau, la complexité de la restauration dépend de la taille de vos bases de données, du nombre de machines impliquées, etc.

Concepts de base

Si vous décidez de migrer vers l’avant avec une mise à niveau de pré-production, le processus général se compose des éléments suivants :

  1. Mettez 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. Mise à niveau en cours.

En position d’un environnement

Dans un monde idéal, votre environnement de pré-production devrait ressembler exactement à votre environnement de production. de cette façon, vous obtenez une image précise de la durée de votre mise à niveau, que vous rencontriez des problèmes en cours de route, etc. Dans le monde réel, toutefois, cela n’est pas toujours possible ou souhaitable. le produit ne prend pas en charge le clonage des fonctionnalités d’intégration SharePoint, par exemple. Et les coûts de mise en service d’un deuxième ensemble de machines identiques pour les tests de pré-production peuvent être prohibitifs. Ne laissez pas ces incohérences dissuader, cependant, presque n’importe quel environnement de préproduction est mieux 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 à la base de données de collection sont stockées dans la base de données de configuration, comme le partage réseau utilisé par la fonctionnalité de sauvegardes planifiées. Par conséquent, il est possible pour un environnement de préproduction de provoquer des problèmes dans un environnement de production, et il est recommandé de mettre en place un environnement de pré-production pour prendre des mesures pour éviter cela.

L’étape la plus importante que vous pouvez effectuer consiste à utiliser un compte de service dans votre environnement de préproduction qui ne dispose d’aucune autorisation pour votre environnement de production. idéalement, il ne doit pas avoir d’autorisations dans TFS, dans SQL, sur les partages réseau, etc. Les options incluent ici 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 à vos ordinateurs hôtes de pré-production pour mapper les noms de vos ordinateurs de production à des adresses IP non valides. Consultez l’entrée Wikipédia ici si vous n’êtes pas sûr de ce qu’est un fichier hosts. Cela peut empêcher les communications sortantes vers vos ordinateurs de production à partir de vos machines de pré-production.

Exemple héberge la redirection de fichiers de 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 les sauvegardes de votre déploiement de préproduction. si ce n’est pas le cas, vous pouvez bien sûr suivre les procédures de SQL standard pour restaurer également les sauvegardes. La liste des 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.

Mise à niveau en cours

Installez la nouvelle version de TFS sur vos ordinateurs de couche application. Avant d’exécuter l’Assistant Mise à niveau, exécutez la commande ChangeServerId. Cela permet de s’assurer que vous ne rencontrez pas de problèmes si vous accédez à la fois à vos environnements de production et de pré-production à partir des mêmes clients, et que vous devez effectuer chaque fois que vous clonez un regroupement 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 à utiliser un compte de service qui n’a pas d’autorisations dans votre environnement de production.

Configurer de nouvelles fonctionnalités

Certaines mises à niveau introduisent de nouvelles fonctionnalités qui prennent des mesures supplémentaires à configurer, car elles impliquent des modifications de processus pour vos projets existants. Selon les spécificités de vos projets et la version de TFS à partir de laquelle vous effectuez la mise à niveau, cela peut être plus ou moins compliqué. Cliquez ici pour obtenir des détails.

Essayer

Tirez le serveur de préproduction pour une rotation ! Essayez quelques-unes des nouvelles fonctionnalités... Notez que certains éléments, tels que les builds en cours d’exécution, nécessitent une configuration supplémentaire.

Si vous détectez des problèmes, essayez de les parcourir ici afin d’éviter de les toucher en production. Lorsque vous êtes satisfait, appelez-le une journée et passez à votre mise à niveau de production.