Those of you that use clustering, how many machines have you found useful to use in your sites? I'm hoping to find some examples and best practices for how and when to use clustering. Could you describe your deployment scenario and typical loading?
Just getting into the clustering game. We have 4 virtual servers clustered together. Each server with 4 cores. Then, 2 servers clustered together at 8 CPU a piece.
I would like to have them all in 1 site, but I've run into some instability with having multiple clusters. Especially when having the caching tools on a cluster other than "default".
For this reason, I'm staying with 2 sites, 1 cluster per site. If you can do it, I would put everything on 1 machine until you need to add another machine, unless you need redundancy.
We use a 3 machine, 2 cluster site. The gpCluster, renamed from 'default' back at 10.1, hosts the CachingTools service, and any other custom task or custom gp services. All other system and utility directory services - CachingControllers, Publishing, Reporting, Printing, Seach Indexer Tools are hosted by the 2-machine mapCluster. Other than the CachingControllers tools on the mapCluster, we moved the other services and tools to the mapCluster as they are all related (mostly) to the 80-odd map services we currently use.
If I had to do it over again, I would have left the gpCluster name as 'default'.
Each server has 32gB ram, with 8-cores (hyperthreaded) and talks to our 8-core, 16gB ram file server via a one 1gB network config. Currently the file server hosting the system and stores directories is utilizing a local array of raided (raid10, I think). The database tier talks to the san via fail-over nic cards.
We have ESRI coming to perform a health check soon, as even with all this horsepower and (supposed) bandwidth, I at times have (or had before 10.3 - still testing) great difficulty managing services under load with out them timing out and leaving locks.
Does ESRI have some best practices or suggested set-up information as part of the health check? I'd be interested in any of the things they find as part of your check-up.
Hi Brandon, it was actually fairly basic questions regarding set up. Let me find the questions and I'll post back to here (I'm in the middle of a desktop refresh)
We have 17 servers arrayed into a D,T,P setup with the production cluster having 6 virtual servers balanced through F5. It is awesomely powerful. We remove two of the six in the production cluster to form our temporary test cluster and then return them to service when done.
Good discussion. Things I often think about when considering these issues are: - Are the servers physical or virtual? - What are you clustering and why? In other words, are you clustering a DB server, an app server, etc.? And are you looking for uptime in case of HW failure or scalability for peak loads? - I often approach this issue in a similar manner to that used when determining number of CPU cores in a VM server – Do the minimum and measure. So, configure just what you need to meet the metrics you have developed then monitor the stats and see how things are going. In general, the more servers you add to a cluster the more server resources are consumed just to “service” the cluster. - Consider how much load will go on a single server instance if a cluster fails-over to just one instance...make sure that you can live with the performance you might receive if one server is doing the work of two in an outage. If both servers are throttling along at 50% utilization, then one server might approach 100% utilization during a fail-over event. Probably not a good idea. - Don't forget to appropriately scale the individual servers as well
Retrieving data ...