Friday, December 17, 2010

How to configure the jvm diagnostics for Weblogic in EMGC11g

As I explained in my previous post, steps for configuring JVM Diagnostics with EMGC 11g are very much same. Only additional step for WebLogic Server is to discover WebLogic Domain and Servers and then deploy jamagent on discovered WLS targets.
To discover WebLogic Domain, goto Targets->Middleware-> Add 'Oracle Fusion Middleware/WebLogic Domain'. It will take you to WebLogic Server discovery page where you need provide details like:
·         WLS Admin Server hostname
·         Port
·         WLS username
·         WLS username passwd
·         Unique Domain Identifier
·         Agent - with which you would like to discover WLS domain. One can use remote agent for WLS discovery but with remote agent some of the WLS monitoring is limited.

One the WebLogic domain has discovered and all needed targets have been added.
One can go to WebLogic Server Target, goto Weblogic Domain HomePage, click on Domain menu->Select JVM Diagnostics->Deploy Agent option
With Deploy Agent page, one can deploy jamagent on selected WLS targets.
Note: Ensure that 'Select Monitoring' checkbox is selected, so that one agent is deployed, monitoring can be started.

How to configure JVM Diagnostics (AD4J) with EMGC11g

Note: Two one-offs have been released since EMGC 11g release.
Atleast one of these patches is MUST to apply in order for JVMD (AD4J) to work properly.
However, it is recommended to use the latest patch i.e.
p9901141_111010_Generic for the manager
p9930117_111010_Generic for the agent

I'm assuming that user is configuring JVMD for first time in EMGC. If customer has already configured JVMD previously then there would be additional steps to undeploy old ad4j manager and agent before applying the patch and some steps would be bit different.

1. Goto OMS home i.e. %cd $ORACLE_HOME/ad4j

2. %unzip ad4j.zip

3. Make sure that you run DeployAD4JManager.sh in a terminal that has no previous env. variable set.
   %sh DeployAD4JManager.sh
   This script would create a new managed server and would also deploy jammanager.ear

4. Once the AD4J manager is deployed, one can ensure that manager is up and running by looking at Manager status in Targets->Middleware->JVM diagnostics->Console Setup->JVM & Managers->Manager Status

5. Deploy agent either using automated deployment or manual deployment.
a. For automated deployment, ensure that WLS domain is discovered. Goto Targets->Middleware->WLS Domain-> JVM Diagnostics ->Deploy Agent Page. Enter relevant details like Weblogic Server admin username and password. Select relevant ad4j manager, provide details of host m/c where agent is deployed with which WLS domain was discovered. On submission, it creates a job that deploys agent on Target Weblogic Server.
This automated deployment feature works just for Weblogic Servers.
Once Job is successful, it creates a pool equivalent to domain name and agents deployed on target JVM's under that domain would be listed under that Pool. One can view JVMD data either by selecting Domain->JVM Diagnostics->Summary/Details or using Targets->Middleware->JVM diagnostics link at bottom.

b. For manual deployment, one can download jamagent.war from Targets->Middleware->JVM diagnostics->Setup->Download page and deploy it manually on target app server/JVM. Such JVM's by default show up under Default Pool. and in OOB install, Default Pool doesn't have monitoring enabled by default. One has to first select Poll Enabled for Default Pool, so that historical data can start appearing under this pool.