Exalogic machine is one of the Engineered system which provides excellent consolidation platform for hosting wide range of application workloads. OEM 12c provides the capability of monitoring the exalogic machine as a system there by enabling us to monitor the applications , storage, softwares and different hardware components of it.
In this article, We will see the detailed steps to setup monitoring for Exalogic machine in Oracle Enterprise Manager 12c. Usually there are two types of exalogic implementations, Virtual and Physical. The present procedure to discover exalogic machine is valid for the virtual exalogic configuration with Exalogic Elastic Cloud Software (EECS) version 2.0.6.0.0 or later and Oracle Enterprise Manager 12.1.0.3 or later.
In this article, We will see the detailed steps to setup monitoring for Exalogic machine in Oracle Enterprise Manager 12c. Usually there are two types of exalogic implementations, Virtual and Physical. The present procedure to discover exalogic machine is valid for the virtual exalogic configuration with Exalogic Elastic Cloud Software (EECS) version 2.0.6.0.0 or later and Oracle Enterprise Manager 12.1.0.3 or later.
- Verify the correct software versions and Plug-ins required
- Install OEM agent onto OVMM and EMOC Server.
- Install the required plug-ins
- Configuring agents installed step 2 for exalogic discovery.
- Discovering Oracle VM Manager
- Discovering Oracle ZFS Storage Appliance
- Discovering Exalogic Virtual Machine
- Any Optional Configurations.
1. Verify the correct software versions and Plug-ins required The Exalogic version can be found using the EMOC console. EMOC is a default setup as part of Exalogic implementation. The default URL for EMOC is https://<emoc server>:9443/emoc/ . The following screenshot will help you to identify the exalogic version.
Following list of plug-ins are required to be installed on OMS and agents installed on OVMM and EMOC servers. If you have both OVMM and EMOC installed on a single server, you need to install plug-ins on only one agent.
- Oracle Virtualization Plug-in
- Oracle ZFS Storage Appliance Plug-in
- Fusion Middleware Plug-in
2. Install OEM agent onto OVMM and EMOC Server(s).
In any exalogic implementation, the OVMM and EMOC can be either installed in a single vServer or it can be installed in two different vServers. In the present setup, we assume that both OVMM and EMOC are installed on a single vServer. Installing agent on a vServer is a direct process. You can use any of the agent installation methods to install agent on this vServer. If you need more help on installing agent, please refer my other blog posts.
3. Install the required plug-ins In step-1 we listed the plug-ins required for the discovery of the each component in exalogic. Now we need to install plug-ins on OMS and agent installed in step-2 above. Please make sure you have updated the latest plug-ins before deployment. Following screenshots will help you to understand plug-in updates and deploying these plug-in onto OMS and agent.
Deploying Virtualization Plug-in : Here I am deploying the plug-in onto agent. This plug-in is already installed on OMS.
Deploying the ZFS Plug-in : Here you can see the plug-in is updated to the latest version and then deployed to the OMS and agent.
4. Configuring agents installed in step-2 for exalogic discovery
We need to configure the agent installed in step-2 for the the exalogic discovery. This configuration includes importing certificates.
- Need to import the Oracle Enterprise Manager Ops Center Certificate to the agent keystore
$JAVA_HOME/jre/bin/keytool -export -alias cacao_agent -file oc.crt -keystore truststore -storepass trustpass
[root@elxxxx-vm ~]# JAVA_HOME=/u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk
[root@elxxxx-vm ~]# export PATH=$JAVA_HOME/bin:$PATH
[root@elxxxx-vm ~]# which java
/u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk/bin/java
[root@elxxxx-vm ~]# cd /etc/opt/sun/cacao2/instances/oem-ec/security/jsse
[root@elxxxx-vm jsse]# ls -lrt
total 16
-rw-r--r-- 1 root root 2064 Jun 23 2015 keystore
-rw-r--r-- 1 root root 1014 Jun 23 2015 agent.cert
-rw-r--r-- 1 root root 1658 Jun 23 2015 truststore
-rw-r--r-- 1 root root 1658 Jun 23 2015 truststore_gf
[root@elxxxx-vm jsse]# $JAVA_HOME/jre/bin/keytool -list -keystore /u01/app/oracle/product/12.1.0/agent12c/agent_inst/sysman/config/montrust/AgentTrust.jks
Enter keystore password:
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 9 entries
..
...
[root@elxxxx-vm jsse]# pwd
/etc/opt/sun/cacao2/instances/oem-ec/security/jsse
[root@elxxxx-vm jsse]# $JAVA_HOME/jre/bin/keytool -export -alias cacao_agent -file oc.crt -keystore truststore -storepass trustpass
Certificate stored in file <oc.crt>
[root@elxxxx-vm jsse]# ls -lrt
total 20
-rw-r--r-- 1 root root 2064 Jun 23 2015 keystore
-rw-r--r-- 1 root root 1014 Jun 23 2015 agent.cert
-rw-r--r-- 1 root root 1658 Jun 23 2015 truststore
-rw-r--r-- 1 root root 1658 Jun 23 2015 truststore_gf
-rw-r--r-- 1 root root 706 Feb 18 10:51 oc.crt
Import the certificate using the following command as root user ...
$JAVA_HOME/jre/bin/keytool -import -keystore /u01/app/oracle/product/12.1.0/agent12c/agent_inst/sysman/config/montrust/AgentTrust.jks -alias wlscertgencab -file /etc/opt/sun/cacao2/instances/oem-ec/security/jsse/oc.crt
[root@elxxxx-vm jsse]# $JAVA_HOME/jre/bin/keytool -import -keystore /u01/app/oracle/product/12.1.0/agent12c/agent_inst/sysman/config/montrust/AgentTrust.jks -alias wlscertgencab -file /etc/opt/sun/cacao2/instances/oem-ec/security/jsse/oc.crt
Enter keystore password:
Owner: CN=elxxxx-vm_oem-ec_agent
Issuer: CN=elxxxx-vm_oem-ec_agent
Serial number: 11cb1895
Valid from: Wed Dec 31 19:00:00 EST 1969 until: Sat Mar 10 10:47:14 EST 2035
Certificate fingerprints:
MD5: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
SHA1: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Signature algorithm name: MD5withRSA
Version: 3
Trust this certificate? [no]: yes
Certificate was added to keystore
[root@elxxxx-vm jsse]# $JAVA_HOME/jre/bin/keytool -list -keystore /u01/app/oracle/product/12.1.0/agent12c/agent_inst/sysman/config/montrust/AgentTrust.jks
Enter keystore password:
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 10 entries
...
...
...
Restart the agent before the next certificate export and import.
- Need to import the Oracle VM Manager certificate into the agent
As the root user on the Oracle VM Manager host, export the certificate from Oracle VM Manager:
/u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk/bin/keytool -keystore ./ovmmCoreTcps.ks -exportcert -alias ovmm -file ovmm.cr
[root@elxxxx-vm jsse]# cd /u01/app/oracle/ovm-manager-3/
[root@elxxxx-vm ovm-manager-3]# ls -lrt
total 32
drwxr-xr-x 5 oracle dba 4096 Feb 17 2014 ovm_shell
drwxr-xr-x 3 oracle dba 4096 Jun 22 2015 machine1
-rw-r----- 1 oracle dba 92 Jun 22 2015 ovm_console_configuration.properties
drwxr-xr-x 2 root root 4096 Jun 22 2015 bin
-rw-r--r-- 1 root root 1369 Jun 22 2015 ovmmCoreTcps.ks
drwxr-xr-x 7 oracle dba 4096 Jun 23 2015 ovm_upgrade
drwxr-xr-x 4 oracle dba 4096 Jun 23 2015 weblogic
drwxr-xr-x 9 oracle dba 4096 Jun 24 2015 ovm_cli
[root@elxxxx-vm ovm-manager-3]# ls -lrt /u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.3.0/jdk/bin/keytool
[root@elxxxx-vm ovm-manager-3]# ls -lrt /u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk/bin/keytool
-rwxr-xr-x 1 oracle dba 51979 Mar 12 2013 /u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk/bin/keytool
[root@elxxxx-vm ovm-manager-3]# /u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk/bin/keytool -keystore ./ovmmCoreTcps.ks -exportcert -alias ovmm -file ovmm.cr
Enter keystore password:
***************** WARNING WARNING WARNING *****************
* The integrity of the information stored in your keystore *
* has NOT been verified! In order to verify its integrity, *
* you must provide your keystore password. *
***************** WARNING WARNING WARNING *****************
Certificate stored in file <ovmm.cr>
[root@elxxxx-vm ovm-manager-3]# ls -lrt
total 36
drwxr-xr-x 5 oracle dba 4096 Feb 17 2014 ovm_shell
drwxr-xr-x 3 oracle dba 4096 Jun 22 2015 machine1
-rw-r----- 1 oracle dba 92 Jun 22 2015 ovm_console_configuration.properties
drwxr-xr-x 2 root root 4096 Jun 22 2015 bin
-rw-r--r-- 1 root root 1369 Jun 22 2015 ovmmCoreTcps.ks
drwxr-xr-x 7 oracle dba 4096 Jun 23 2015 ovm_upgrade
drwxr-xr-x 4 oracle dba 4096 Jun 23 2015 weblogic
drwxr-xr-x 9 oracle dba 4096 Jun 24 2015 ovm_cli
-rw-r--r-- 1 root root 601 Feb 18 10:55 ovmm.cr
[root@elxxxx-vm ovm-manager-3]# echo $JAVA_HOME
/u01/app/oracle/product/12.1.0/agent12c/core/12.1.0.4.0/jdk
[root@elxxxx-vm ovm-manager-3]# $JAVA_HOME/jre/bin/keytool -list -keystore /u01/app/oracle/ovm-manager-3/ovmmCoreTcps.ks
Enter keystore password:
***************** WARNING WARNING WARNING *****************
* The integrity of the information stored in your keystore *
* has NOT been verified! In order to verify its integrity, *
* you must provide your keystore password. *
***************** WARNING WARNING WARNING *****************
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 1 entry
ovmm, Jun 22, 2015, PrivateKeyEntry,
Certificate fingerprint (MD5): XXXXXXXXXXXXXXXXXXXXXXX
[root@elxxxx-vm ovm-manager-3]#
As the EM Agent install user on the Enterprise Manager Agent host monitoring the Oracle VM Manager, to import the certificate into the Agent's truststore, the EMCTL secure command needs to be executed from the host on which the Agent is located:
$AGENT_HOME/bin/emctl secure add_trust_cert_to_jks -trust_certs_loc /u01/app/oracle/ovm-manager-3/ovmm.cr -alias ovmm
[oracle@elxxxx-vm ~]$ $AGENT_HOME/bin/emctl secure add_trust_cert_to_jks -trust_certs_loc /u01/app/oracle/ovm-manager-3/ovmm.cr -alias ovmm
Oracle Enterprise Manager Cloud Control 12c Release 4
Copyright (c) 1996, 2014 Oracle Corporation. All rights reserved.
Password:
Message : Certificate was added to keystore
ExitStatus: SUCCESS
[oracle@elxxxx-vm ~]$
[oracle@elxxxx-vm ~]$ $JAVA_HOME/jre/bin/keytool -list -keystore /u01/app/oracle/product/12.1.0/agent12c/agent_inst/sysman/config/montrust/AgentTrust.jks
Enter keystore password:
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 11 entries
...
..
Now restart the agent after successful import of the certificates.
5. Discovering the Oracle VM Manager
Before proceeding with the discovery, make sure you have deployed the Oracle Virtualization Plug-in as described in step-2.
Following screenshots will help you to discover the Oracle VM Manager.
Once the VM Manager is discovered , very important step is to configure it for read-only. Otherwise Oracle considers this as unsupported configuration.
Perform the following steps to configure Oracle VM Manager discovered in OEM as read-only.
Login to the OVMM vServer as root user to get the following details ...
[root@elxxxx-vm ovm-manager-3]# cat /var/exalogic/info/em-context.info
ExalogicID=Oracle Exalogic X2-2 AK00000000
[root@elxxxx-vm ovm-manager-3]# cd /u01/app/oracle/ovm-manager-3/ovm_shell
[root@elxxxx-vm ovm_shell]# /opt/sun/cacao2/bin/cacaoadm get-param jmxmp-connector-port -i oem-ec
jmxmp-connector-port=11172
[root@elxxxx-vm ovm_shell]#
Login to the OVMM vServer as oracle user and perform the following steps .....
[oracle@elxxxx-vm ~]$ $AGENT_HOME/bin/emctl stop agent
Oracle Enterprise Manager Cloud Control 12c Release 4
Copyright (c) 1996, 2014 Oracle Corporation. All rights reserved.
Stopping agent ..... stopped.
[oracle@elxxxx-vm ~]$ $AGENT_HOME/bin/emctl start agent
Oracle Enterprise Manager Cloud Control 12c Release 4
Copyright (c) 1996, 2014 Oracle Corporation. All rights reserved.
Starting agent ......... started.
[oracle@elxxxx-vm ~]$ cd /u01/app/oracle/ovm-manager-3/ovm_shell
[oracle@elxxxx-vm ovm_shell]$ sh ovm_shell.sh --url=tcp://localhost:54321 --username=admin --password=**********
OVM Shell: 3.2.8.733 Interactive Mode
>>> from com.oracle.ovm.mgr.api import *
>>> from com.oracle.ovm.mgr.api.event import *
>>> from com.oracle.ovm.mgr.api.virtual import *
>>> from com.oracle.ovm.mgr.api.physical import *
>>> from com.oracle.ovm.mgr.api.physical.network import *
>>> from com.oracle.ovm.mgr.api.physical.storage import *
---
>>> ovm = OvmClient.getOvmManager ()
>>> f = ovm.getFoundryContext ()
>>> j = ovm.createJob ( 'Setting AK000000000' );
>>> j.begin ();
>>> f.setAsset ( "EXALOGIC_ID", "AK000000000");
'AK000000000'
>>> j.commit ();
>>>
[oracle@elxxxx-vm ovm_shell]$
Press CTRL-D to complete the sequence.
Validate the VM Manager is configured with read-only.
6. Discovering Oracle ZFS Storage Appliance
Before proceeding with the discovery, make sure you have deployed the Oracle ZFS storage Appliance Plug-in as described in step-2.
One important configuration step, we need to do before the discovery of ZFS appliance is that ,we need to configure the ZFS Storage Appliance for OEM monitoring.
Please follow the screenshot to complete the configuration steps. Access the ZFS storage appliance using "https://<IP of ZFS Appliance>:215/"
Once the configuration is complete, The ZFS Storage Appliance is now ready for discovery.
Follow the screenshots to complete the discovery of ZFS Storage Appliance.
Repeat the same step-6 for all the ZFS appliances in the exalogic machine. For a complete single rack exalogic machine, you will have 2 ZFS storage appliances.
7. Discovering Exalogic Virtual Machine
The final step is to discover the Exalogic machine. Follow the following screenshots to complete the discovery of the exalogic machine.
8. Optional Configurations
The following configurations are optional and it is not part of the actual discovery process of Exalogic machine.
- You need to deploy the necessary plug-ins required for the monitoring capabilities of the softwares that you will be installing on vServers like Weblogic Servers, Webcenter , OTDs , Peoplesoft etc ...
- You can install "Oracle Engineered System Healthchecks" plug-in and configure the targets to perform the exalogic health checks.
Please leave your comments and suggestions if this article helps you.
Thanks
SRI