Modelling application server clusters

Post Reply
stfkbf
Posts: 1
Joined: 17 Aug 2009, 19:19

Hi

There is a description for how to model server clusters (a node with nested nodes). How does one model clusters at the application level (for instance a cluster of application servers in which the physical servers/machines do not form a cluster)? There does not seem to be a way to nest Infrastructure Software instances in a similar fashion?
User avatar
jonathan.carter
Posts: 1087
Joined: 04 Feb 2009, 15:44

Thanks for this very interesting question.

The approach described in the tutorial also applies to things like virtual servers, so you would create a node that is actually a virtual server and deploy software to it in the normal fashion and of course, such virtual nodes are contained in the physical node that represents the virtual server host.

However, for things like application servers, we take a slightly different approach for things at the Software Infrastructure level. Rather than defining containment between the application servers in the cluster, we define a dependency (using the Is Dependent Upon Technology Instances slot) between the physical Infrastructure Software Instances for each of the application servers. This gives us a lot of flexibility in the meta model for accurately capturing the dependencies between the physical software elements involved that vary depending on which application server you are using, how you have configured it etc.
I have used this very successfully for modelling and reporting on just this sort of clustered application server - and clustered, separately hosted, database servers. Using this approach, I could also capture the fail-over relationships between the elements in the physical deployment architecture, e.g. one application server's production database was the other application server's fail-over database and, of course, the database's had fail-over dependencies that needed to be captured too.
Note also, that these dependencies span physical nodes, just as you describe, so the actual nodes may not be in a cluster but we can capture the dependencies that exist from the cluster-configuration of the infrastructure software setup.
One of the reports that is shipped with Essential Viewer (e.g. the Application Module Report in the Project Delivery or Architecture Governance areas) then reports on what software is deployed on a node and then explore the dependencies that these software elements (infrastructure or application software) have on other physical technology elements.

For an example of how this is used (although not specifically for clustering application servers), see the Sample Repository and look at the Infrastructure Software Instance that is called:
AdvWebsphere8.Live::IBM Websphere 8 as J2EE App Server::on::London.Advantage.AppServer1::Live
Hope this helps but please don't hesitate to get back to me if you'd like to discuss this further

Jonathan
Essential Project Team
Post Reply