----------------------------------------
       VPS upgrades
       September 20th, 2020
       ----------------------------------------
       
       Yesterday I upgraded gopher.black. Technically I did quite a bit
       more than that, but that's probably the most relevant bits for you
       gopherites. I have a personal Vultr VPS that hosts this gopher
       hole as well as most of my personal websites, my weechat IRC
       client, an SMS-to-email relay for my old US-based phone number
       that's now a SIP line, my Calibre library, and a whole bunch of
       other nonsense that nobody cares about but me. That was all
       running on a 25GB instance and doing alright, but free space was
       getting a little tight.
       
       The upgrade was set in motion by my desire to start a new
       TildeRadio show. It's called Sci-Fi Radio and will be airing on
       Tuesdays and Thursdays at 22:00 UTC. It's a 30-minute program that
       plays vintage science fiction radio dramas. Specifically the show
       will start by re-airing all 125 episodes of X Minus One, and NBC
       program from the 1950s. At the conclusion of those episodes we'll
       follow up with Dimension X, and then some other programs. I do
       hope you'll tune in!
       
       Anyway, in order to set up this stream I wanted to queue up all
       the content and then automate the playback via a cron job on my
       VPS. That necessitated installing liquidsoap and having enough
       space for all the files. Liquidsoap is a bit of a pain in the ass
       to get installed properly on Ubuntu. It fails to install the
       needed libraries or puts them in the wrong place. I figured out
       a solve for it on my home machine running Ubuntu 20.04, but my VPS
       was still having issues since it was on 18.04. Also, the mp3s for
       the show exceeded my remaining disk space.
       
       So, I decided to upgrade my VPS to a bigger plan! The next problem
       was that I didn't have enough remaining disk space to auto-expand
       the volume with a plan increase. Instead I needed to snapshot the
       instance and spin up a brand new server on a new plan. Fine fine
       fine... So I did that, but my static IP pointing to the old server
       wouldn't release to let me point it at the new one. This may be
       because I chose to put the new server in Amsterdam instead of
       London (I still don't trust Brexit). Or maybe it's a Vultr thing
       I couldn't figure out. I have no clue.
       
       So here I am, restoring this new box with a new IP which means now
       I need to update all my DNS records for the bajillions of domains
       that point here. I logged into NameSilo, which is my preferred
       registrar, and I started the process. I really don't like dealing
       with DNS inside NameSilo, though. For work I typically just point
       the DNS to DigitalOcean for droplets I make there. Why not do the
       same thing for Vultr? So I did that! I updated the nameservers for
       all those domains and painstakingly set up the DNS on Vultr
       instead.
       
       About this time the box came back up and I just had to wait on DNS
       propagation. As that finished I was up to my next step, the
       upgrade to 20.04. This VPS was my 5th such upgrade and it went
       very smooth. I had to manually restart one service and then I was
       just fighting a few odds and ends. The "python" binary was still
       pointing to python2 which was breaking some things. I blew that
       away and also removed python2 completely from the system because,
       "screw that jazz". I manually relinked python to python3 and it
       Just Works™. UFW didn't like the upgrade and reset all my firewall
       rules, so I did a little netstat check and enabled the necessary
       bits there. And then the last bit of work was going through my
       nginx config and patching the few services that weren't showing
       up, like Calibre-web and my URL shortner service at ino.is. While
       I was tinkering I enabled IPv6 for https://tomasino.org because
       I noticed it was missing. I should do the same for my other sites,
       but I haven't bothered.
       
       At this point the only things that aren't up and running are:
       
       - The web interface to my syncthing server on the VPS. Syncthing
         itself is running fine and the data is transmitting fine. I can
         ssh-tunnel into the VPS and see the web interface, but my nginx
         reverse proxy won't work. Blerg.
       
       - My minimal gemini server that was running on tomasino.org. That
         uses ncat, part of the nmap project. When I tried installing
         that on Ubuntu 20.04 it failed. Maybe I'll set up a proper
         gemini server instead, or maybe not. I haven't decided.
       
       Oh, and once everything was updated I was able to install
       liquidsoap and test out my stream for Sci-Fi Radio. It's
       good-to-go for the stream on Tuesday! Woo!