Company

Advanced Search
Home | General Database | Platform | Articles | Scripts | Online Documentation
Back

Articles

Date 2010-03-21 08:13:24
Component RAC
Title How to make Database Control High Available.
Version 11.1 >
Problem
How to make Database Control High Available.
 
There are customers are using RAC for their HA solution, but just for one database. For those customers using Database control instead of Enterprise Manager Grid Control can be a good option.
 
But a question we often get is what are the steps to make Database Control High Available ?
Solution
Database Control exists of a OMS and Agents. On each node the agent must be running an the OMS will be running on one node. In general where database control is configured OMS is configured. The agents will update the information to DBControl. So to be able to have Database Control High available we need at least 2 DBConsole active. Notice that running multipe DBConsole it require some additional memory and CPU.
 
You will use emca to display and modify the current configure.
 
What is the current configuration ?
 
[oracle@server2 ~]$ emca -displayConfig dbcontrol -cluster
 
STARTED EMCA at Mar 19, 2010 8:57:58 AM
EM Configuration Assistant, Version 11.2.0.0.2 Production Copyright (c) 2003, 2005, Oracle. All rights reserved.
 
Enter the following information:
Database unique name: RAC
Service name: RAC2
Do you wish to continue? [yes(Y)/no(N)]: Y
Mar 19, 2010 8:58:10 AM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/cfgtoollogs/emca/RAC/emca_2010_03_19_08_57_58.log.
Mar 19, 2010 8:58:13 AM oracle.sysman.emcp.EMDBPostConfig showClusterDBCAgentMessage
INFO:
**************** Current Configuration ****************
 INSTANCE            NODE           DBCONTROL_UPLOAD_HOST
----------        ----------        ---------------------
 
RAC               server1           server1.grid-it.nl
RAC               server2           server1.grid-it.nl
 
 
As you see we have a database with the name RAC. DBControl is configured on server1.
 
Now you have 2 options:
 
Assume you have an failure with server1, the hardware is broken. This mean you cannot connect to DBControl. So modify the configuration to have DBControl active on server2 is an option. Although this is not a really HA solution, manual interference is needed you can execute the following statement.
 
 
How to reconfig DBControl ?
 
[oracle@server2 ~]$ emca -reconfig dbcontrol -cluster
 
STARTED EMCA at Mar 19, 2010 8:59:36 AM
EM Configuration Assistant, Version 11.2.0.0.2 Production Copyright (c) 2003, 2005, Oracle. All rights reserved.
 
Enter the following information:
Database unique name: RAC
Service name: RAC2
Database Control node name (optional):
Agent Node list [comma separated] (optional):
Do you wish to continue? [yes(Y)/no(N)]: Y
Mar 19, 2010 8:59:45 AM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/cfgtoollogs/emca/RAC/emca_2010_03_19_08_59_36.log.
Mar 19, 2010 8:59:47 AM oracle.sysman.emcp.util.DBControlUtil stopOMS
INFO: Stopping Database Control (this may take a while) ...
Mar 19, 2010 9:00:15 AM oracle.sysman.emcp.EMAgentConfig performDbcReconfiguration
INFO: Propagating /u01/app/oracle/product/11.2.0/dbhome_1/server1_RAC/sysman/config/emd.properties,/u01/app/oracle/product/11.2.0/dbhome_1/server2_RAC/sysman/config/emd.properties to remote nodes ...
Mar 19, 2010 9:00:15 AM oracle.sysman.emcp.util.DBControlUtil startOMS
INFO: Starting Database Control (this may take a while) ...
Mar 19, 2010 9:01:11 AM oracle.sysman.emcp.EMDBPostConfig performDbcReconfiguration
INFO: Database Control started successfully Mar 19, 2010 9:01:11 AM oracle.sysman.emcp.EMDBPostConfig showClusterDBCAgentMessage
INFO:
**************** Current Configuration ****************
 INSTANCE            NODE           DBCONTROL_UPLOAD_HOST
----------        ----------        ---------------------
 
RAC               server1           server2.grid-it.nl
RAC               server2           server2.grid-it.nl
 
 
 
Due to the fact you execute the reconfig statement on server2, DBControl will be automatically configured on this host. The above confirm this.
 
But as mentioned this is not a full HA solution. Better in this case would be that each server has DBcontrol active and in all cases you can use https://server1.grid-it.nl:1158/em or https://server2.grid-it.nl:1158/em
To accomplish this you need to execute again a reconfig statement but notice you need to define the Database Control Name and Agent Node.
 
 
How to make DBcontrol High Available ?
 
[oracle@server2 ~]$ emca -reconfig dbcontrol -cluster
 
STARTED EMCA at Mar 19, 2010 9:01:48 AM
EM Configuration Assistant, Version 11.2.0.0.2 Production Copyright (c) 2003, 2005, Oracle. All rights reserved.
 
Enter the following information:
Database unique name: RAC
Service name: RAC2
Database Control node name (optional): server1
Agent Node list [comma separated] (optional): server1
Do you wish to continue? [yes(Y)/no(N)]: Y
Mar 19, 2010 9:02:13 AM oracle.sysman.emcp.EMConfig perform
INFO: This operation is being logged at /u01/app/oracle/cfgtoollogs/emca/RAC/emca_2010_03_19_09_01_36.log.
Mar 19, 2010 9:02:20 AM oracle.sysman.emcp.util.DBControlUtil stopOMS
INFO: Stopping Database Control (this may take a while) ...
Mar 19, 2010 9:02:35 AM oracle.sysman.emcp.EMAgentConfig performDbcReconfiguration
INFO: Propagating /u01/app/oracle/product/11.2.0/dbhome_1/server1_RAC/sysman/config/emd.properties to remote nodes ...
Mar 19, 2010 9:02:36 AM oracle.sysman.emcp.util.DBControlUtil startOMS
INFO: Starting Database Control (this may take a while) ...
Mar 19, 2010 9:03:04 AM oracle.sysman.emcp.EMDBPostConfig performDbcReconfiguration
INFO: Database Control started successfully Mar 19, 2010 9:03:04 AM oracle.sysman.emcp.EMDBPostConfig showClusterDBCAgentMessage
INFO:
**************** Current Configuration ****************
 INSTANCE            NODE           DBCONTROL_UPLOAD_HOST
----------        ----------        ---------------------
 
RAC               server1           server1.grid-it.nl
RAC               server2           server2.grid-it.nl
 
 
In case of a failure of one host, you can still use DBControl without any additional modification, with the remark you need to modify the url to point to the other host.
 
The end result is you have DBControl High Available.
 
Next step is to add emctl to the Cluster layer as a resource to have it automatically started.
The steps to execute this be explained in another article.
 

© RACHelp 2010 | About me | Disclaimers | Contact