Saturday, September 10, 2011

OBIEE: Start/Stop Individual Components (Manually)

Previously I wrote about how to start and stop individual components via Enterprise Manager.

This time, I'm going to run through the manual steps to do the same, start and stop individual components using the Oracle Process Manager and Notification Server (OPMN) Tool.

First, navigate to the ORACLE_INSTANCE/bin directory. For me on Linux, that is /obiee/Middleware/instances/instance. List out the directory contents and you should see the opmnctl
[oracle@oracle-web-tier bin]$ ls -lah
total 56K
drwx------  3 oracle dba 4.0K Aug 16 00:53 .
drwx------ 14 oracle dba 4.0K Sep  8 17:09 ..
drwxr-x---  2 oracle dba 4.0K Aug 16 00:53 essbase_ha
-rwx------  1 oracle dba  44K Aug 16 00:53 opmnctl
Let's see what is running:
[oracle@oracle-web-tier bin]$ ./opmnctl status

Processes in Instance: instance1
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status  
---------------------------------+--------------------+---------+---------
coreapplication_obiccs1          | OracleBIClusterCo~ |    1525 | Alive   
coreapplication_obisch1          | OracleBIScheduler~ |    1443 | Alive   
coreapplication_obijh1           | OracleBIJavaHostC~ |    1487 | Alive   
coreapplication_obips1           | OracleBIPresentat~ |    1469 | Alive   
coreapplication_obis1            | OracleBIServerCom~ |   30698 | Alive
All of the components are running. Good. Let's shut down everything.
[oracle@oracle-web-tier bin]$ ./opmnctl shutdown
[oracle@oracle-web-tier bin]$ ./opmnctl status
opmnctl status: opmn is not running.
And bring everything back up.
[oracle@oracle-web-tier bin]$ ./opmnctl startall
opmnctl startall: starting opmn and all managed processes...
[oracle@oracle-web-tier bin]$ ./opmnctl status

Processes in Instance: instance1
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status  
---------------------------------+--------------------+---------+---------
coreapplication_obiccs1          | OracleBIClusterCo~ |    3124 | Alive   
coreapplication_obisch1          | OracleBIScheduler~ |    3123 | Alive   
coreapplication_obijh1           | OracleBIJavaHostC~ |    3121 | Alive   
coreapplication_obips1           | OracleBIPresentat~ |    3120 | Alive   
coreapplication_obis1            | OracleBIServerCom~ |    3122 | Alive
Now, let's stop the BI Server, coreapplication_obis1 or OrcleBIServerCom~. There are 2 ways to bring this down. Well, one command, stopproc, but 2 different ways. Notice the column headers up above, you have ias-component and process-type. Using ias-component:
[oracle@oracle-web-tier bin]$ ./opmnctl stopproc ias-component=coreapplication_obis1
opmnctl stopproc: stopping opmn managed processes...
[oracle@oracle-web-tier bin]$ ./opmnctl status

Processes in Instance: instance1
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status  
---------------------------------+--------------------+---------+---------
coreapplication_obiccs1          | OracleBIClusterCo~ |    3124 | Alive   
coreapplication_obisch1          | OracleBIScheduler~ |    3123 | Alive   
coreapplication_obijh1           | OracleBIJavaHostC~ |    3121 | Alive   
coreapplication_obips1           | OracleBIPresentat~ |    3120 | Alive   
coreapplication_obis1            | OracleBIServerCom~ |     N/A | Down
Start it back up.
[oracle@oracle-web-tier bin]$ ./opmnctl startproc ias-component=coreapplication_obis1
opmnctl startproc: starting opmn managed processes...
[oracle@oracle-web-tier bin]$ ./opmnctl status

Processes in Instance: instance1
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status  
---------------------------------+--------------------+---------+---------
coreapplication_obiccs1          | OracleBIClusterCo~ |    3124 | Alive   
coreapplication_obisch1          | OracleBIScheduler~ |    3123 | Alive   
coreapplication_obijh1           | OracleBIJavaHostC~ |    3121 | Alive   
coreapplication_obips1           | OracleBIPresentat~ |    3120 | Alive   
coreapplication_obis1            | OracleBIServerCom~ |    3525 | Alive 
process-type shutdown:
[oracle@oracle-web-tier bin]$ ./opmnctl stopproc process-type=OracleBIServerComponent
opmnctl stopproc: stopping opmn managed processes...
[oracle@oracle-web-tier bin]$ ./opmnctl status

Processes in Instance: instance1
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status  
---------------------------------+--------------------+---------+---------
coreapplication_obiccs1          | OracleBIClusterCo~ |    3124 | Alive   
coreapplication_obisch1          | OracleBIScheduler~ |    3123 | Alive   
coreapplication_obijh1           | OracleBIJavaHostC~ |    3121 | Alive   
coreapplication_obips1           | OracleBIPresentat~ |    3120 | Alive   
coreapplication_obis1            | OracleBIServerCom~ |     N/A | Down
Note that I didn't use OracleBIServerCom~. It expects the full name of the component, in this case, OracleBIServerComponent. If you use the shortened name, you'll get this:
[oracle@oracle-web-tier bin]$ ./opmnctl stopproc process-type=OracleBIServerCom~
opmnctl stopproc: stopping opmn managed processes...
================================================================================
opmn id=oracle-web-tier:9501
    No processes or applications match the specified configuration.
Finally, bring the BI Server back up.
[oracle@oracle-web-tier bin]$ ./opmnctl startproc process-type=OracleBIServerComponent
opmnctl startproc: starting opmn managed processes...
[oracle@oracle-web-tier bin]$ ./opmnctl status

Processes in Instance: instance1
---------------------------------+--------------------+---------+---------
ias-component                    | process-type       |     pid | status  
---------------------------------+--------------------+---------+---------
coreapplication_obiccs1          | OracleBIClusterCo~ |    3124 | Alive   
coreapplication_obisch1          | OracleBIScheduler~ |    3123 | Alive   
coreapplication_obijh1           | OracleBIJavaHostC~ |    3121 | Alive   
coreapplication_obips1           | OracleBIPresentat~ |    3120 | Alive   
coreapplication_obis1            | OracleBIServerCom~ |    3803 | Alive
Fairly simple.

For a full list of opmnctl commands, simply run ./opmnctl help and you'll get the following output:
[oracle@oracle-web-tier bin]$ ./opmnctl help

usage: opmnctl [verbose] [<scope>] <command> [<options>]

verbose: print detailed execution message if available

Permitted <scope>/<command>/<options> combinations are:

 scope    command     options
-------  ---------   ---------
          start                         - Start opmn
          startall                      - Start opmn & all managed processes
          stopall                       - Stop opmn & all managed processes
          shutdown                      - Shutdown opmn & all managed processes
[<scope>] startproc   [<attr>=<val> ..] - Start opmn managed processes
[<scope>] restartproc [<attr>=<val> ..] - Restart opmn managed processes
[<scope>] stopproc    [<attr>=<val> ..] - Stop opmn managed processes
[<scope>] reload                        - Trigger opmn to reread opmn.xml
[<scope>] status      [<options>]       - Get managed process status
[<scope>] metric      [<attr>=<val> ..] - Get DMS metrics for managed processes
[<scope>] dmsdump     [<dmsargs>]       - Get DMS metrics for opmn
[<scope>] debug       [<attr>=<val> ..] - Display opmn server debug information
[<scope>] set         [<attr>=<val> ..] - Set opmn log parameters
[<scope>] query       [<attr>=<val>]    - Query opmn log parameters
          launch      [<attr>=<val> ..] - Launch a configured target process
          phantom     [<attr>=<val> ..] - Register phantom processes
          ping        [<max-retry>]     - Ping local opmn
          validate    [<filename>]      - Validate the given opmn xml file
          help                          - Print brief usage description
          usage       [<command>]       - Print detailed usage description
          createinstance                - Create an Oracle Instance
          createcomponent               - Create a specified component
          deleteinstance                - Delete an instance and components
          deletecomponent               - Delete a specified component
          registerinstance              - Register with admin server
          redeploy                      - Redeploy the admin server application
          unregisterinstance            - Unregister with admin server
          updateinstanceregistration    - Update instance registration
          updatecomponentregistration   - Update component registration

3 comments:

vanessa said...

My opmnctl shuts down automatically. Is this a bug? Is there a way to make it not shutting down automatically?? thanks.

chet justice said...

@vanessa

It should not shut down automatically. Did you check the logs for errors? If so, what did you find in there?

chet

sunil awnani said...

I am not able to start my OPM,
while starting it is showing:
./opmnctl status
Unable to connect to opmn.
Opmn may not be up.
opmnctl status: failed.


Kindly provide the solution!!