Configuring the Remote Management Framework (RMF)
The Remote Management Framework (RMF) is an architecture for capturing performance statistics (AWR data) in an Oracle database.
Note:
RMF can be used only for ADG standby databases and standalone databases using SPFILE
. In CDB databases, RMF can only be configured for CBD$ROOT
. PDB is not supported.
The RMF topology is a centralized architecture that consists of all the participating database nodes along with their metadata and connection information. The RMF topology has one database node, called destination, which is responsible for storing and managing performance data that is collected from the database nodes, called sources. A candidate destination is a source that can be configured in such way that it can replace the original destination, when the original destination is unavailable or is downgraded. A topology can have only one destination, and one or more candidate destinations.
Each database node in a topology must be assigned a unique name. This can be done using the procedure DBMS_UMF.configure_node()
during configuring a node. If the name for a node is not provided in this procedure, then the value of the initialization parameter DB_UNIQUE_NAME
is used as the name for a node.
Note:
If the database being configured has multiple instances, the DBMS_UMF.configure_node
must be performed in only one of the instances.
The database nodes in a topology communicate with each other using database links. The database links between destination to source and source to destination must be created for each database during the ADG deployment.
A service is an application running on a topology. For example, an AWR service running on a topology enables remote AWR snapshots for all the database nodes in that topology.
The RMF APIs are the PL/SQL procedures and functions that can be used to configure the RMF topology. The RMF APIs are declared in the PL/SQL package DBMS_UMF
.
Note:
-
The
SYS$UMF
user is the default database user that has all the privileges to access the system-level RMF views and tables. All the AWR related operations in RMF can be performed only by theSYS$UMF
user. TheSYS$UMF
user is locked by default and it must be unlocked before deploying the RMF topology. -
You need to provide password for the
SYS$UMF
user when creating database links in the RMF topology. If the password for theSYS$UMF
user is changed, all the database links in the RMF topology must be recreated.
See Also:
Oracle Database PL/SQL Packages and Types Reference for more information about the DBMS_UMF
package
Setting Up the RMF Topology
You need to set up the RMF topology for collecting performance statistics for an Oracle database.
The following are the prerequisites for setting up the RMF topology:
-
You must create destination to source and source to destination database links for all the database nodes to be registered in the RMF topology. This setup should be done during the ADG deployment.
The following are the steps for setting up the RMF topology:
-
Configure database nodes to add to the topology.
-
Create the topology.
-
Register database nodes with the topology.
-
(Optional) Register database links between the nodes in the topology. This configuration is required when a destination becomes unavailable and a candidate destination needs to connect to the remaining nodes in the topology using database links.
Example for Setting Up the RMF Topology
In this example, the three database nodes T
, S0
, and S1
are added to the topology Topology_1
. Node T
is the destination node and nodes S0
and S1
are the source nodes. Node S1
is a candidate destination, that is, when the original destination T
is not available, node S1
becomes the new destination. The AWR service is enabled for all the sources in the topology.
Assume that the following database links are already created during the ADG deployment:
-
DBLINK_T_to_S0
: Database link fromT
toS0
. -
DBLINK_T_to_S1
: Database link fromT
toS1
. -
DBLINK_S0_to_T
: Database link fromS0
toT
. -
DBLINK_S0_to_S1
: Database link fromS0
toS1
. -
DBLINK_S1_to_T
: Database link fromS1
toT
. -
DBLINK_S1_to_S0
: Database link fromS1
toS0
.
The following is a sample code for setting up the RMF topology:
/* Configure the nodes T, S0, and S1 by executing these procedures */
/* Execute this procedure on node T */
SQL> exec DBMS_UMF.configure_node ('T');
/* Execute this procedure on node S0 */
SQL> exec DBMS_UMF.configure_node ('S0');
/* Execute this procedure on node S1 */
SQL> exec DBMS_UMF.configure_node ('S1');
/* Execute all the following procedures on the destination node T */
/* Create the topology 'Topology_1' */
SQL> exec DBMS_UMF.create_topology ('Topology_1');
/* Register the node S0 with the topology 'Topology_1' */
SQL> exec DBMS_UMF.register_node ('Topology_1',
'S0',
'DBLINK_T_to_S0',
'DBLINK_S0_to_T');
/* Register the node S1 with the topology 'Topology_1' */
SQL> exec DBMS_UMF.register_node ('Topology_1',
'S1',
'DBLINK_T_to_S1',
'DBLINK_S1_to_T');
/* Register the database links between the nodes S0 and S1 in the topology 'Topology_1'.
* When destination T is unavailable at the time of failover, the source S0 can connect
* to the candidate destination S1 using this database link.
*/
SQL> exec DBMS_UMF.create_link ('Topology_1',
'S0',
'S1',
'DBLINK_S0_to_S1',
'DBLINK_S1_to_S0');
/* Enable the AWR service on the node S0 in the topology 'Topology_1' */
SQL> exec DBMS_WORKLOAD_REPOSITORY.register_remote_database(node_name=>'S0');
/* Enable the AWR service on the node S1 in the topology 'Topology_1' */
SQL> exec DBMS_WORKLOAD_REPOSITORY.register_remote_database(node_name=>'S1');
Managing ADG Role Transition
An ADG role transition occurs when the ADG Primary or original destination fails (failover event) or when an ADG standby database or candidate destination takes over the role of the ADG Primary during the maintenance phase (switchover event).
Oracle recommends that you perform the following configuration steps before making the role change, that is, before making the candidate destination as the new destination due to the failover or switchover event:
-
Create database links between the sources and the candidate destination. This configuration must be done for all the sources by executing the following procedure on each source:
SQL> EXEC DBMS_UMF.CREATE_LINK (topology name, source name, candidate destination name, source to candidate destination database link, candidate destination to source database link);
Note:
Oracle recommends that you create database links among all the nodes in a topology to avoid any unanticipated issues that may arise at the time of role change.
-
Take an AWR snapshot on the candidate destination.
Note:
To generate an AWR report for the candidate destination after the role change, take at least one snapshot for the candidate destination before the role change.
-
Restart the candidate destination as well as all the sources.
After completing the preceding configuration steps, you can make the role change by executing the following procedure on the candidate destination:
SQL> EXEC DBMS_UMF.SWITCH_DESTINATION(topology name, force_switch=>FALSE);
Note:
Oracle recommends that you do not take any snapshots for the sources during the role transition period. After the role change process is complete by executing the DBMS_UMF.SWITCH_DESTINATION
procedure, you can take snapshots for the sources. If you want to generate AWR reports for the sources after the role change, then you must choose only those snapshots that were taken after the role change.
Getting the Details of Registered RMF Topologies
The RMF views described below show the configuration information about all the registered RMF topologies in a multi-database environment.
Table 6-3 RMF Views
RMF View | Description |
---|---|
|
Shows all the registered topologies in a multi-database environment. Each topology has a topology name, a destination ID, and topology state. To enable RMF, the topology state of at least one topology should be |
|
Shows all the registered nodes in all the topologies in a multi-database environment. |
|
Shows all the registered database links in all the topologies in a multi-database environment. |
|
Shows all the registered services in all the topologies in a multi-database environment. |
See Also:
Oracle Database Reference for more information about these RMF views