With the upcoming end-of-life for Ubuntu Linux 12.04 LTS, I will soon be upgrading the installed Ubuntu version on all LizardNet servers, which currently all run 12.04.
The plan is to perform a double upgrade on all three servers, first from 12.04 LTS (precise) to 14.04 LTS (trusty), then from 14.04 LTS to 16.04 LTS (xenial), which is the newest LTS (long-term-support) release of Ubuntu Linux available and which is anticipated to be supported until April 2021.
Servers will be upgraded in sequence, starting with minecraft1, followed by phazon, then ridley. Before each upgrade, a full backup of the system being upgraded will be taken to allow for a rollback in case something goes seriously wrong, and once all upgrades on a system are complete I will make a detailed analysis to ensure that everything is working as expected.
As with any OS upgrade, there will be major changes that may require reconfiguration of software and services, and these will only be compounded by the fact that I am upgrading two major releases in one go. Among the changes that I know will be problematic is the significantly different configuration format for the Apache web server introduced in version 2.4 – upgrading the OS will also entail upgrading from Apache 2.2 to Apache 2.4 then updating the existing configuration to be compatible with the new version of Apache. Certain software may also be broken in the upgrade process, especially older software. Such changes will increase the time required to complete the upgrade beyond the time needed to simply perform the upgrade to the operating system components themselves.
Because of this, I am initially allocating a downtime period of 12 hours for each server. The actual time the server and the services it hosts will be unavailable may and will probably vary; for example, during the process of downloading the new operating system files, certain parts of the server will continue operating, and the downtime period may be shorter if things go better than planned, or may be longer if unexpected difficulties arise. As minecraft1 is the first server I plan to upgrade, I will use the upgrade experience on that server to inform my estimates for the remaining two servers, and will adjust the planned downtime periods accordingly if needed.
Because of the extended downtime required by OS upgrades, certain services on servers scheduled for downtime may be relocated to other servers during the scheduled downtime period to ensure their availability; these relocations, if any, will be detailed in each servers’ downtime notification.
Finally, because of the anticipated extended nature of the downtimes, the downtime periods are not set in stone and may change if necessary to ensure that I have enough time to devote to the upgrade task. However, I will do my best to ensure a minimum of 24 hours notice before the start of a downtime, and that all changes occur at a minimum of 24 hours before the original start of the downtime.
This post will be updated with the scheduled downtimes for all servers as they are scheduled, and will also be updated as the upgrades are complete.
- minecraft1.fastlizard4.org: Started at 21:00 Sunday 12 March 2017 UTC, now complete (total time 5.5 hours out of 12 expected)
- phazon.fastlizard4.org: Scheduled for 21:00 Sunday 26 March 2017 UTC, now complete (total time ~12.75 hours out of 10 expected, issues encountered noted in linked post)
- ridley.fastlizard4.org: Scheduled for 20:00 Sunday 2 April 2017 UTC, now complete (total time ~12.5 hours out of 12 expected)
- “Anticipated” because the actual end-of-life date has not yet been formally announced by Canonical; however, for Long-Term-Support releases, the EOL is generally five years from the month and year of release.