With Ubuntu 20.04 on the horizon, Ubuntu Server upgrade considerations are on my mind. My experience of release upgrades with Ubuntu desktop is less than desirable. Moving from Ubuntu server 18.04 to 20.04 will be my first experience using Ubuntu Server.
One option I am considering is setting up an entirely new server with a failover IP address. However, this would require changing the DNS entries. Changing the DNS entries could cause a period when people could not connect to my service. Looking towards the future going down this route offers a clear advantage. My server would already be established using the failover IP, allowing me quick service moves. As the service grows, this would allow for easier load balancing between servers too. Cost is a clear disadvantage, beyond that one-month rental, I will have no use for the new server. Setup fees and a month’s rental would be totally attributed to the cost of upgrading.
Performing the release upgrade, if it works is the simplest and quickest approach. If there are issues in the update process, I will then face the choice between attempting repairs (with an unknown period) and installing from scratch. Based on my experience with Ubuntu desktop, this is a likely outcome. Indeed, if installing from scratch is highly probable it would seem prudent to install from scratch initially.
Installing from scratch without even attempting the release upgrade must be considered. Working this way, I will know what processes to expect and how long they will take. There will be no need to invest in another server, meaning there are no costs beyond the downtime.
Before making the decisions discussed above, I intend to duplicate the software setup on the server on another server I already have. The hardware is different; it is not good enough to support my main service with active users. The comparison will not be like for like; differences in drivers could still arise. Overall though I should be able to get a similar upgrade experience before making my decisions about the live server.
In retrospect, I should have set up the live server on a failover IP before making it live in the first place. Unfortunately, being my first server offering live services to users, I didn’t even consider this issue at the time. Perhaps the importance of getting that set up for the future should override all other concerns anyway. Future-proofing Ubuntu server upgrade considerations.