Friday, January 31, 2014

EM12c: How to deploy JVMD agent on EBiz 12.1 (oc4j based instance) ?

E-Business 12.1 has Oracle iAS based tech stack. It has oc4j as its application server.
EM12c doesn't have any automated UI flow for deploying JVMD agent on oc4j server.
That deployment has to be manual.

Manual JVMD deployment is referred in this doc

Download JVMD agent file from EM12c UI as given here

1. In EM Cloud Control, Select Setup menu-> Middleware Management-> Application Performance Management.

2. On the Application Performance Management page, select JVM Diagnostics Engine.

3. Click Configure. The 'JVM Diagnostics Setup' page appears.

4. On the 'JVM Diagnostics Setup' page, click JVMs and Pools, then click Download.

5. From the JVMD Component menu, to download jamagent.war. From the JVMD Component menu, select JVMD Agent, then click OK. The JVM Diagnostics Agent web.xml parameters dialog box appears.

6. From the Available Engines menu, select a JVMD engine from the list, then click Download.
  
7. Click Download to download jamagent.war.


Due to some changes in EBiz 12.1 iAS, it requires some additional steps for JVMD agent deployment. EBiz12.1 oc4j doesn't have its own admin web console, so one needs to deploy JVMD agent using command line utility like admin_client.jar.  That requires resetting oc4jadmin password for oafm and oacore  etc.

Given steps can be used as workaround for JVMD agent deployment on oc4j. Not sure if one would like to use these steps in a Production env. Take your call.

a. To reset oc4jadmin password for oafm and oacore
edit the following files:
/oracle/r12/VIS12/apps/tech_st/10.1.3/j2ee/oafm/config/system-jazn-data.xml
/oracle/r12/VIS12/apps/tech_st/10.1.3/j2ee/oacore/config/system-jazn-data.xml

look for the <credentials> section under OC4J Administrator
replace the encrypted password e.g. {903}xxxxxxxxxx with a new plaintext e.g. !welcome1
(new plaintext must begin with a !)

Also modify the opmn config file, to disable SSL and allow remote connections
edit:
/oracle/r12/VIS12/apps/tech_st/10.1.3/opmn/conf/opmn.xml
change the <notification-server> section so it looks something like this
   <notification-server interface="ipv4">
      <ipaddr remote="0.0.0.0" request="0.0.0.0"/>
      <port local="17006" remote="17007" request="17005"/>
      <ssl enabled="false" wallet-file="$ORACLE_HOME/opmn/conf/ssl.wlt/default"/>
   </notification-server>
(add the line with <ipaddr...> and change <ssl enabled="true"...> to false)


b.  Use following command to deploy JVMD agent
java  -jar /oracle/r12/VIS12/apps/tech_st/10.1.3/j2ee/home/admin_client.jar
 deployer:oc4j:opmn://linux-ebs-r12-pc.us.oracle.com:6501/oafm oc4jadmin welcome1
-deploy -file /tmp/jamagent.war -deploymentName jamagent -bindAllWebApps


or
 
java  -Djava.util.logging.config.file=logging.properties   -jar
/oracle/r12/VIS12/apps/tech_st/10.1.3/j2ee/home/admin_client.jar
 deployer:oc4j:opmn://linux-ebs-r12-pc.us.oracle.com:6501/oafm oc4jadmin welcome1 -deploy -file /tmp/jamagent.war -deploymentName jamagent -bindAllWebApps