Search code examples
tfstfs-2015

Best approach to upgrade TFS 2015 to TFS 2018?


We currently have TFS set up on three Win2012 servers: app server, build server, deployment server.

It is using SQL Server 2014 which is on a separate server (let's call it SQL1). We have a SQL 2017 server (SQL2) that is not in use but can be used to migrate databases there.

Our plan is to upgrade to TFS 2018. Since TFS 2018 does not support SQL 2017, What is the best approach here?

  1. In-place upgrade TFS 2015 to TFS 2017 (which supports SQL 2014). Then upgrade SQL 2014 to SQL 2017 on SQL1. Once SQL upgrade is done, then we can do another in-place upgrade to TFS 2018.

  2. Migrate existing TFS databases from SQL1 to SQL2 server. Upgrade TFS 2015 directly to 2018 and point to databases on new SQL 2017 server.

  3. Backup SQL1 databases. Upgrade SQL1 to SQL 2017. Restore databases. In-place upgrade TFS 2015 directly to TFS 2018.

What would be the best approach here? Thanks.


Solution

  • I recommend the following:

    • Spin up fresh Windows 2019 or 2022 servers.
    • Install SQL Server 2019 on one of 'm.
    • Install Azure DevOps Servers 2020 or 2022 on the other.
    • Restore the databases on the SQL server.
    • Run the configuration wizard on the Azure DevOps Server and have it perform the upgrade.

    In most cases this process can run in a couple of hours if you've prepared all the machines and accounts, DNS entries etc.