Goals
The goals of the IronJacamar RHQ plugin is to provide a RHQ 4 plugin for the IronJacamar container which exposes the metrics and operations of the deployed resource adapters.
Second, it is to provide a RHQ platform for the standalone IronJacamar distribution using the GWT based user interface as the new management UI.
Design
1. RHQ 4 + Plugin + Embedded JCA
http://community.jboss.org/servlet/JiveServlet/downloadImage/102-16378-8-11452/450-317/plugin1.jpg
2. RHQ 4 + Plugin + Standalone JCA
http://community.jboss.org/servlet/JiveServlet/downloadImage/102-16378-8-11453/450-317/plugin2.jpg
3. JBoss AS 7 + Admin Console + Plugin + JCA Module
http://community.jboss.org/servlet/JiveServlet/downloadImage/102-16378-8-11454/450-317/plugin3.jpg
Implementation
The management integration with IronJacamar must be built based on the
org.jboss.jca.core.api.management
package. A
org.jboss.jca.core.api.management.ManagementRepository
instance must be injected into the RHQ plugin in order to etablish the connection between the plugin and the container.
Some important interfaces and classes:
- org.jboss.jca.rhq.core.Discover SPI for discovery (getManagementRepository)
- org.jboss.jca.rhq.core.EmbeddedJcaDiscover Test implementation of Discover using embedded IronJacamar
- org.jboss.jca.rhq.core.BaseResourceComponent Base class to implement basic methods of the ResourceComponent interfaces
- IronJacamarResourceDiscoveryComponent and IronJacamarResourceComponent "Root" RHQ components of inventory tree
Inventory tree:
IronJacamar_AS7
- Resource Adapters
- xa.rar
- ResourceAdpater
- ConfigProperty
- (operations)
- Connection Factories
- jndiName
- ManagedConnectionFactory
- ConfigProperty
- PoolConfiguration
- Pool
- (operations)
- AdminObjects
- jndiName
- ConfigProperty
Code
To build rhq plugin for IronJacamar:
svn co http://anonsvn.jboss.org/repos/jbossas/projects/jboss-jca/trunk/ jboss-jca
cd jboss-jca
ant -Dmodule=rhq module-test
Then the plugin could been found:
./build/rhq/ironjacamar-rhq-test-all.jar
Supported metrics and operations
ResourceAdpaters
Metrics (Configurations)
Name
| Display name
| Type | Required | Readonly | Default | Unit | Description |
|---|
| name | Display name | String | Y | Y |
|
|
|
| jndi-name | JNDI name | String | Y |
|
|
|
|
| class-name | Resource Adapater class name | String | N | Y |
|
| Class name of ResourceAdapter |
| use-ra-association | Use ResourceAdapterAssociation | Boolean | N | Y |
|
|
|
| source-path | Source path | String | Y | Y |
|
| RAR file path |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Operation
| Name | Display name | Type | Required | Discription |
|---|
| Operation | start |
|
|
| Start this RAR |
| stop |
|
|
| Stop this RAR |
| restart |
|
|
| Stop and restart this RAR |
| suspend |
|
|
| Suspend this RAR |
Managed Connection Factories
Metrics (Configurations)
Name
| Display name
| Type | Required | Readonly | Default | Unit | Description |
|---|
| jndi-name | JNDI name | String | Y |
|
|
|
|
| mcf-class-name | ManagedConnectionFactory class name | String | Y | Y |
|
|
|
| cf-interface-name | ConnectionFactory interface class name | String | Y | Y |
|
|
|
| cf-impl-name | ConnectionFactory implement class name | String | Y | Y |
|
|
|
| connection-interface-name | Connection interface class name | String | Y | Y |
|
|
|
| connection-impl-name | Connection implement class name | String | Y | Y |
|
|
|
| Name | Display name | Type | Required | Discription |
|---|
| Operation |
|
|
|
|
|
| Parameters |
|
|
|
|
|
| Results |
|
|
|
|
|
How to run plugin on RHQ 4
cd <RHQ_Server>/bin
./rhq-server.sh start
- browse http://localhost:7080
- Install RHQ database and do post-install (use h2 sql as test database and use standalone agent)
- Download RHQ agent jar from Administrator -> Download and install it into a empty directory
- login in to RHQ console (rhqadmin : rhqadmin)
- Administrator -> Plugin, Install ironjacamar-rhq-plugin.jar
- Start RHQ agent
cd <RHQ_Agent>/bin
./rhq-agent.sh
- Inventory -> Discovery Queue, find IronJacamar_AS7
- click "import" button on the bottom
- Inventory -> Servers, click IronJacamar_AS7
Screenshots
http://community.jboss.org/servlet/JiveServlet/downloadImage/102-16378-8-11451/450-266/Screenshot.png
Links