How can I run two instances of Octopus Deploy side by side?

how-to
(Bob Walker) #1

A VM running Windows 2012 is hosting Octopus Deploy. It is time to upgrade to Windows 2016 or Windows 2019. Rather than upgrading the existing VM, it makes more sense to build a new VM running the latest version of Windows and move Octopus Deploy over to that new server. Is this possible?

(Bob Walker) #2

Yes, that is possible.

First, it is important to note that all the server’s certs are stored inside of the SQL Server database. We did this in case the VM hosting Octopus Deploy was destroyed/crashed/lost. You could spin up a new instance and point it at the existing database and you’d be off back up and running. In order for this to work you need a backup of the master key. The tentacles trust the cert. It will accept commands from the new instance because it is using the same cert.

Polling tentacles are a bit tricky as you will have to change what URL they are pointing to. If you are using Polling tentacles you will need to either update your DNS entry to point to the new server, or tell the tentacle to query another server. That can be done via command line.
https://octopus.com/docs/octopus-rest-api/tentacle.exe-command-line/poll-server

Secondly, Octopus stores files such as logs, artifacts, and packages in the file system. Typically, that is in the C:\Octopus directory on the VM hosting Octopus. Depending on what you are moving and where those are stored you will have to move those as well.

Finally, Octopus includes a migration tool. This scenario, full backup and restore, is not a use case for that migrator. https://octopus.com/docs/administration/data/data-migration.

What you will want to do is what is known as a lift and shift. Essentially backup and restore the database and filesystem onto a new instance. Thankfully our documentation has you covered on how to do that. It is very important both the VMs are running the same version of Octopus Deploy.

A common use case is to stand up a new instance to upgrade Octopus Deploy. That is fine, but you should first install the current version of Octopus you are running on the new machine, get that working from a backup, then install a newer version of Octopus. Less moving parts.

Octopus Deploy licenses allow you to have up to three (3) instances running concurrently for situations such as this.

1 Like