Major Web Hosting software updates – In Flight!
Refuelling an aeroplane while in flight is a major feat of engineering that, despite its complexity, was first carried out way back in June 1923! While this test was successful, mainstream systems to facilitate aerial refuelling didn’t become available until the late 1930s. Then, in Feb/March 1949, Lucky Lady II made the first non-stop around the world flight by refuelling 4 times while in the air.
I had thought that was a great start to a post, until one of my colleagues pointed out that what I’m about to describe is more like changing a wing in mid-flight. Unsurprisingly, a quick Google tells me that hasn’t been done yet (please do comment if I’m wrong!). So that’s where my metaphor crash landed. So, what does it have to do with hosting?
Well, over the past 7 weeks we’ve carried out several major server software updates on our managed Web Hosting service, with only a few minutes of disruption!
We took off by upgrading MySQL, which had recently reached end of life. As well as upgrading, we also made the switch to MariaDB 10. This process did result in a few error pages here and there while the MySQL service was restarted at various stages – let’s call that turbulence – but overall, the flight was very smooth indeed. Following a little tuning and fettling, we quickly started to see the performance benefits, not to mention the all important security updates from running a supported version.
Second, we upgraded Apache and PHP. This was likely to be the most disruptive change given the changes in Apache (though not overly extensive). We wrote our own script to catch and fix any known apache directives that were likely to cause issues. The other potential issue with this upgrade was the possibility of PHP compatibility issues with old code. Thankfully, we have a PHP Selector, from CloudLinux, that allows customers to roll back PHP of their account to a security patched older version. In total, I’ve counted 6 reported issues out of over 450 accounts – all were very simple fixes. I think we can call that a successful landing.
Finally, we switched from cPanel’s EasyApache 3 to their new RPM-Based EasyApache 4. This was where we saw the most overall service disruption. When you consider what the upgrade was doing, that’s no surprise. The process basically had to remove Apache/PHP completely and then reinstall it using a completely different mechanism. Following this automated process, we then had to add our own custom configuration before websites integrated with single sign-on started to function again. Despite how difficult all of that sounds, the whole process was over in a matter of minutes.
I think the moral of the story here is that these very complex upgrades were made to appear trivial because we’re using the right tools for the job. If we were to attempt these manually on a standard LAMP server, each one would have taken considerably longer and would’ve been nigh impossible to accomplish with little or no downtime. We’re using cPanel and CloudLinux, software that has been specifically designed for this purpose.
Further information on what the Web Hosting service offers is available at: http://edin.ac/1M84TM3