Skip to Content

I wish that Moore’s Law applied to high-availability!


We are designing our new SAP Infrastructure and are in awe of all the new technologies that are available.  CPU’s are significantly faster, storage is less of a bottleneck than ever, virtualization options are very appealing, and networks are seamless.  Unfortunately, server clustering technology is still a kludge and requires a significant amount of scripting and hardcoding.



Wish list

In my dream world, there would be a bottle of Caymus Cabernet Savignon on every table and every data center would contain a pool of server resources – some active, some not, and in the event of a failure, the clustering application would automatically find a new home for the failed server and start the failed server on this new home.



At a high-level, all of the clustering products claim to do what I am requesting.  Unfortunately, when you dig into the details, you find that much of the clustering has to be pre-determined – in other words, if you want Server A to be able to failover to Server B, Server B must be primed ahead of time.  This becomes a logistical nightmare and requires a much larger server footprint than necessary.  Here is an example, assume that you have two servers named Server A and Server BServer A contains 10 virtual hosts – 1 host is an ERP database and CI, 1 host is a Portal database and CI, and the other 8 hosts contain dialog instances for the ERP and Portal systems.  Now assume that Server A crashes.  In order for Server B to take over for Server A, it would have to be pre-configured with 10 virtual hosts that look very similar to the 10 virtual hosts that were on Server A at the time of the failure.  This creates a very complex relationship of primary-to-failover servers.


Challenge to Vendors

Please, please make your clustering software smarter!  For example, why not design the software to act like this when a server crash occurs – “omg, Server A failed, let me find resources on Server B and dynamically create 10 virtual hosts and rezone the shared storage so that I can run Server A’s virtual hosts on Server B”.   



Am I asking for too much here?  How are other large companies dealing with this?  Do you include your dialog instances in your clustering design?  Do you pre-install your dialog instances on your failover servers and only activate them if needed?

1 Comment
You must be Logged on to comment or reply to a post.
  • Hi Joseph,

    I think there are some technologies out there trying to do what you describe. It’s really the next evolution of Cloud and Virtualization. The Applications running would have no sense of what physical hardware they were functioning on, and additional nodes could be spun up or wound down based on capacity needs at the moment. Take a look at what the folks at Heroku are doing:
    It’s very similar to what you describe, but is it really ready for something as heavy as SAP? I doubt it.

    Great post!