How-To: Run CMSDK against a RAC cluster
By frank.closheim on Oct 29, 2013
Using CMSDK in a production environment often requires a robust, reliable and failover enabled repository. When using Oracle Real Application Cluster (RAC) with your CMSDK repository you need to have a specific configuration in place to support such a setup. This post will explain the configuration steps required when running CMSDK 184.108.40.206 with Oracle WebLogic Server (WLS).
In the previous CMSDK 220.127.116.11 version a RAC enabled connect string looked like this:
(ADDRESS = (PROTOCOL = TCP)(HOST = rac1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = rac2)(PORT = 1521))
(LOAD_BALANCE = NO)
(FAILOVER = ON)
(SERVICE_NAME = rac)
(failover_mode = (type=select)(method=basic))
CMSDK 18.104.22.168 makes use of data sources to connect to the underlying database. These data sources are configured inside your Application Server, such as Oracle WebLogic Server.
In Oracle WebLogic Server 10.3.4, a single data source implementation has been introduced to support an RAC cluster. It responds to Fast Application Notification (FAN) events to provide Fast Connection Failover (FCF), Runtime Connection Load-Balancing (RCLB), and RAC instance graceful shutdown. XA affinity is supported at the global transaction Id level. The new feature is called WebLogic Active GridLink for RAC; which is implemented as the GridLink data source within WebLogic Server.
This GridLink data source also works with Oracle Single Client Access Name (SCAN). SCAN is a feature used in RAC environments that provides a single name for clients to access any Oracle Database running in a cluster. You can think of SCAN as a cluster alias for databases in the cluster. The benefit is that the client’s connect information does not need to change if you add or remove nodes or databases in the cluster.
The CMSDK 22.214.171.124 documentation describes how to create a regular JDBC data source named
jdbc/OracleDS. Please refer to the following document which describes in detail how to create a GridLink data source in WLS.