6 ms·
There are places were randoms, but related, names make sense, but not as random variables. Naming machine comes to mind: you may want to group machines on a sa
by TacticalCoder 5y ago
There are places were randoms, but related, names make sense, but not as random variables. Naming machine comes to mind: you may want to group machines on a same LAN with names from one constellation, then machines on another LAN with names from another constellation. Or have a little network cluster which is "neptune" and name your few machines after Neptune's moons. Stuff like that.
One of the craziest "naming frenzy" though was revealed during the Enron scandal, where they had created countless shell companies to hide their crimes. They'd name the companies using names from the Star Wars universe: "Chewco investment" after Chewbacca, etc. Hundreds of them.
- CGamesPlay 5y agoI prefer to name them using related hotel room numbers. Machines in one lan get numbers from one floor, machines in another get numbers from a different floor. It’s not as romantic but when we trade places for a day you’ll at least be able to make some sense of the network structure, meanwhile I’ll still be trying to read the almanac.
- Intermernet 5y agoGetting "Being John Malkovich" vibes from this comment.
- Cthulhu_ 5y agoI mean, naming machines is cute on the one hand, but on the other, once you scale up / out, who will remember that Neptune is from finance and the Pleiades is management? Like with microservices, it's probably better to name things for what they do or where they are instead of coming up with aliases, else you have to maintain a translation table. When scaling up - hard- or software - it's better to be clear than clever.
- fennecfoxen 5y agoBest scheme I've seen for a small fleet of development boxes (hardware, not VMs) was naming them after elements. Very easy to determine the IP address on that subnet.
- speed_spread 5y agoI like it but you still have to memorize the periodical table for this to work. And you waste more than half the address space?
- jve 5y agoI'll assume it's a feature to learn periodical table this way :)
- fennecfoxen 5y agoHow many computers do you think we had??
- mileza 5y agoI've seen this multiple times, and there seems to be a pattern emerging. At first, people name the machines after the software they install on it. Then, when you get to about 4-5 machines, you start finding a "cute" naming convention (Constellations, Star Trek ships, mythological figures). As long as there is only a handful of machines, it's easier to remember which machine does what. Then, as you start to scale up, between a few tens to a hundred, finding names gets harder, so you switch to a more standard naming conventions. Something that communicates the physical/logical location and the organizational unit, as well as an index for duplicates / replicas / redundant machines. So I think it's fine to be clever as long as it's manageable. The moment it's going to start getting out of hand you can switch to a more scalable approach.
- andrewla 5y ago"Pets" vs "cattle" is the classic metaphor. When your pet is sick, you take care of it, when "mp-32h-12b" is down you take it out and shoot it.
- dnautics 5y agoyes, of course, we had a small legacy cluster where I named our 36-odd machines after star trek ships. Knowing full well that when we went to a "real datacenter with real racks", the names would be rack-number/slot-number. My big mistake was zero indexing the slots. Never again.
- mungoman2 5y agoWhat? How can zero indexing be a mistake?
- devin 5y agoIf you're the only person who works in the rack, no problem. I worked as a tech and wired up machines once upon a time, ran fiber to core infrastructure, was boots on the ground for any physical access to the rack that was required, etc. I would not be surprised to hear a story of someone counting from 1 from the back of the rack and unplugging machine "7" or something.
- lanstin 5y agoBut then people go from the memorable “Ebola” cluster to asynccompletionloggernodeweb where even with names that supposedly explain the function all the name parts are utterly generic and related to implementation not purpose. Not that people should keep Ebola. It should name services with a little skill and based on purpose not implementation. “Log4JarScanner” not “goAsyncFilerTreeScanner”. Tho the repo name is go-tree-jar cause I suck at names. Another cost of rushing is names it becomes hard to refactor out. At least we have hierarchical dns and longer names now, so it can have he data center/as and not be 8 chars. God bless the people that have name rules like Us1aesas02 - ProcessPostEventNodeDaemonServ-0322.Dallas.internal.example.com is more legible.
- TranquilMarmot 5y agoAt the last job I had, there were a dozen or so microservices named after Greek/Roman mythology. The names were all quite clever if you knew the stories behind them... Eurybates handled inter-service communication, Stentor yelled at Hermes to send out emails, Hephaestus handled our cloud infrastructure, Janus handles some frontend pieces. The problem was that not everybody knew the stories behind them so it got really confusing. At some point we got tired of it and made a very firm "all services going forward must have normal, descriptive names" rule and ended up with such shocking names as "Metrics" and "Authentication". Switching jobs to other startups, it seems like "cute" microservice names are going out of style. Thankfully.
- andrewla 5y agoThis is classic "pets" vs "cattle". At small scale, it's "Frank the frontend is down, let's get him working again because otherwise our users can't do anything", up to "front017.xxy is down, take it out back and shoot it". I wonder if the notion of machines naming conventions being just about where to locate it on the rack, or which AWS data center it lives in, require further levels of abstraction about "pet" and "cattle".
- bitwize 5y agoI wish people would stop talking about cattle and pets. If you have or know someone who has worked in animal husbandry, you know it's a fragile metaphor. My uncle owns a dairy farm with ~50 or so head of cattle.He gave each of them names and when one gets sick, he takes care of it. Of course this is not a big industrial farm, but even so... not even actual cattle are as "cattle" as we're expected to treat computer-cattle -- and thanks to virtualization, computer-cattle are largely pretend anyway.
- unethical_ban 5y agoIt's an effective and well-understood term.
- dkarl 5y agoIt's not only a shaky metaphor from the sentimental aspect, it's a downright bad one from the economic point of view. Individual cattle are expensive, and as a result, it makes economic sense to invest in their care. Even a ruthless person would not let a sick cow go without having a professional take a look to see if there was a way to restore it to good condition, but heartless or broke people often do decline to pay for veterinary care for a pet.
- piyh 5y agoMy relations own a pig farm with 10k pigs, they don't have names.
- octopoc 5y ago
- driverdan 5y agoThat type of naming drives me crazy. A server name should be descriptive and easily understood without context or documentation. For example, "api_1" makes a lot more sense than "proteus".