+

Search Tips   |   Advanced Search

Install enterprise application files by adding them to a monitored directory

We can install an enterprise application file on an application server or cluster by dragging or copying an EAR, web application archive (WAR), JAR, or SIP archive (SAR) to a monitored directory. An enterprise application file must conform to the Java EE specification.

Develop and assemble the EAR, JAR, WAR, or SAR file. Use a supported assembly tool such as an IBM Rational Application Developer for WebSphere Software product to specify bindings and assemble the file.

Installing an EAR, JAR, WAR, or SAR file by adding it to a monitored directory does not change existing JNDI and other application bindings. To set binding values during deployment, install the file using the administrative console application installation wizard, a wsadmin script, or a properties file that sets bindings. See Install enterprise application files by adding properties files to a monitored directory.

Enable monitored directory deployment

Restriction:

Do not use monitored directory deployment in a production environment where the application must remain continuously available. Instead, in production environments, use an automated process that staggers application updates to each application server by first draining requests from each server, updating the application, and then restarting the server. For information about this automated process, see IBM WebSphere Developer Technical Journal: Maintain continuous availability while updating WAS enterprise applications.

We can deploy an EAR, JAR, WAR, or SAR file to an application server or cluster by dragging or copying the file to a monitored directory.

For base (stand-alone) application servers, the monitored directory is...

For deployment managers, the monitored directories are the...

The product scans a monitored directory for new applications no more frequently than every five seconds, by default. After finding a new EAR, JAR, WAR, or SAR file in a monitored directory, the product installs the file on the application server or cluster and starts the application or module.

After adding an EAR file to a monitored directory, the product creates a temporary copy of the EAR file in another directory and installs the file on the server. After adding a JAR, WAR, or SAR file to a monitored directory, the product creates a temporary copy of the archive in another directory, wraps the archive in an EAR file named archive_extension.ear, and installs the new EAR file. For example, simpleApp.war is installed as simpleApp_war.ear. The original archive that we added to the monitored directory is not changed.

We can update application files the same way. If we later add an updated EAR, JAR, WAR, or SAR file to the same monitored directory, the product stops the previously deployed application, installs the updated file on the application server or cluster, and starts the updated application or module. For example, suppose we previously deployed my_app.ear by dragging it to a monitored directory. If we later drag a file named my_app.ear to the monitored directory, the product replaces the previously deployed EAR file with the updated EAR file that has the same name. The server or cluster must be running for the product to notice changes to files in its monitored directory.

We can use a graphical file browser to drag or copy the EAR, JAR, WAR, or SAR file. Alternatively, we can use operating system commands to copy a file into a monitored monitoredDeployableApps subdirectory.


Tasks

  1. Ensure that the application server or cluster member on which we want to install the enterprise application file is running.

  2. Ensure that monitored directory deployment is enabled.

    See Setting monitored directory deployment values.

  3. Browse the file structure of the computer and find or create the monitored directory.

    For base (stand-alone) application servers, the monitored directory is under the application server profile. The directory path is:

    • app_server_root/profiles/application_server_profile/monitoredDeployableApps/servers/server
    • app_server_root/AppServer/profiles/default/monitoredDeployableApps/servers/server

    For stand-alone servers, the product creates a monitored server directory automatically.

    For application servers on a managed (federated) node of a deployment manager, create a monitored directory under the deployment manager profile. The directory path is:

    • app_server_root/profiles/dmgr_profile/monitoredDeployableApps/servers/server
    • app_server_root/AppServer/profiles/default/monitoredDeployableApps/servers/server

    For application servers on a federated node, create the monitored server directory. The directory name must match the name of an existing server.

    If multiple servers of the same name are on different federated nodes and we want only one of the servers to be a monitored directory, we can specify the node and server for the monitored directory. Create the /nodes/node/servers/server directories under the deployment manager profile. The directory path is:

    • app_server_root/profiles/dmgr_profile/monitoredDeployableApps/nodes/node/servers/server
    • app_server_root/DeploymentManager/profiles/default/monitoredDeployableApps/nodes/node/servers/server

    We must create directories for the node and the server. The node directory name must match the name of an existing node. The server directory name must match the name of an existing server on the node.

    For clusters, create a monitored directory under the deployment manager profile. The directory path is:

    • app_server_root/profiles/dmgr_profile/monitoredDeployableApps/clusters/cluster_name
    • app_server_root/DeploymentManager/profiles/default/monitoredDeployableApps/clusters/cluster_name

    We must create the monitored cluster_name directory. The directory name must match the name of an existing cluster.

  4. Copy the EAR, JAR, WAR, or SAR file to deploy to the monitored directory.

    Choose a file that is not already deployed to the target monitored directory, unless we want to update a currently deployed file.

    If a file is already deployed to a monitored directory of a deployment manager and we want to deploy the file to a different monitored directory of the deployment manager, remove the file from the current target monitored directory before we add the file to the new target monitored directory. For this release, an application file must exist in only one monitored directory of a deployment manager.

The product adds a directory having the same name as the file to the installedApps/cell directory of the profile.

Also, the product writes messages about the application deployment to the SystemOut.log file in the app_server_root/logs/server directory. The messages start with the CWLDD message key.

The messages indicate that the product deployed the application file and that the application is running.

IBM recommends using the High Performance Extensible Logging (HPEL) log and trace infrastructure . We view HPEL log and trace information using the logViewer .

For installations on a deployment manager monitored directory, the product does not start an application or module automatically if the node agent or server is not running. If a node agent is stopped, the product installs the application or module at the deployment manager level, but does not synchronize the changes with the node and does not start the application or module. The changes will occur at the node the next time the agent is running and a node synchronization occurs. If the server is stopped but the node agent is running, the product installs the application or module and synchronizes the changes with the node, but does not start the server.


Example

Suppose we want to install the sample DynaCacheEsi.ear file by copying the EAR file to a monitored directory. We can find the sample EAR file in the app_server_root/installableApps directory.

Deploy an EAR file on a stand-alone application server

  1. Ensure that the application server on which we want to install the DynaCacheEsi.ear file is running.

    To see if the server is running, we can use the serverStatus -all command. To start the server, we can use the startServer server command.

    (Dist) For example, suppose the stand-alone application server has a profile name of AppSrv02.

      cd app_server_root/profiles/AppSrv02/bin
      serverStatus -all

    If the server is not running, start the server.

    (Dist) For example, to start an application server named server1 on AppSrv02,

      cd app_server_root/profiles/AppSrv02/bin
      startServer server1

    The Server server1 open for e-business message indicates that the server is running.

  2. Locate the monitored directory.

    (Dist) For the stand-alone AppSrv02 profile, the monitored directory is...

      app_server_root/profiles/AppSrv02/monitoredDeployableApps/servers/server1

  3. Copy the DynaCacheEsi.ear file in the app_server_root/installableApps directory to the monitored directory.

  4. Verify that the directory for installed applications exists.

    • app_server_root/profiles/AppSrv02/installedApps/cell/DynaCacheEsi.ear
    • app_server_root/profiles/default/installedApps/cell/DynaCacheEsi.ear

  5. Verify that DynaCacheEsi.ear is in the list of installed enterprise applications and is running.


Deploy an EAR file on a federated node of a deployment manager

  1. Ensure that the application server of the federated node on which we want to install the DynaCacheEsi.ear file is running.

    To see if the server is running, we can use the serverStatus -all command. To start the server, we can use the startServer server command.

    (Dist) For example, suppose the server1 application server is on a node that has a profile name of AppSrv01.

      cd app_server_root/profiles/AppSrv01/bin
      serverStatus -all

    If the server is not running, start the server.

    (Dist) For example, run...

      cd app_server_root/profiles/AppSrv01/bin
      startServer server1

  2. Ensure that the DynaCacheEsi.ear file does not exist in a monitored directory of the deployment manager.

    Add an application file to only one monitored directory of a deployment manager. If an application file already exists in a deployment manager monitored directory and we add an application file that has the same file name to a different deployment manager monitored directory, the product uninstalls the application file from the previous target and installs it to the new target. However, the new target is not synchronized with the deployment because the file still exists in the previous target monitored directory. To prevent problems with synchronization, we must remove DynaCacheEsi.ear from all monitored directories before we add DynaCacheEsi.ear to the new target directory.

  3. Create the monitored directory.

    For federated nodes, create a monitored directory under the deployment manager profile, unless the directory for the target server already exists.

    (Dist) For example, suppose the deployment manager profile is Dmgr01 and the application server is server1.

    1. Go to the /monitoredDeployableApps/servers directory:

      • app_server_root/profiles/Dmgr01/monitoredDeployableApps/servers

      • app_server_root/AppServer/profiles/default/monitoredDeployableApps/servers

    2. If a directory named server1 exists in the servers directory, then go the next step.

      If the server1 directory does not exist, create a directory named server1 in the /monitoredDeployableApps/servers directory.

    The monitored directory is:

    • app_server_root/profiles/Dmgr01/monitoredDeployableApps/servers/server1
    • app_server_root/AppServer/profiles/default/monitoredDeployableApps/servers/server1

  4. Copy the DynaCacheEsi.ear file in the app_server_root/installableApps directory to the server1 monitored directory

  5. Verify that the directory for installed applications exists.

    • app_server_root/profiles/AppSrv01/installedApps/cell/DynaCacheEsi.ear
    • app_server_root/AppServer/profiles/default/installedApps/cell/DynaCacheEsi.ear

  6. Verify that DynaCacheEsi.ear is in the list of enterprise applications installed on the server and is running.

Tip: If multiple servers of the same name are on different federated nodes and we want only one of the servers to be a monitored directory, we can specify the node and server for the monitored directory. Create the /nodes/node/servers/server directories under the deployment manager profile. For example, if we want the monitored directory to be the server1 application server on the myNode01 node, the directory path is:

Only specify the node for a monitored directory if more than one server has the same name.


Deploy an EAR file on a cluster of a deployment manager

  1. Ensure that the cluster members of the cluster on which we want to install the DynaCacheEsi.ear file are running. For this example, cluster myCluster01 has one member, myClusterMember01.

  2. To see if the cluster is running, we can use the serverStatus -all command. To start the cluster member, we can use the startServer myClusterMember01 command.

    (Dist) For example, suppose myClusterMember01 is in the AppSrv01 profile.

      cd app_server_root/profiles/AppSrv01/bin directory:
      serverStatus -all

    If the cluster member is not running, run...

      cd app_server_root/profiles/AppSrv01/bin
      startServer myClusterMember01

  3. Ensure that the DynaCacheEsi.ear file does not exist in a monitored directory of the deployment manager.

  4. Create the monitored directory.

    For clusters, create a monitored directory under the deployment manager profile, unless the directory for the target cluster member already exists.

    (Dist) For example, suppose the deployment manager profile is Dmgr01:

    1. Go to app_server_root/profiles/Dmgr01/monitoredDeployableApps/clusters.

    2. If a directory named myCluster01 exists in the /clusters directory, then go to the next step.

      If the myCluster01 directory does not exist, create a directory named myCluster01 in the /clusters directory.

    The monitored directory is:

    • app_server_root/profiles/Dmgr01/monitoredDeployableApps/clusters/myCluster01
    • app_server_root/DeploymentManager/profiles/default/monitoredDeployableApps/clusters/myCluster01

  5. Copy the DynaCacheEsi.ear file in the app_server_root/installableApps directory to the myCluster01 monitored directory.

  6. Verify that the directory for installed applications exists.

    • app_server_root/profiles/AppSrv01/installedApps/cell/DynaCacheEsi.ear

    • app_server_root/AppServer/profiles/default/installedApps/cell/DynaCacheEsi.ear

  7. Verify that DynaCacheEsi.ear is in the list of enterprise applications installed on the cluster member and is running.



What to do next

Test the deployed application or module. For example, point a web browser at the URL for a deployed application and examine the performance of the application.

If the deployment is not successful, read messages in the SystemOut.log file, fix the error condition, and add the application or module to the monitored directory again.



Subtopics



See also