This content has been marked as final. Show 8 replies
That doc is talking about RAC Clusters. For SG clusters, what you need is http://docs.oracle.com/cd/E11857_01/em.111/e16790/ha_multi_resource.htm#autoId68
This will tell you how to configure an agent on each node, and relocate the database target based on package location. If you have multiple packages (1 db per package) this is the recommended method.
The alternative, is to use ORACLE_HOSTNAME=<package vip) during the install, which means you end up with 1 agent per package and is a lot of overhead and maintenance (How to Configure Grid Control Agents to Monitor Virtual Hostname in HA environments (Doc ID 406014.1)). I highly recommend the relocate target method.
In 11g, you can also use the emctl relocate command, instead of having to install EMCLI on each target node. You first must set the agent pairs that a target can move between with emcli set_standby_agent (once).
For information on the EMCLI Method see, Setup and Configure Target Relocate Using EMCLI 10.2 or 11.1 (Doc ID 577443.1)
1) Make sure you have 11g Agents (or higher)
2) Install a single Agent on each of the Cluster nodes
3) Discover the failover targets on each of the active cluster nodes
4) Flag the targets, so they are allowed to fail-over to another Agent
via EMCTL. Repeat for each target:
$ emcli set_standby_agent -src_agent="<primary>" -dest_agent="<backup>" -target_name="<name>" -target_type="<type>"
On a 3-node (or more) cluster, simply run the EMCLI command for each standby node (changing the dest_agent parameter)
This setup is just a one-time thing, for each target in the cluster that needs to failover to one or more nodes.
5) Now that the ground work has been done, you have 2 ways of making the target 'move' to another Agent:
A> You can use EMCLI to relocate the target:
$ emcli relocate_targets -src_agent=<old agent> -dest_agent=<new agent> -target_name=<name> -target_type=<type> -copy_from_src -force=yes
- Can be done 'centrally', so an admin can use this to do a manual failover
- If you want to automate this, using the cluster failover scripts, you will need to deploy EMCLI everywhere (more maintenance)
B> You can use EMCTL on the 'new agent' to force a failover to that Agent:
$ emctl relocate_target agent '<name>' '<type>'
- This is the way to automate the failover in cluster scripts
- You need to be in the Agent home of the surviving machine to run this command (you can ONLY pull targets to the Agent you are running from)
- An Agent can only 'assume' responsibility if it is allowed to have this target (this is the reason for running the emcli standby_agent commands)