An early lesson I learned as sysadmin for a multi-machine network is that renaming a computer is a pain in the ass. So much so that it's rarely worth the effort.
Rookie mistake number one is to name servers based on their role. This makes it very easy to figure out which computer does what, sure, but what happens when you need to repurpose the server? Or add more roles? All of a sudden your file server is now your redis server and you're banging your head against the wall because you named it file-server-01.
Another rookie mistake is to name it by location. This is better, but computers can and do move. In the cloud it's not so bad, but regions are generally very large so you're going to end up using a ton of numbers: mycorp-aws-west-392.
Here's how I like to do it. Pick a theme, something totally unrelated to computing, and stick with it. One of my favorites is to use Mario villains (much respect to Nintendo!). It's very memorable, and the role is no longer part of the machine name. Plus, it's totally fun. If you have physical boxes, go right ahead and slap a sticker on it. (For physical VM boxes the VM host itself should have its own name. Don't start slapping stickers on for each guest container or you'll end up with a sticky mess...)
Edit: Some have pointed out that you'll run out of names in large deployments. I would like to add that you can always mix-and-match names (docker does something like this for containers): mario-bowser-pikachu.
If you end up using video game characters, chances are you'll come across pixel art sprites for the names you choose. For extra fun on Linux hosts, I add a pixel art representation of the hostname to /etc/motd so that every time I log in I get a nice graphic representation of the box I'm logging in to.
The script I used to generate that is available as a gist. It's pretty simple to use, and uses a color lookup table to find the closest ANSI color code so it works great with most images (just keep them small, like around 48x48).
I do something similar for naming server roles (specifically Docker containers), but that's a topic for another post...