I think in the current version of JBoss 7 (7.1.1) it's pitty that the startup order inside a domain is important and it's hard to ensure this in a distributed environment.
Our requirement would be to start a slave host controller and a master domain controller independantly from each other, without caring about sequence and order.
I tried the following scenario with JBoss 7.1.1.
- Start Master DC
- Start Slave HostController with backup option
generates the following file in directory jboss.domain.config.dir domain.cached-remote.xml
- Stop Master DC
- Stop slave HostController
- Start slave HostController with --cached-dc option (now slave HC should start without a running master DC)
Looks OK slave HostControlleris starteable. Reads its configuration from domain.cached-remote.xml
- Now Start Master DC
Problem: Slave HC is not registering itself on the DC, modification in the master domain.xml are not propagated towards the slave HostController, slave HostController is not visible in the management console
I see several issues with this approach
first of all it is not possible to start the slave hostcontroller with both option --backup and --cached-dc together (there's already a JIRA bug existing see https://issues.jboss.org/browse/AS7-4281) So startup options differentiates whether the master is running or not (we would like to automize the startup of JBoss host controllers (e.g. when a server is booted in the init.d all JBoss host controllers are started, and therefore the command options should look always the same and not differ dependant on the current status of the master host controller).
I think it's a good feature that the slave host controller does not need a running master host controller at startup. But I would have expected, that the slave host controller is so smart to recognize when the master is finally available. The basic idea of a JBoss domain would be (as far as I understood) to manage everything by means of a centralized approach, but this is than not longer possible as master and slave will run totally independantly in this situation.
To summarize these are our requirments:
- If the master DC is not running the slave should work with its local copy of the domain.xml
- If the master DC is started after the slave HC the slave host controller should still be starteable but should in parallel recognize when the master hostController is finally available and register itself
- There should be the possiblity to store a local copy of the domain master hostController in parallel with the approach of starting up when the master hostController is not running (in this case the master domain.xml cannot be stored locally but anyway startup is possible).
For "enterprise" readiness I think the startup order should not be important and a slave hostController should be starteable with or without a running master but when the master is finally available, the slave hostcontroller should be able to register itself afterwards.
Is this feature foreseen for JBoss Community version or will it be respected for EAP?
Or is somehow my approach wrong and it would work using other options?
Shall I make JIRA Feature Request.
Thanks for your help