We are busy creating a server hierarchy manager (possibly not the greatest name). What this is intended to do is determine which of our servers is the best for doing work. We have identified the following points as the most important criteria which we would like to base our decisions on:
- No of cores
We had considered including architecture, however with the amount of RAM we will likely be using in our x64 servers the amount of RAM should be able to indicate the architecture too.
Considering the example of having 3 servers available running on different operating systems, different amounts of RAM, different numbers of cores etc. how would we figure out which is the best server to designate as the "primary" server? What we have considered at the moment is creating a simple metric whereby each section (RAM, OS and cores) is represented by a value out of 1 (where 1 is our recommended requirements) and comparing the servers this way. Is this a good approach to the problem? Does anyone have any better ideas or know of any tools that can assist?
EDIT: Let me explain further. These servers are basically just processing engines. They will all talk to the same DB. The scenario is this: We could remove or add servers at any time, say for example the primary, and the rest would have to figure out amongst themselves who the primary is. When the primary is readded the hierarchy should realise that there is a new primary again. We have the mechanism for this in place already. My question is with regard to the metric. In terms of determining what would be the best primary server, are there any other relevant factors to consider?