Friday, December 19, 2008

Cluster Management in WSO2 Carbon

This week I've been working on the cluster management Carbon component.
The definition of a cluster changes depending on the application & context. In this case, a cluster refers to a collection of groups of members, as indicated in the diagram below.

| |
Group1 Group2 ...
| |
------------ ------------
| | | | |
M1 M2 ... M1 M2 M3 ...

At the time of writing this blog, you can manage several groups. The entire cluster or a selected group can be shutdown or restarted. You can also switch the entire cluster or a selected group to maintenance mode. In this mode, none of the members will service client requests. Configuration changes can be done while the cluster or the group is in maintenance mode. Once these changes have been successfully made, the cluster or the groups can be switched back to normal mode.

You can use the cluster management agent's front-end to connect to the backend of any selected member. Here are some screenshots. Note that this is still work-in-progress.

Figure1: Cluster management page showing group information & other actions

Figure2: Gracefully shutting down the cluster

Figure3: Members in a group

Figure4: Logging into the backend of a member using the frontend of the cluster manager

So there is no need to run the front-end of the Carbon admin console on production machines.

Figure5: Cluster manager (top half) with 4 members in 2 different groups (bottom half)

Now Axis2, Synapse, WSO2 WSAS/ESB/BPS users have got a GUI for managing a cluster :) Please provide your valuable feedback & suggestions to further improve the Carbon cluster management component. Here is the code. Patches are welcome.
Post a Comment