For those who have already played with EM11g, you will have noticed that there are quite a few differences in the OMS tech stack between 10g and 11g...
To give you all a quickstart on EM11g, here are the key differences you will see:
- Stopping and starting the OMS and the Middle tier
In 10g there was OPMN and the OMS. In 11g, you have WebLogic and the OMS. Stopping and starting these stacks has slightly changed...
- Stopping the entire tech stack:
- In EM 10g: $ $ORACLE_HOME/opmn/bin/opmnctl stopall;
- In EM 11g: $ emctl stop oms -all
- Starting the entire stack:
- In EM 10g: $ $ORACLE_HOME/opmn/bin/opmnctl startall;
- In EM 11g: $ emctl start oms
Stopping and starting just the OMS is still the same command in both versions:
- $ emctl stop oms
$ emctl start oms
The key difference in EM11g is, that the EMCTL 'start' command will take care of the entire stack, and start whichever component needs to get started behind the scenes, without the need of another tool or command.
- Setting OMS parameter
If you ever had to tweak the loader threads, or increase job threads or something similar in EM 10g, this was always done by editing the editing the 'emoms.properties' file.
In EM 11g, this file is no longer there: All OMS parameters are stored in the repository. And changing them, requires an EMCTL command to update the values in the repository (This also implies that you now need the SYSMAN password to make an update to the properties!).
- Setting or changing an OMS property:
- In EM 10g: Editing of the file emoms.properties
- In EM 11g: $ emctl set property -name <name> -value <value> -module emoms
There is also a separate command to list out the properties an OMS has in EM 11g:
- $ emctl list properties
- Setting OMS logging and tracing parameter
And the same applied for setting logging and tracing parameters for the OMS. To change logging parameters:
- In EM 10g: Editing of the file emomslogging.properties
- In EM 11g: $ emctl set property -name <name> -value <value> -module logging
- Location of the log and trace files
Yes: Here is where it gets 'funky' in EM 11g: With the Weblogic stack and the separation of code (read: static) and runtime (read: dynamic) information, the location of the log files has substantially changed.
The logic to use to find out what is where, is (once you know about it) pretty straightforward:
The OMS application log files:
- Look at the file emInstanceMapping.properties in the $ORACLE_HOME/sysman/config directory of the OMS.
This file will tell you the internal ID (OMS name) of the OMS, and a pointer to the file with all the port and directory details used for this OMS.
- Once you know the location of the instance specific files of the OMS, everything else will fall into place. Take note of three key properties in the file, which will help you find the log files:
- In EM 10g: Files are located in the $ORACLE_HOME/sysman/log directory of the OMS
- In EM 11g: Files are located in the <EM_INSTANCE_HOME>/sysman/log directory.
- The OMS JAVA application log files:
- In EM 10g: Files are located in the $ORACLE_HOME/j2ee/j2ee/OC4J_EM/log/OC4J_EM_default_island_1 directory of the OMS
- In EM 11g: Files are located in the <EM_DOMAIN_HOME>/servers/<OMS ID>/logs directory.
- The Application stack log files:
- In EM 10g: Files are located in the $ORACLE_HOME/opmn/logs directory of the OMS
- In EM 11g: Files for the Admin server are located in the <GC_INST>/domains/GCDomain/servers/EMGC_ADMINSERVER/logs directory fo the 1st OMS (The one with the Adminserver).
The NodeManager will write the log/trc files in the same location of the JAVA application log files: <EM_DOMAIN_HOME>/servers/<OMS ID>/logs (Example: /oracle/gc_inst/user_projects/domains/GCDomain/servers/EMGC_OMS1/logs) and also in <EM_DOMAIN_HOME>/servers/<OMS ID>/sysman/log (Example: /oracle/gc_inst/user_projects/domains/GCDomain/servers/EMGC_OMS1/sysman/log)
- The Apache (HTTP Server) log files:
- In EM 10g: File are located in the $ORACLE_HOME/Apache/Apache/logs directory of the OMS
- In EM 11g: Files are located in the <EM_WEBTIER_INSTHOME>/diagnostics/logs/OHS/ohs1 directory.
- No more SQL*Plus in the OMS ORACLE_HOME in EM 11g
And this has two major consequences for administrators of the Grid Control and the OMS software:
- Patching will be different in EM11g. Instead of being able to launch SQL*Plus to run a post-install SQL file, you will now have to run RCU to run the SQL files (details will be in the patch README file)
- For those using EMDIAG, it will mean that EMDIAG can no longer be installed in the ORACLE_HOME of the OMS. With SQL*Plus gone, EMDIAG will no longer be able to run the SQL files to get the output (And just FYI: RCU does not do formatted SQL output - It just runs SQL commands).
Recommendation is for EM11g to install and use EMDIAG on the repository machine, in the ORACLE_HOME of the repository database.
- Increasing the JAVA heap size of the OMS
For the larger sites, the standard out-of-box heap size of 512Mb might not be enough. Changing this requires a change in the configuration of the Application server: