04-13-2011 06:10 AM - edited 03-01-2019 02:25 PM
Hello all,
I have an installation of SCE with Collection Manager 3.6.5 with an Oracle RAC environment with 4 servers for load sharing. The problem is as follows:
Collection Manager installs OK. When i try to configure the database with the wizard dbconf.sh, the output is as follows:
[scmscm@sce01ist00 9204e]$ /usr/scmscm/scripts/dbconf.sh
Enter the DB type:
1 - Oracle
2 - MySQL
3 - Sybase (external not bundled)
Enter your choice: 1
Enter Oracle server host (current is 10.1.1.1) : 10.1.1.1
Enter Oracle server listening port (current is 1521) :1521
Enter Oracle server instance id (current is ciscosce) :ciscosce
Enter CM schema user name (current is sce) :sce
Enter CM schema user password :password
Do you want to test the DB connection? (yes/no): yes
FAIL:DB is not running
DB connection failed.
Do you want to re-enter the DB configuration? (yes/no): no
The system administrator has told me that this is the service IP address of the RAC Oracle service something like a virtual IP address with the ciscosce as the instance ID. In order for this connection to succeed we have changed the server host to something like the following:
Enter Oracle server host (current is rac) : 10.1.1.2
Enter Oracle server instance id (current is ciscosce) :ciscosce1
The server IP is NOT the VIP (10.1.1.1) but one actual IP address of a physical server (10.1.1.2) and the instance ID is not the actual instance ID (ciscosce) but the specified instance ID for that server (ciscosce1). Therefore Oracle does not provide no redundancy nor load sharing capabilities.
The question now is : Does CM 3.6.5 support Oracle RAC environment and if yes, how do i configure it?
TIA,
Nicos
Solved! Go to Solution.
04-13-2011 07:04 AM
There is no straight answer of RAC is supported or not. We sure support Oracle database for our products. To configure the external DB we need to do some changes which I belive you have alreadty done but here are the complete steps which you can try and see if it works.
First of all, you should use the dbconf.sh script to take care of all the configuration files.
Next, you can configure from the SCABB config the proper string to access the Oracle RAC (taken from a live working config, names changed) :
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=ON)(ADDRESS=(PROTOCOL=TCP)(HOST=server1)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=server2)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=server3)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=apricot)))
Edit the TA and JDBC adapter config files to point on Oracle DB
Files are at:
~scmscm/cm/config/jdbcadapter.conf
~scmscm/cm/config/taadapter.conf
Then edit the baseline Oracle access config file:
~scmscm/cm/config/dbpacks/oracle/9204e/dbinfo.vm
updates with the following URL:
#set ($dbinfo.url = "jdbc:oracle:thin:@ (DESCRIPTION = (LOAD_BALANCE = on) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRACServer1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRAC2-vip)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = apricot) )) ")
(this is an example)
Guidelines on how to do it are here:
http://www.cisco.com/en/US/docs/cable/serv_exch/serv_control/broadband_app/rel316/cmug/Configuring_Databases.html#wp1055287
Then please restart the CM to have the changes take effect.
After CM restart you'll also need to retrieve and apply the policy to all SCEs that are using this CM (this step will also update a DB table that will be later required for the Reporter functionality)
As well, you'll have to re-run step 8 from the CM installation:
Step 8 Set the Service Control Engine (SCE) device time zone
Use the following command to set the time zone:
~scmscm/cm/bin/jselect-sce-tz.sh --offset=offset-in-minutes from GMT
For example, if the SCE device is located in GMT+2, use:
~scmscm/cm/bin/jselect-sce-tz.sh --offset=120
If the SCE is located in GMT-10, use:
~scmscm/cm/bin/jselect-sce-tz.sh --offset=-600
This is also needed to update a DB table that is later used by the Reporter
04-13-2011 07:19 AM
Hi Nicos,
This is more a Oracle question than Cisco / Collection Manager.
You will need to modify the URL in ~scmscm/cm/config/dbpacks/oracle/9204e/dbinfo.vm according to what is required for Oracle RAC:
http://blogs.oracle.com/theshortenspot/2009/04/advanced_oracle_jdbc_connectio.html
I am not sure that the current version of the Oracle client supports it so you may also need to replace ojdbc14.jar with a more recent version, note that this is not officially supported.
The URL should look more or less like this:
#set ($dbinfo.url = "jdbc:oracle:thin:@ (DESCRIPTION = (LOAD_BALANCE = on) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRACServer1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRAC2-vip)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ciscosce) )) ")
Hope it helps,
Tom
04-13-2011 07:04 AM
There is no straight answer of RAC is supported or not. We sure support Oracle database for our products. To configure the external DB we need to do some changes which I belive you have alreadty done but here are the complete steps which you can try and see if it works.
First of all, you should use the dbconf.sh script to take care of all the configuration files.
Next, you can configure from the SCABB config the proper string to access the Oracle RAC (taken from a live working config, names changed) :
jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(LOAD_BALANCE=ON)(ADDRESS=(PROTOCOL=TCP)(HOST=server1)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=server2)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=server3)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=apricot)))
Edit the TA and JDBC adapter config files to point on Oracle DB
Files are at:
~scmscm/cm/config/jdbcadapter.conf
~scmscm/cm/config/taadapter.conf
Then edit the baseline Oracle access config file:
~scmscm/cm/config/dbpacks/oracle/9204e/dbinfo.vm
updates with the following URL:
#set ($dbinfo.url = "jdbc:oracle:thin:@ (DESCRIPTION = (LOAD_BALANCE = on) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRACServer1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRAC2-vip)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = apricot) )) ")
(this is an example)
Guidelines on how to do it are here:
http://www.cisco.com/en/US/docs/cable/serv_exch/serv_control/broadband_app/rel316/cmug/Configuring_Databases.html#wp1055287
Then please restart the CM to have the changes take effect.
After CM restart you'll also need to retrieve and apply the policy to all SCEs that are using this CM (this step will also update a DB table that will be later required for the Reporter functionality)
As well, you'll have to re-run step 8 from the CM installation:
Step 8 Set the Service Control Engine (SCE) device time zone
Use the following command to set the time zone:
~scmscm/cm/bin/jselect-sce-tz.sh --offset=offset-in-minutes from GMT
For example, if the SCE device is located in GMT+2, use:
~scmscm/cm/bin/jselect-sce-tz.sh --offset=120
If the SCE is located in GMT-10, use:
~scmscm/cm/bin/jselect-sce-tz.sh --offset=-600
This is also needed to update a DB table that is later used by the Reporter
04-13-2011 07:19 AM
Hi Nicos,
This is more a Oracle question than Cisco / Collection Manager.
You will need to modify the URL in ~scmscm/cm/config/dbpacks/oracle/9204e/dbinfo.vm according to what is required for Oracle RAC:
http://blogs.oracle.com/theshortenspot/2009/04/advanced_oracle_jdbc_connectio.html
I am not sure that the current version of the Oracle client supports it so you may also need to replace ojdbc14.jar with a more recent version, note that this is not officially supported.
The URL should look more or less like this:
#set ($dbinfo.url = "jdbc:oracle:thin:@ (DESCRIPTION = (LOAD_BALANCE = on) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRACServer1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = OracleRAC2-vip)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ciscosce) )) ")
Hope it helps,
Tom
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide