9

Possible Duplicate:
Naming convention for PC in a network

What naming convention your organization uses for identifying computers within the organization. These are internal for the developers' desktops, server, etc. We are about to buy many new desktops and laptops. A few schemes I can think of:

  • companyNamePrefix#### : like so02, so03).
  • city names.
  • location prefixes.
  • role specifics: sourceControl.domain.com.
  • use configuration (ps01xp3, ps02ubuntu10).
1
  • 1
    Should be wiki, as there can be no correct or wrong answer (although some are just plain hard to work with). Jul 18, 2010 at 23:16

10 Answers 10

9

Our servers have two names; a physical one and a logical one. The reason is that cabling doesnt care what a server is, just where it is; and logical names change more frequently than position.

Our physical names are composed like this;

Country code, data centre name, rack, blade enclosure/U-position, blade slot. i.e. 044THDBA410211 is in the UK (044), data centre called THD, rack BA41, blade enclosure 02, blade slot 11.

This way all cabling and labelling can stay in place for the duration of the server's life.

Then the server gets a logical name that typically states the platform it's part of, its OS and it's function but not its location as that will frequently change.

For VMs we just look in vCentre to find where it is, for physicals and VM hosts we simply have a lookup web page.

This works for us as it fixes a lot of the problems we've come across elsewhere.

7

I've had nearly ten years of experience with this, and I can tell you that embedding metadata in the hostname will lead to problems.

Hostname's are inherently difficult to change in the real world. Software applications embed them in strange places. Case in point, the MYSQL grant tables.

Pick some theme with a large number of proper nouns which have nothing to do with the systems and just pop them off the stack. These names should then be keys into a proper database containing metadata about the host.

Common themes are gods and goddesses, characters from your favorite TV show, artists, albums, songs, etc...

If you name you machines based on physical location in the datacenter, you will have nothing but headaches as soon as they move physical location.

If you absolutely must store metadata in DNS, use a TXT record rather than the A record.

3

There are many different schools of thoughts on how to assign a host name. There are also many considerations. For example, the hostname on a windows machine cannot be more that 15 characters. Also some switches (old cisco ones IIRC) used to have a problem with 12 or more characters in the hostname.

There are also other considerations when naming a machine. One may be a security issue, i.e. don't put windows, linux, sol5.2 or any identifiable information in the hostname that a casual observer would learn very quickly. While it in fact does nothing (nmap can determine the host os type) its just a good idea.

This has to be also pragmatic in implementation if you have lots of machines, you are going to need to be able identify what it does and whom is owner really quickly from say DNS reverse lookup. So this means you have to have common information shared amongst your admins.

The big thing here that you should achieve is uniformity across the enterprise and agreement from all the admins as to what the conventions are.

The current host name schema I use is;

aa-bb-cc-dd-ddd.domain.net

AA This is a two letter short code to identify the company whom owns the asset. In this case we'll give it MC for My Company

BB This is a two letter short code to identify the site the machine is located on OR the service provider whom hosts the machine. Here we run the computer in a site call Super Center so we have assigned it the short code SC. This could easily however be a two letter iso country code or even another companies short code.

CC A two letter short code identifying the role of the machine. These role designations are agreed by all in IT operations before assignment otherwise you end up with different meanings. In this instance we are assigning DM for database master but we alos use code like VJ for virtual jboss, or wk for workstation.

DD This is the customer identifier and may be a combination of letters or numbers. We'll give the 01 in this case

DDD Node number

So using the above a typical host would be

mc-sc-dm-01-010.domain.net

Thus I can derive form this host name that machine is operated by my company, located in super centre, its a database server, a master, serving the needs of customer 01 and they have 10 hosts that are database masters.

If your being observant, there is a problem with the last part of the hostname formula. The customer number cannot be more that 99 or z9 and the nodes can be 999. We have proposed altering this so that the customer can be 3 digits and nodes 2.

However, we also get the joy of being able to do neat tricks such as using the host name to determine what puppet should do with the hosts configuration (apply a common hosts file to all machines in my-sc for example)

The main thing here, is find whats right for you and what you can live with on a daily basis.

3

The naming schemes i've seen so far:

For developer workstations

<City><EmployeeID>
ny347 // Employee ID 347

This is also similar to the login account of that employee.

<City><Physical|Virtual><Linux|Windows><Department><Counter>
nyvlpro01 // New York, Virtual Machine, Linux OS, Products Departments, Machine 1

Other schemes also differentiate between development, test/qa and production environments, such as:

<Nickname>-<Dev|Test|Prod|>-<Clusternode>
foobar-prod-1 // machine called foobar, for production environment, cluster node 1

Others use the name of a dedicated software, such as

<Softwarename>-<Dev|Test|Prod>
wiki-dev // The Wiki for the development department

Or combined:

<Company><Country><Software><Environment><Node>
INUKDBD1 // INitrode, United Kingdom, Database, Development, Node 1

Or distinguishing for the role of the machine in home offices

<Role><Number>
SE001 // Server 1
PC001 // Desktop PC 1
0

(L || D)-(000-999)-(software)

So the first laptop with XP3 would be L-000-XP3. The first ubuntu one would be L-000-UBT. It's flexible and provides an easy structure, much better then {companyname}01, 02, 03, etc.

0

Well I'm not in IT, but here is what we do at work:

  • City Name Token
  • Completely arbitrary ID number

So it would look something like: nyork56789087

Not very pretty, but somewhere, folks in IT can look into a database and get more information about that computer.

0

Operating system code, plus asset tag number.

Knowing what OS it is is helpful when/if trying to connect remotely. You can get city (hell office location if not actual desk) from your CMDB by looking up the asset tag number.

So for example XP4640, WS5000, Vi5020, OSX6088

0

I've only used two different schemes, depending on the scale of the operation. For a small company, such as where I work now, each machine is named after its user. I'm fortunate enough not to have any duplicate names.

For a large global network the scheme was CC-COMP-HOST, where CC is a country code, COMP is a company code and HOST is the machine name. Servers were named sequentially and workstations had a combination of a two character department (or city for small offices) name and as much of a user name as could be fit in.

Unlike others here I much prefer to be able to immediately identify a machine and its user, as well as the location, and am more than happy to rename machines when staff changes, rather than put up with a cryptic and hard to work with arrangement. Of course that won't work in all situations but has worked very well where I've worked.

0

For workstations, use serial number or asset tag number. They are almost always obtainable from the BIOS. We use a few prefixes... "w" for PC/workstation, "n" for laptop/notebook, etc.

I've worked with a bunch of naming schemes that tried to embed too much information in the hostname, and they are almost always a nightmare. Stick to server function, location and a series number and build from there. Simpler is better.

Whatever you do, stick with it. When someone insists on naming a PC or server after Egyptian Pharaohs or something, make a stink about it.

0

We here (small company) are giving our servers (most of the time) fantasy names (eg. torbie was our fileserver). Sometimes, they get names regarding they're use (eg. testing1 and testing2 for our testingservers).

We are working a lot with aliases. Fileserver torbie got (as an example) the aliases fileserver, dbserver and timeserver, because he served SMB, MySQL and NTP.

Workstation have fantasynames (eg. potter, because that developer likes Harry Potter). For people who are less techie, I set the hostname to his username (John Doe would own the laptop jdoe). Because Laptop have multiple interfaces like wlan, John's laptop would also get jdoe-w pointing to his wlan-interface.

2
  • 2
    That's a real bitch to maintain when jdoe leaves and hands his laptop off to his replacement. At least, in the ideal scenario where your workstations/laptops are generic enough that they don't require a rebuild between users. Jul 21, 2010 at 10:12
  • Hi Chris. Since our workstations are highly customized to theire users needs, we do have to reinstall them anyway. And changing hostnmes is not such a big deal Aug 17, 2010 at 6:34

Not the answer you're looking for? Browse other questions tagged .