Server Names For a New Generation
itwbennett writes "Server naming is well-trod ground on Slashdot. But as new generations enter the workforce, they're relearning the fundamentals of what makes a good scheme. Can servers named after characters from The Simpsons or The Howard Stern show stand the test of time? If you name your servers after the Seven Dwarfs, can you have any doubt that Grumpy will cause you trouble? Striking a balance between fun and functional is harder than it seems."
from the tempting-fate dept.
Make it so.
Calling someone a "hater" only means you can not rationally rebut their argument.
At my startup company, we named servers after notable videogame characters. It was quite nifty when we had three servers; it stayed fun for years. But when we reached 30 servers, gradually problems crept in. One machine needed to be rebuilt and the name kept getting reassigned. Similar names were confusing.
Server naming schemes are cute until you outgrow them. Hint: Determine for yourself when you outgrow them. We now name servers by their function and their sequence number.
I know the Pokémon names are going to get old fast.
Star Wars, Star Trek, even Battlestar Galactica are great sources for names. JigglyPuff is NOT a server name!
The preceding post was not a Slashvertisement.
I name my computers, VMs, and bots after female characters (Inara, Padme, Daenerys, Trinity, etc). It originated from a long forgotten time when I can't get laid.
Indeed. After years of enduring networks with servers with tree names or GI Joe character names, when it came for me to come up with names for my servers and other network devices, I came up with functional names that describe physical locations, departments, functions, and so forth. That way I have a descriptive network rather than trying to remember which one of the Power Rangers the last IT guy liked the best.
The world's burning. Moped Jesus spotted on I50. Details at 11.
Or you could name them after Linux distro's those are almost infinite to.
You're in deep trouble when you build an ESX cluster. Then you'll have blue-1 running on the ESX server red and blue-2 running on orange.
There can be a naming standard that is applied to all devices, network, servers, storage, so on, that help simplify how an IT organization works. This has to be driven by management.
Naming things by some arbitrary set of characters from your favorite story does not scale well, to say the least.
Lets create a standard that scales like a mofo:
ie, SJN1FIDBSW0001 ,logical identifer (0), physical device # (001)
The goal would be to have each device identified by a location (SJN), location code (1), businessorg (FI), zone (DB) device type (SW),
The problem with that naming convention is you get very similar named servers, which might only differ by a single character in the middle of a hard-to-scan blob of text.
On colleague of mine has managed to flatten a production oracle server because he connected to the Manchester one, not the Washington one. The difference was embedded in the middle of the all-caps dns. Several people have restarted services on the wrong server too, again a single character difference in 15.
Since then I've instituted a policy of changing PS1 to prepend the hostname with the location in plain text.
When it comes to outside addressing, heigherarchial dns and cnames allow easy addressing. oracle1.washington.mycorp.com, web1.gaza.mycorp.com is fairly clear where the box is and what the function is, and when it comes time to reassign functions, you just update the cname.
"The Naming of Servers is a serious matter,
... those being DNS entry, IP, and the one which "the server itself knows, and never will confess."
It isn't just one of your holiday games.
You may think at first I'm as mad as a hatter
When I tell you a server has three different names..."
"The Greens lynched a hacker in Chicago. Last month, but I think the body's still hanging from the old Water Tower."
Some names will stand the test of time. A box with two monitors should of course be named Zaphod.
I Don't Work Here
Nailed it.
With servers being generally virtual these days, and the underlying physical hardware a highly replaceable substrate, there's no reason for an enterprise to have serves which do more than one thing. If a server does only one thing, it ought to be named for that one thing.
mailserver-eastcoast.example.com
Where is that machine? Somewhere in the blade cage. If I yank the blade, it'll appear in a few seconds on another blade. Where is the data? On the giant fiber RAID, which is replicated in the west coast office, and two secret locations.
Compute is a cloud, storage is a cloud, services come from that cloud, the clouds made of physical devices in as many locations as make sense.
The old physical network topology is finally just the nerves and pumps, and no longer the focus.
The focus is the data. The data is what we produce to make value, to drive the business process. Servers aren't special anymore, they're like hammers. You don't name hammers, typically. But you might have more than w=one, and you definitely want to know two things: where is it, and what is it for.
All the technology in the world won't hide your lack of vision, talent, or understanding.
The problem with naming servers after their functions is that in most shops, a server does more than one thing. And they often get moved / repurposed / whatever.
So that machine that's now ldap-ny-02? Well, last week it was web-ny-05. A couple months from now, are you going to remember that name change, and that web-ny-05 had that flaky power supply / fibre card / etc?
Oh, that service that had been running on lasco05? We moved that to the 'new' lasco03. (and there have been how many machines named lasco03?)
I've worked in a lot of places, and these days with clusters, virtual hosts, etc, you often have a different public-facing name (which will get used when people call in a problem ... how are they to know that some service is 5+ machines behind a load balancer? Or that all of the web sub-domains are really on the same server? Even if you don't plan for the abstraction, it already exists due to these different aggregations.
If you give the hardware one name when it comes in, and only use aliases for each of the public services, you don't have to worry about recycling names just so there's no service interuptions. ... and, true story, I've even worked in place with a machine named 'teller' after Edward Teller (the last article), as all of our mail servers were named after scientists ... but when I moved it for testing, I renamed the pair for that cluster to 'penn', and we later added a 'copperfield' and 'houdini' ... but we had to scrap the physicist names when our director didn't believe us that the spam filters weren't rejecting his e-mail because it was going through a machine named 'lovelace', and it was named after Ada Lovelace, not Linda Lovelace.)
I've worked with machines named after cheeses, spices, cartoon characters, music albums, movies, adverbs, muppets, states, rivers, tv-characters, the boss's family, periodic table, hashes of the service/location/os, astronomical phenomena,
Build it, and they will come^Hplain.
I joined a company with over 500 servers and a really incoherent naming scheme - or lack of. I could talk for hours on how you built a name out of a class hiearachy which also matched its class in puppet, but the dual naming them was a win. Basically it works like this:
When servers are racked up, they're just numbered, with a TLA for the location they're in based on nearest airport code.
lax-001
lax-002
lax-003
That name is PERMANENT unless it gets shipped to a new location. It also gets assigned an IP right away. But so far a bit meaningless. then it gets assigned a function
foo-web-01 CNAME lax-002
mail-02 CNAME lax-003
bar-db-06 CNAME lax-004
This has a couple of huge advantages, namely:
1. When a guy in the datacentre asks you for label names to rack them up, you just say "just number them 45-67", and they get on with it before you've even assigned them.
2. No re-labelling
3. You can look up the "meaningless" name just using DNS
4. You have a numbered inventory
5. With a bit of work, you can pre-assign IP addresses to servers before they've even turned up and get the network guys to tag them straight in to the switch on arrival
I wrote my first program at the age of six, and I still can't work out how this website works.
At the company I work for (large international corp) we have a logical name and a friendly name. The logical name helps identify where the machine is geographically (country, data center, unit) and the friendly name which is given out to everyone, which can be whatever name was requested, as long as it is suitable. This way you keep both the network team happy (you can tell from the name where to find it) and everyone else too (they have a name that is easy to remember).
In the case of virtual machines and blades there is another logical naming scheme, adapted to the context.
Jumpstart the tartan drive.
I'd rather take this a step further and name them after viruses.
Smallpox.
HIV.
Ebola.
Polio.
"Lack of speed can be overcome. In the worst case by patience." --Znork