Slashdot Mirror


Server Naming Conventions?

Some random reader sent in: "Hi, I'm wondering what others out there use for server naming conventions. Our data centre right now houses a little under 200 servers, with plans to grow up to 4000 servers within the next five years. We'd like to pick something flexible and easy to manage with any tracking system. The servers we'll be implementing include SUN, HPUX, and AIX servers, in addition to existing Compaq and HP Intel servers, so we'll have to adhere to limitations placed on hostnames by manufacturers (ie HPUX lets you have an 8 character hostname)." We had a similar story a few years ago.

The reader continues:

"Here's a few ideas we've been tossing around, using Joe's Deli as an example:

- [four letter "name"][two letter service type][2 numbers] eg) jdelwb03.domain.com
+ easy to determine the function and name
- hard to remember and pronounce, once you run out of four character servers, determining the name and function will be difficult. Joe's Deli and John's Delivery will have conflicting names

- [random combination of numbers and letters]
eg) ak1jop3d.domain.com
+ none really
- confusing.. really confusing. Can you imagine saying to someone "log on to alpha kappa one john omikron peter three delta?"

- [theme based name]
name servers based on a theme, eg Gundam
eg) zaku.domain.com, gelgoog.domain.com
+ easily identifiable - all Gundam names belong to Joe's Deli, easy to pronounce and remember
- hard for a new tech or management (why would they need to know?) to associate to a server

"I'd like to know what others in the tech community use for server naming policies when planning large scale data centres. Also, with data centres located nationally, does the naming convention pose any problems? Thanks."

9 of 959 comments (clear)

  1. Element names work well for a small low-order net by XaXXon · · Score: 4, Insightful

    At my last job, we had ~40 machines in the low order of a class C. We named them after the elements in the periodic table. This gave us an easy naming scheme, and also served as a last-resort DNS system, as the last digit in the machine's IP number was the atomic weight of the element. It was pretty clever.

  2. Why stick to just one domain? by antiher0 · · Score: 4, Insightful

    Why not just do subdomains (e.g. web01.joesdeli.domain.com)? Ease of use... ease of maintenance (due to seperated dns entries). Just plain easy :)

  3. Don't name the machines after what they do by Jeffrey+Baker · · Score: 5, Insightful
    Make the hostname and the service orthogonal. If your machine is just named h0001.sfo.domain.net, you can easily repurpose it from http to imap service. But if the name is http0001.sfo.domain.net, you'll need to change DNS and change the machine's configuration files before you can repurpose the box. Then you'll have to update your ssh authorized_keys and known_hosts files, and any other information that deals with hosts.

    My company is an example of extremely stupid behavior. We have desktop machines named jsmithw2knyc. Anytime the machine is reassigned to another person, moved from office to office, or changes operating systems, the hostname and DNS must be updated. It's silly.

  4. be sensible by furiousgeorge · · Score: 5, Insightful

    Do NOT use cutesy names. (Homer, Marge, etc etc etc). That works fine when you've got a lab of a dozen machines. When you've got thousands it's silly and unmangeable. I know I don't expect I'll be able to remember where one our of 5000 hosts is just because the name is "mickeymouse". Imagine just how functional that is for somebody who's new to your NOC?

    Personally I'd encode them using one or two characters to denote the platform ( i = intel, s = sun, h = hp, blah blah). Then use the additional characters to denote room, rack, etc etc. If you're allowed to use sub domains that makes your life much easier.

    Maybe I'm over pragmatic :) But with that many machines, the biggest problem you have is FINDING the machine when something goes wrong. My company here has a policy that we name machines after beaches --- "pismo" "waikiki" etc etc. Thats all fine and dandy..... until the someone starts screaming "WHO IS RUNNING HOST *LONGBEACH*??? YOU'RE SPEWING OUT CRAZY MULTICAST AND TRASHING THE NETWORK." Our host count is only in the low hundreds, but actually FINDING the offending machine is a big fat waste of time.

    If you absolutely have/want to use 'friendly' names. Give your machines multiple names..... the pretty one, and the ugly sensible one so you can easily map between the two when you have to.

    I hate to use it as an example --- but look at Hotmail when you log in. They are using subdomains and strict naming conventions for there servers. It's the only sensible thing to do..... unless you're trying to guarantee youself job security (and if thats the case and I was your boss and I found out i'd fire your ass for being a moron).

    1. Re:be sensible by Telastyn · · Score: 3, Insightful

      I find that mac addies are more use in this case than hostnames. They'll give you a decent idea of what machine type it is (sun machines will have very similar addresses, and so on).

      Plus most switches have an ability to lookup via mac address. After all, why ask 1000 people when you can ask a few switches? You'll likely just unplug the offender anyways.

    2. Re:be sensible by Lumpy · · Score: 3, Insightful

      why?? if yout I.T. department doesnt keep careful documentation as to the location,name,ip and config of every machine on your network then it's being ran by really un-organized people.

      If poopy-snoopy server starts sending excessive broadcasts, I just open up the trouble ticket system and search for resource name poopy-snoopy.... voila there it is, the person to call that is in control(physical) of that machine, and his cell,home,work numbers,ip address,physical location,hardware configuration, serial number,vendor (then a link to full vendor info).

      Although... what I use is rare.. many, MANY, IT departments are not that organized nor ever take the time to get that organized..

      --
      Do not look at laser with remaining good eye.
  5. That's what CNAMES are for by wowbagger · · Score: 5, Insightful

    You should assign LOGICAL names to services, and then map them into actual hosts via CNAME records.

    For example, we have our servers named after the characters from Cheers - norm, diane, cliff, lillith, etc.

    We also have functional names - smtp, pop3, dns, etc.

    Now, in the DNS records, we have:

    smtp CNAME cliff
    pop3 CNAME cliff
    dns CNAME norm

    As a result, the clients are configured to send mail to smtp, get mail from pop3, but that is mapped into cliff. If we move outbound mail to norm, we just change the cname.

  6. 3 Rules of Device Taxonomy by maggard · · Score: 3, Insightful
    I've seen everything done from rack location to names of famous mass murderers. I've also come across trees, gems and minerals, elements, manufacturers, saints, serial numbers, dates, movie titles, etc.

    Michael's 3 Rules of Device Taxonomy:

    1. What information do you NOT wanting leaking out (write on the chalkboard 100 times "I will never name Payroll's server "Payroll" ever again!") In this case what information could make a Cracker's break-in easier?

    2. What information in a name is going to be most important to the folks working with the servers? Owner, application, model, OS, location?

    3. Finally, what information is likely to remain consistant for the life of the server?
    --
    I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
  7. Subdomain by function by scotpurl · · Score: 5, Insightful

    Create subdomains based upon server function. w.foo.com for web, f.foo.com for file services, d.foo.com for DNS, etc. Expand to two-digit subdomains, *.dx.foo.com or *.w9.foo.com if you need more.

    Skip the themes for individual server names. You can use themes for DNS subdomains, but you don't need to actually name the "gemini" server group *.gemini.foo.com, but you can call the *.g.foo.com server group the gemini group.

    You don't need to throw any reference to the operating system in the DNS name. If you replace a server with one from a different OS (like you migrate your database from HPUX to AS/400 or Linux), then you have to run around to several places and change the DNS name that other boxes point to. It also allows you to cluster mixed operating systems (good for reliability), and to transition from one OS to the other.

    Finally, name your servers numerically as you add them to each sub-function group. Old servers that are slow and coming off lease soon will have lower numbers than higher ones. Just start with A0000001 for the first one in each domain, and go. If there are too many servers starting with A, then be slightly redundant and have the first letter of the server name match the single-letter subdomain. The first DNS server would be d00000001.d.foo.com.