Essbase allows for active/passive clustering of the servers for use in a failover or DR scenario. Oracle uses OPMN to handle the failover from one node to another in the event of a failure. The EPM Config tool, used to configure ESSBASE, does not update the OPMN.xml file correctly and needs to be manually updated as a post install step.
Below are the edits needed to ensure failover of the nodes:
Manual edits of the /user_projects/{eps_instance}/config/OPMN/opmn/opmn.xml file:
1. Lines 4-8 “Notification Server” Sections
Original Entry:
<notification-server interface="any">
<ipaddr remote=“host002.corporate.com"/>
<port local="6711" remote="6712"/>
<ssl enabled=“true" wallet-file="/u01/Oracle/Middleware/user_projects/host002/config/OPMN/opmn/wallet"/>
</notification-server>
Update to disable SSL (rarely used):
<ssl enabled=“false" wallet-file="/u01/Oracle/Middleware/user_projects/host002/config/OPMN/opmn/wallet"/>
Add the following lines before </notification-server>
<topology>
<nodes list=“host002.corporate.com:6712, host004.corporate.com:6712" /> </topology>
Note: on the 004 node the order of the nodes is reversed
The updated section should like similar to this:
<notification-server interface="any">
<ipaddr remote=“host002"/>
<port local="6711" remote="6712"/>
<ssl enabled=“false" wallet-file="/u01/Oracle/Middleware/user_projects/host002/config/OPMN/opmn/wallet"/>
<topology>
<nodes list=“host002.corporate.com:6712, host004.corporate.com:6712" />
</topology>
</notification-server>
2. Update ics-component type (line 55 in my working file, line 52 in original unedited file)
Original Entry:
<ias-component id="Essbase1">
<process-type id="EssbaseAgent" module-id="ESS">
Update to the name of Essbase Cluster using in configtool:
<ias-component id="TCEssP">
Add service failover entry:
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1" service-weight="100"> Note: on the second node the service-weight is “101”
The updated section should look similar to this:
<ias-component id="TCEssP">
<process-type id="EssbaseAgent" module-id="ESS" service-failover="1" service-weight="100">
3. Make sure this value reflects cluster name used in Configtool (line 80 in my working file, line 77 in original unedited file)
CONFIRM: <variable id=“ESSBASE_CLUSTER_NAME” value="TCEssP"/>
4. Disable auto agent restart (line 86 in my working file, line 83 in original unedited file)
BEFORE: <process-set id=“AGENT” restart-on-death=“true">
AFTER: <process-set id=“AGENT” restart-on-death="false">
After the xml files are updated you can test failover with this process:Start Essbase on host 002 using {EPM_INSTANCE_BIN}/bin/opmnctl startall
Verify it started correctly {EPM_INSTANCE_BIN}/bin/opmnctl status
Processes in Instance: EPM_host002
---------------------------------+--------------------+---------+---------
ias-component | process-type | pid | status
---------------------------------+--------------------+---------+---------
TCEssP | EssbaseAgent | 30407 | Alive
Start Essbase on host 004 using {EPM_INSTANCE_BIN}/bin/opmnctl startall
Verify it started correctly {EPM_INSTANCE_BIN}/bin/opmnctl status
Processes in Instance: EPM_host004
---------------------------------+--------------------+---------+---------
ias-component | process-type | pid | status
---------------------------------+--------------------+---------+---------
TCEssP | EssbaseAgent | N/A | Down
Stop Essbase on host 002 using {EPM_INSTANCE_BIN}/bin/opmnctl stopall
Verify it stopped correctly {EPM_INSTANCE_BIN}/bin/opmnctl status
>opmnctl status: opmn is not running.
Verify OPMN started Essbase on the host 004 {EPM_INSTANCE_BIN}/bin/opmnctl status
Processes in Instance: EPM_host004
---------------------------------+--------------------+---------+---------
ias-component | process-type | pid | status
---------------------------------+--------------------+---------+---------
TCEssP | EssbaseAgent | 64812 | Alive
No comments:
Post a Comment