How do we change the Octopus URL in a highly-available configuration?

(Derek Campbell) #1

Hi,

We are looking at creating a test Octopus server so we can run Proof of Concepts, test upgrades as well as just for testing new projects separate from Production. In our test Octopus instance, we only want a single node, and we want to use the environment name in the hostname.

In Production, we have a load-balanced 4-node configuration, and currently, it’s set to listen on https://octopus.company.com. We want to change this to https://prd-octopus.company.com and use https://tst-octopus.company.com for our test instance.

What do I need to change in our Production instance to make this as seamless as possible?

Thanks

(Derek Campbell) #2

Hi,

That’s a great question!

Octopus Server Configuration

When changing the URL, there will be a few things you need to consider. You will need to change or set up the DNS records for the new URL in preparation. For instance, if octopus.company.com is pointing to IP 1.2.3.4 and this isn’t changing, then you will need to point octopus-prd.company.com to the same IP. Your new DNS record will need to point to the load balancer.

The next step will be to bind the Hostname to your Octopus Instance for each node in your Highly-Available cluster, and you can do that in Octopus.Server.exe directly on the Octopus Server(s). When you are binding this, you need to also attach the SSL certificate directly to Octopus when configuring the new URL. Unless you are using a Wildcard Certificate then you will need to purchase an SSL certificate from a Certificate Authority or generate an Active Directory domain certificate for Octopus to use.

Tentacle Configuration

The next consideration is where it gets a little trickier, and this will be the Tentacle configuration. If you are using only Listening Tentacles, where the Octopus Server connects to the Tentacle, then no further configuration is required.

When using Polling Tentacles, where the Tentacle connects directly to the Octopus server, then you will need to configure these to point to the new URL. We have a page on our site which covers how to do this automatically, and this is on https://octopus.com/docs/infrastructure/deployment-targets/windows-targets/automating-tentacle-installation#AutomatingTentacleinstallation-Example:PollingTentacle.

We would recommend looking at https://octopus.com/docs/administration/high-availability/configuring-octopus-for-high-availability#ConfiguringOctopusforHighAvailability-ConfiguringHighAvailabilityPollingTentacles as if you choose to re-register your Polling tentacles, then you need to register it with each Octopus Server.

The reason you need re-register the tentacle is because the URL it will be trying to connect to will no longer be pointing to Octopus. A possible way to mitigate this would be to keep octopus.company.com as an alias, and that way, you won’t need to reconfigure the Polling Tentacles to the new URL.

Please let me know if you have any questions.

Thanks