IronJacamar RHQ platform

    Status

     

    Inactive - RHQ functionality will only be provided through the JBoss Enterprise Application Platform.

     

    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

    plugin1.jpg

     

    2. RHQ 4 + Plugin + Standalone JCA

    plugin2.jpg

     

    3. JBoss AS 7 + Connector subsystem +  Model type + Console

     

    Picture is deprecated, will replace

    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

      - Datasources

       - jndiName

       - PoolConfiguration

       - Pool

     

     

    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
    TypeRequiredReadonlyDefaultUnitDescription
    nameDisplay nameStringYY


    jndi-nameJNDI nameStringY



    class-nameResource Adapater class nameStringNY

    Class name of ResourceAdapter
    use-ra-associationUse ResourceAdapterAssociationBooleanNY


    source-pathSource pathStringYY

    RAR file path
















     

     

    Operation

     


    NameDisplay nameTypeRequiredDiscription
    Operationstart


    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
    TypeRequiredReadonlyDefaultUnitDescription
    jndi-nameJNDI nameStringY



    mcf-class-nameManagedConnectionFactory class nameStringYY


    cf-interface-nameConnectionFactory interface class nameStringYY


    cf-impl-nameConnectionFactory implement class nameStringYY


    connection-interface-nameConnection interface class nameStringYY


    connection-impl-nameConnection implement class nameStringYY


     

     

     

     

     

     


    NameDisplay nameTypeRequiredDiscription
    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
    • click "import" button on the bottom
    • Inventory -> Servers, click IronJacamar
    • right click IronJacamar, Create Child, choose to upload xa.rar
    • refresh on the inventory tab, the inventory tree should show

    Screenshots

     

    Screenshot.png

     

    Links