All seemed good at first, Amazon’s infrastructure gave me better ping times than others, but I noticed that mysql was going away from time to time. Tailing the system log I could see kernel out of memory messages and that it was killing mysqld. You see entries saying "OOM". The kernel kills the process that's using the most memory which tends to be mysqld.
My first thought was to increase the RAM but there’s no simple way to do this on Lightsail, you must take a snapshot (backup), make a new instance with the new memory and build it from the snapshot. When all is up the external static address is simply re-pointed to the new instance and the old instance can be stopped. This isn’t at all difficult but it seems like something computer software should do.
After upgrading the RAM it dawned on me why Linux was running out of RAM - Lightsail instances have no virtual memory! It turns out there’s no easy way to add a swap partition and they actually warn that if you did it would be too slow.
Paying $10 a month for a Lightsail instance with zero virtual memory becomes uncompetitive with my old favourite Linode who offer 1GB RAM and 30GB SSD including VM for the same price.
So, I’m back on Linode and frankly happy to be there. Amazon is a gorilla in the hosting game but their offering is incredibly complex and, it turns out, has some little gaps.
I realise my home use is at the very low end but, as the song says, “from little things, big things grow”.
Not having any virtual memory is a major problem for any real server.