3

I have been handling an aging Windows Server 2008 machine with TFS upgraded in place to 2017.2. Now, with Azure DevOps Server 2019, support for Windows Server 2008 is no longer available. Also, the existing SQL Server is 2012 and is no longer supported as well. I cannot upgrade the database to SQL Server 2014+ as there is the OS restriction. and in our company, upgrading OS in-place is not allowed.

Existing setup is as follows:

  • Windows Server 2008 (One VM)
  • TFS 2017.2
  • SQL Server 2012 Ent (On same VM)
  • Non-HTTPS machine name URL Team Portal access over Intranet

I prepared a brand new Windows Server 2016 for the Azure DevOps 2019.0.1. I also was able to get hold of a SQL AlwaysON Cluster based off SQL Server 2017 Ent just for Azure DevOps.

If I proceed with DevOps setup, I'll target the new DB Cluster and it will set up the new DB accordingly.

How do I move my existing collections to the new cluster (easy: restore DBs on the new cluster)?

Will Azure DevOps just accept the new collections?

All migration topics I've read are always assuming DB server and TFS server are the same and do not change.

Shayki Abramczyk
  • 36,824
  • 16
  • 89
  • 114
DoomerDGR8
  • 4,840
  • 6
  • 43
  • 91
  • Check this: https://learn.microsoft.com/en-us/azure/devops/server/upgrade/walkthrough – Shayki Abramczyk May 27 '19 at 06:33
  • @ShaykiAbramczyk That's for Azure DevOps Cloud. and almost is like a pep talk. I have followed more detailed guides when I started the journey of updating the TFS from 2002 to 2017.2 – DoomerDGR8 May 27 '19 at 06:36
  • 1
    Is NOT for the cloud, check again. I think if you move the DB to the new server and then in 2019 setup point them it should be fine. – Shayki Abramczyk May 27 '19 at 06:45
  • In that case, this would be easy. I'll attempt and update here – DoomerDGR8 May 27 '19 at 06:49
  • 1
    https://devblogs.microsoft.com/premier-developer/move-or-clone-tfs-from-one-hardware-to-another-in-tfs-2017-2018/ – jessehouwing May 27 '19 at 09:12
  • @jessehouwing In this awesome article, I see that one requirement on the new environment is to have the same versions of TFS and SQL which is not an option for me. I guess I'll update and then see what the situation is. – DoomerDGR8 May 27 '19 at 11:24
  • It's not 100% required, but makes things much easier. – jessehouwing May 27 '19 at 12:02
  • Then after migrating, just uninstall SQL and TFS, install the new versions, attach the DB's and perform the upgrade from the TFS installation wizard. – jessehouwing May 27 '19 at 12:02

1 Answers1

3

Ideal path:

  • Install the SQL Server matching your original environment.
  • Attach the databases
  • Install a version of TFS that supports your SQL server version that is the same or newer than the original server.
  • Walk through the configuration wizard.
  • uninstall TFS server
  • Detach databases and uninstall SQL Server
  • Install the desired SQL Server version with the same instance name.
  • Attach databases
  • Install latest version of Azure DevOps Server
  • Walk through the Upgrade wizard.

Full details here:

jessehouwing
  • 106,458
  • 22
  • 256
  • 341
  • Has this been validated that it works? if so, why is this not the answer? – Demodave Jan 23 '20 at 17:18
  • there is no mention of 'uninstall steps' in the link ? – Maxence Lecointe Nov 17 '20 at 23:17
  • In case of a move/clone to a fresh VM, you're going to an image that has no TFS on it. So in that case there is nothing to uninstall. If you're doing it in-place on the VM that used to have a serves installed on it previously, you'll have to get rid of the old server. The safest way to do that is simply to uninstall it. – jessehouwing Nov 18 '20 at 07:40
  • Looks like this answer is now obsolete. I upgraded to Azure DevOps Server 2020.1 and there was no need to install the old SQL server and TFS on the new machine. Installed the latest SQL and used copy database wizard to move all TFS DBs from old to new SQL server. Then installed Azure DevOps server 2020.1 and selected upgrade in the configuration wizard. – zzz Jun 03 '21 at 23:55
  • It depends on the jump you want to make. If you're on a really old version, you may have to fix things. – jessehouwing Jun 04 '21 at 11:46