Discover JBoss

Understanding JBoss Applications

JBoss Deployment consists of a JBoss Domain Controller and JBoss Application Servers scattered over different nodes (Servers) that are serving the Applications. A JBoss application running on an Application Server will have its dependencies on the various resources, configured on the container, like Data Sources, JMS modules, Shared Application Libraries, Server configurations, etc. .

Discover JBoss Applications

When the host machine is running the JBoss Domain Controller, the Discover Host feature not only collects all the information from the host machine like System information, Process information, memory information etc. but also scans the JBoss for all the applications that can be containerized into a separate independent container

JBoss Application discovery - A single phase Discovery

Discovery of JBoss Applications is a single stage process. The Discovery should be run on the JBoss controller.

Information about JBoss Applications

Once the Discovery of a JBoss host is done, OmniDeq UI lists each Application that are ready for individual containerization. These applications include the applications deployed on all the Clusters or to the standalone Servers. The following information is revealed by the OmniDeq UI for each Application :

JBoss Application Server Objects supported for Transform

Objects Discover Transform
Shared Application Libraries Yes Yes
Server Certificates Yes Yes
Data Sources Yes Yes
JMS configuration Yes Yes, Hornet MQ Server and ActiveMQ Server
JMS Server No No
Cluster Yes No
JNDI Realms Yes Yes, only Active Directory

Process Flow for Discovery of JBoss Applications

In order to find out about Linux Host Prerequisites, please click here

JBoss Applications Discovery

  1. In the landing page, click on Add Project. Add respective details and "Save". This will take you to the discover page.

    Select Node New

  2. Click on the 3 horizontal dots beside the host and click on Check Connection and wait for a few seconds.

    Check Connection

    Notes

    • User will get success message in a few seconds.
    • This step is optional. This step is just to make sure that the connection is established successfully.
  3. Click on Check Prerequisites button as shown in the image below and wait for a few seconds.

    • User can see the prerequisites logs from the Logs section in the bottom when the pre-requisite is started as shown in the image below.

    Discover Pre-requisites

    • Logs are divided in 2 parts :

    • Networking Connectivity Checks : Which show the network connectivity checks on the host machine.

    • Validating Prerequisites : Which show the checks if all the pre-requisites are available or not.

  4. User can edit the ignore list before starting a discovery by clicking on the Process Ignore List button as shown in the image below. IgnoreList is used to skip the discovery process from analysing these processes on the host. Do not ignore the java processes. Using this feature user can include or exclude the processes for discovery as shown in the image below.

    Edit Ignore List

    • User can also edit the ignore list after a discovery is done.
    • Any modification done in ignore list after discovery, will require the discovery for the host tobe performed.
  5. User can edit the Application Ignore list before starting a discovery by clicking on the Application Ignore List button as shown in the image below. Application Ignore list is used to name the applications that the user wants to containerize.

    • Using this feature user can specify the application names only which are to be included for discovery, as shown in the image below. All the other applications will not be scanned by the discovery process.

    Edit Application WhiteList

  6. Click on Discover button and wait for a few seconds.

    • User will get message " Triggering Discovery " .
    • After a few minutes user will see the discovery status as Completed if all the prerequisites are met.

    • User can see the discover logs from the Logs section in the bottom when the discover process is started as shown in the image below.

    Discover Logs

    • Logs are divided in 3 parts ( including the prerequistes ) :

    • Networking Connectivity Checks : Which show the network connectivity checks on the host machine.

    • Validating Prerequisites : Which show the checks if all the prerequisites are available or not.

    • Collecting System State Information : Which show the logs for collecting all the system information.

    • Once the discovery is completed, user will be able to see all the processes discovered, including the JBoss processes (java or standalone.sh), and the Web Applications that are discovered, as shown in the image below.

    Discover Completed

    • The Web Applications that are discovered from the JBoss are listed in the table with the Process Name formatted as java-< Cluster/Server name >-< applicationName >. for e.g., If an application say 'appX' is deployed on one standalone server say Server-1, and a cluster Cluster-0, the the table will show two entries for the application with names as java-Server-1-appX and java-Cluster-0-appX. This helps the User to choose the application to transform with the specific Server settings or the Cluster settings.
  7. User can view the web application information specific to JBoss Application by clicking on the name of the Application (More Info) under Name column. The Information screen with tabs will be shown as below

    Discover Completed

    • Process Details: This tab shows the details of the process which enabled discovering the applications. This will usually be the JBoss Deployment controller as the discovery is run on controller host.

    Discover Process Details

    • Web Application Details: This tab shows the details of Web Application as shown below.

    -- Application Name shows the name of the application. This is same as that shown in the Process table that is clicked. The formation of the application name includes the name followed by #@

    -- Server Name: shows the name of the target server for this application.

    -- Java Version shows the version of java used by the JBoss controller process. Assuming the same version is being used across all the servers in the JBoss deployment.

    -- Context Root shows the context root of the Web Application if specifically defined in application.xml of the war/ear.

    -- Location shows the location of the application archive (war/ear). This application archive is copied over to the container for deployment.

    -- Dependent Shared Libraries shows the list of shared application libraries detected on the Cluser/Server on which the application is also targetted. The assumption is that application may refer to any of these dependencies as they are all existing on the same target.

    Discover Webapp Details

    • Application Server : This tab shows the details about the target Server or Cluster specific configuration information. The assumption is that the java version will be same across all servers in the domain. Also the servers in the cluster will all have same configurations.

    Discover Application Server Details

    -- Name: shows the name of the application server in this case it is - "JBoss EAP".

    -- Server version : shows the JBoss Application server version of the process detected on the discovered system (i.e. JBoss controller). Assumption is that the version of Java and the JBoss Server is same across all the server instances of the deployment.

    -- HOME DIR shows the JBoss Server process's home directory.

    -- Application Default Ports shows the ports (ssl and nonssl) being used by the target Server for this application.

    • Application Configuration Details:

    Discover JBoss Application Configuration Details

    -- Certificate Details shows the JBoss server's SSL configuration. It displays the Identity Key Store file and the Trust Store details configured on the JBoss server.

    -- Data Sources shows the list of data sources configured on the Server on which this application is targetted. All these data sources configurations are carried over to the container during tranformation of this application.

    -- JMS Modules shows the list of JMS modules targetted on the server on which this application is also targetted. These JMS Modules configurations are carried over to the container with the assumption that the JMS Server will remain running as is and the container will be able to use the existing JMS Server for its queues/topics. The container will be configured with Foreign Server connection factory, configured to connect to this existing JMS Server.

  8. Next step will be Transformation of JBoss Application. Please click here

Notes

Appendix

Filtering the Processes or Applications for Discovery

As a part of Discovery, you can filter the Processes and Applications to be Discovered by the discovery phase of OmniDeq. Following are the steps to do this: