Buster deprecation

Fremantle

· system administration ·

It's operating system upgrade time for various servers that I help run (Debian Buster is EOL). I'm not a sysadmin by any means, and while most of it I feel roughly comfortable with I usually get stressed because of all the things that I dimly know about, but which I know that I don't know at all. Mainly around the whole idea of orchestration and being able to nuke and recreate an instance without a care in the world… the servers I'm trying to upgrade this weekend are not like that at all.

They're individual bespoke configurations, I guess: mostly Apache web servers with a single PHP application, possibly needing a MariaDB database (which is sometimes on the same machine). The thing about upgrading these is that the OS upgrade generally includes changes to default Apache and PHP (and other) configuration and so my server-specific config files also need to be changed. This is usually good: things get simpler, and out-of-date config that I've added over the years gets reviewed and removed or improved. It also makes me glad that I haven't bothered with orchestration! (All the non-private server-specific config gets added to a Git repo and symlinked into place.)

My approach to building PHP applications is I think becoming old fashioned: it's the idea that you don't have control over the server environment in which the application is running, so installation should be as easy and robust as possible. This is sort of still how we tell people to install MediaWiki (e.g. "download a tarball and put it somewhere") but with the addition of various other semi-essential services and things it becomes tricker. Most people these days solve this by using Docker for the standard install process. This provides everything neatly in containers that the developers control, so your application no longer needs to care about things like PHP versions.

The old heterogenous target idea still exists though, so I feel like it's still necessary to make things as easy as they can be to install 'manually'. Mainly out of self-interest, so when it's time to nuke a VPS and move things to a newer one, it only takes a couple of hours of learning and tweaking.