Configure EPM 11.2.2 Foundation without RCU - is it possible?

All right - so, I covered the installation steps in my earlier blog, it's time to configure now!

During the configuration process, I will point out some of the changes from 11.1.2.4.
In previous releases, you only needed to run the RCU if you installed and configured select modules. In 11.2 you must run the RCU utility for the configuration to work. 

The Repository Creation Utility (RCU) is used to create schemas to support Oracle Enterprise Performance Management System Java web applications. This process requires sys DBA credentials. You must run RCU on each machine in your environment. In a distributed environment, create a new, different prefix for each machine in the environment.

I will come to more of that later. At this point, I just decided to move ahead with the configuration without creating the schemas with RCU 💀 
Let's see what happens & how to fix the situation. 

You can choose from the below methods of configurations:
  • On the last page of EPM System Installer, click or select Configure.
  • From the Start menu, select Oracle EPM System, and then EPM System Configurator (all instances).
  • Change to EPM_ORACLE_HOME/common/config/version_number and then launch configtool.bat. (.sh)
  • To run EPM System Configurator in console mode, launch it from the command line using the –console parameter. For example /common/config/version_number/startconfigtool.bat -console.
  • Silent configuration.
I will go ahead with the second option.

The Oracle splash screen pops up:
The initial configuration screen then appears.
  • Home directory for EPM Oracle instances: Specify the directory in which to create the EPM Oracle instance. The default EPM Oracle instance location is MIDDLEWARE_HOME/user_projects. To modify an existing EPM Oracle instance, browse to the EPM Oracle instance location.
  • EPM Oracle Instance name: Specify a name for the EPM Oracle instance. The default EPM Oracle instance name is epmsystem1. To modify an existing EPM Oracle instance, specify the EPM Oracle instance name
When you first configure the Shared Services and Registry database, choose Perform first-time configuration of Shared Services database. This database includes the Shared Services Registry, which is used to store common information for all products.
I selected the Foundation components (except Calculation Manager).
  • Create Windows Services for configured components (Windows only): Select to configure each service as a Windows service that starts automatically when you start Windows.
  • Run Windows Services as non-local system account: Select to specify a non-local system account to configure Windows services, and then specify a user name and password. This user should be a member of the Administrators group.If you do not select this option, EPM System Configurator creates Windows services using the local system account. Before you start the services, change them to use the appropriate domain account
  • Use SSL for Web application server communications (requires manual configuration): Depending on your SSL implementation, select to use SSL communication for all Java web applications. If this option is selected, URLs are in the form https.
  • Mail Server Host: For products that integrate an e-mail feature, which uses standard Simple Mail Transfer Protocol (SMTP) protocol, specify the outgoing mail (SMTP) server. To enable e-mail alerts, you must specify the SMTP server name.
  • Outgoing Port: Specify the mail server port number or accept the default value. If you are using SSL to communicate with the mail server, enter an SSL port.
  • Incoming Port: Specify the mail server port number or accept the default value. If you are using SSL to communicate with the mail server, enter an SSL port.
  • Administrator's Email Address: Specify the administrator's e-mail address to use for notifications.
  • Use SSL to communicate with mail server: Select to use SSL communication for all e-mail communication.
  • Use authentication to send email: Specify whether the mail server requires authentication, and then specify a user name and password.
  • LCM Export Import Location: Enter the location from which to export and import Oracle Hyperion Enterprise Performance Management System Lifecycle Management artifacts. To enable data migration across distributed environments, specify a shared file system path defined using UNC syntax that is accessible from all the servers in the deployment.
  • Enable SSL Offloading: Select this option if you are using an SSL Offloader.
  • External URL Host: Specify the host name for the external URL.  
  • External URL Port: Port number for the external URL.
Specify information about the WebLogic domain to which to deploy the Java web applications. Specify whether to deploy Java web applications to an existing domain or to a new domain. If you create a new domain, the WebLogic Administration Server for this domain is created on this machine.
  • Domain Name: To define a new domain, enter a domain name. The default domain name is EPMSystem. 
  • Administration Server Host: Specify the Administration Server Host.
  • Administration Server Port: Accept the default port; or, to change the default, enter a port number that does not conflict with other applications installed on your machine.
  • Administrator User: Enter the Administrator user name for the domain. By default, EPM System Configurator uses epm_admin. 
  • Administrator Password: Enter the Administrator password or enter a new password for a new domain.
  • Confirm Administrator Password: Confirm the Administrator password.
I uncheckd the “Deploy the Java web applications to a single managed server” option because I was not going for a compact deployment. If I select this option, all web applications will be deployed to one managed server called EPMServer0 and all web applications will be running on one port which the default is 9000.
I used OHS as the web server.
Set the logical web address for the web applications to this web server: Select this option if you want EPM System Configurator to set the logical web address for all Java web applications to the web server. Use this option if you want to use the web server as the load balancer. If you do not select this option, EPM System Configurator uses the address of the physical Java web application as the logical address.
Use this option to change the logical address for a deployed Java web application, for example if you are using a load balancer.
EPM System Configurator creates a preprovisioned user (called admin by default), which enables you to log on to Shared Services after configuration to create and provision users. EPM System Configurator requires you to specify a new admin password during configuration. After configuration, make subsequent changes to the admin user password in the Oracle Hyperion Shared Services Console.
Confirm the configuration tasks to complete, and then click or select Next. Or, click or select Back to make changes.
And finally something that I was expecting - FAILURE!!!

I checked the config logs at D:\Oracle\Middleware\user_projects\epmsystem1\diagnostics\logs\config.
Found the below errors flooding the 'configtool.log':
  • javax.script.ScriptException: TypeError: env.isWindows is not a function in <eval> at line number 1
  • <eval>:1 TypeError: env.isWindows is not a function
  • java.lang.reflect.InvocationTargetException
  • D:\Oracle\Middleware\EPMSystem11R1\common\config\11.1.2.0\resources\ant-repository\build.xml:231: java.lang.IllegalStateException
It was very much clear that EPM Configurator Deploy to Application Server tasks will fail until Repository Creation Utility (RCU) has been run to create supporting Weblog schemas and 'RCUSchema.properties' has been updated properly.

This process requires sys DBA credentials. Here as well I tried using other credentials with highest privileges, but that didn't work. Let's see.
Navigate to Middleware home/oracle_common/bin/. In my case - D:\Oracle\Middleware\oracle_common\bin.
Launch rcu.batRight Click and Run as Administrator. 
On the Welcome page, click Next.
Click Create Repository and System Load and Product Load, and then click Next.
If you have previously created a repository and configured EPM System, and you want to perform a fresh configuration , drop the repository, and then create a new repository.
On the Database Connection Details page, specify a user with DBA or SYSDBA privileges, such as sys, provide the fully qualified service name, and then click Next.
Here, I didn't use 'sys', instead I used another user with highest DBA privileges. Note: When you use any user other than 'sys', the Role changes from SYSDBA to Normal. This shouldn't be the case. The Role should be SYSDBA.
Select an UNIQUE prefix. Select all components except Oracle Data Integrator. Click Next.
Click Next.
Enter a password, make a note of it, and then click Next. It's better to use same password for all the schemas.
On the Map Tablespaces page, click Next.
Click OK to create tablespaces.
Click OK.
On the Summary page, review the selections, and then click Create.
So now it says it's unable to perform GRANT operations due to insufficient privileges. Is it because I used an user other than 'sys? I got few more GRANT errors:
I chose to ignore these and provide the GRANTs manually later. I clicked on Ignore every time.
On the Completion Summary page, click Close.
Now I had the below GRANTs executed by a DBA:
  • GRANT execute on dbms_lob to DEV_MDS
  • GRANT execute on sys.dbms_aq to DEV_UMS
  • GRANT execute on sys.dbms_aqadm to DEV_UMS
I now need to update RCU schema properties file.
Location: EPM_ORACLE_HOME/common/config/11.1.2.0/RCUSchema.properties
Take a backup before modifying the file. This should be done very carefully.
Below are the file contents:
  • sysDBAUser—The sysdba user for RCU. Please keep this field unchanged.
  • sysDBAPassword—The sysdba password for RCU. Please keep this field unchanged.
  • rcuSchemaPassword— Give the RCU schema password created while running RCU. After the first execution, the plain text password will be encrypted in the file.
  • schemaPrefix—Give the schema prefix used to create RCU.
  • dbURL—Follow the below convention for dbURL:
  • Format for Oracle Database with SID:dbURL=jdbc:oracle:thin:@hostName:port:SID
  • Format for Oracle Database with service name:dbURL=jdbc:oracle:thin:@hostName:port/serviceName
  • Format for Microsoft SQL Server, with SID, using the name for database you already created:dbURL=jdbc:weblogic:sqlserver://hostName:port;databaseName=databaseName
Note: Updating RCU Schema Properties shows the format for Oracle Database with SID as "dbURL=jdbc:oracle:thin:hostName:port:SID".  There is a missing @ that should precede hostName.  Without the @, the EPM System Configurator will complete but Foundation Service will not start due to Invalid URL.

Very Important: If the EPM System Configurator has been run without properly configuring the RCUSchema.properties file, the MIDDLEWARE_HOME/user_projects/domains folder will need to be deleted prior to running the EPM System Configurator again.  This is because the EPM System Configurator will only read the RCUSchema.properties when configuring a new domain.
I ran the EPM configurator again and selected the 'Deploy to Application Server'.
Since I deleted the domains folder, I need to deploy to a new domain again.
Unfortunately, the deployment failed again.

Dropped the RCU schemas from the RCU utility. Use the Drop Repository option in the RCU to do so.
So now, I used the 'sys' user while creating the schemas using the RCU.
Very Important: You need to choose a different prefix this time, otherwise you might still face the same error.
Rest of the steps of RCU are same, please refer the earlier screenshots. Now that the tables are created, I checked the same from the backend.
select * from schema_version_registry where MRC_NAME='POC1122';
Now, I ran the configuration again and this this it was successful 😊
I will cover the configuration of the other components in the next blog.


Comments

  1. Nice blog with detailed info. Much needed for EPM guys like me to learn.
    A small query below :
    In previous releases, you only needed to run the RCU if you installed and configured select modules. Can you please explain this further? I didn't understand

    ReplyDelete
    Replies
    1. In EPM 11.1.2.4 and prior, you didn't need to worry about running RCU if you weren't configuring Oracle Data Integrator in the pre-FDMEE days, Hyperion Financial Close Management Suite 11.1.2.1 through 11.1.2.4.2xx, or Oracle Business Intelligence.

      Delete
    2. Unable to find continuation of this blog. Can you please provide the link if it's already uploaded?

      Delete
    3. https://experimentwithepm.blogspot.com/2020/08/configuring-epm-1122-components.html

      Delete
  2. Thanks for detailed explanation and very informative :) one question from my end we are installing EPM 11.2.2 version WIN 2019 servers everything went fine as expected and also while running RCU able to create tables and database users on SQL 2016 server. But while deploying Foundation component we are getting "Deployment failed" message. When we are looking into configtool log and Wlst_debug log file observed very strange errors :

    [2020-09-07T16:50:54.515+02:00] [EPMINS] [TRACE] [EPMINS-00001] [oracle.EPMINS] [tid: 1] [ecid: 70b37511-8b1e-4eca-9798-5e471eb12505-00000006,0] [SRC_CLASS: com.hyperion.install.util.MappingTreeHelper] trace: Getting resource: mappingTree.xml
    [2020-09-07T16:50:54.671+02:00] [EPMCFG] [TRACE] [EPMCFG-05922] [oracle.EPMCFG] [tid: 1] [ecid: 70b37511-8b1e-4eca-9798-5e471eb12505-00000006,0] [SRC_CLASS: com.hyperion.install.sw.SoftwareRegistry] Adding Hyperion Home entry...
    [2020-09-07T16:50:57.000+02:00] [EPMCFG] [TRACE] [EPMCFG-01001] [oracle.EPMCFG] [tid: 1] [ecid: 70b37511-8b1e-4eca-9798-5e471eb12505-00000006,0] [SRC_CLASS: com.oracle.preconfig.util.EpmLoggerPreConfigReporter] trace: Running preconfig checks...[[
    Running EPM_ORACLE_HOME...
    EPM_ORACLE_HOME environment variable value: D:\Oracle\Middleware\EPMSystem11R1
    JAVA_HOME environment variable value: D:\Oracle\Middleware\EPMSystem11R1\..\jdk1.8.0_181
    EPM_ORACLE_HOME succeeded
    Running .oracle.products ... .oracle.products succeeded
    Running Jars manifest ...
    Time spent for manifests parsing: 250 ms
    Maximum jars depth achieved: 7, while restriction was: unrestricted
    Parsed 936 manifests
    Total jars and classpath entries encountered: 936
    Total not-existing referenced classpath entries count: 105

    Enumerating not-existing classpath entries:
    Missing (depth 4) file D:\Oracle\Middleware\oracle_common\modules\org.dom4j.jar referenced from D:\Oracle\Middleware\oracle_common\modules\oracle.iau\fmw_audit.jar referenced from D:\Oracle\Middleware\EPMSystem11R1\common\jlib\11.1.2.0\epm_jrf.jar referenced from D:\Oracle\Middleware\EPMSystem11R1\common\jlib\11.1.2.0\epm_j2se.jar referenced from D:\Oracle\Middleware\EPMSystem11R1\common\config\11.1.2.0\configtool.jar

    Any idea ? We have observed all necessary permissions everything fine. Using SQL and while running RCU able to create tables and users also..but strange thing observed WLST_debug log observed 2020-09-14 16:56:11,992 WARNING [1] com.oracle.cie.domain.jdbc.WlsDBHelper - Invalid section
    com.oracle.cie.domain.ValidateException: 40318: Invalid or missing JDBC datasource connection parameters.
    40318: The JDBC datasource required parameters are invalid or missing.
    40318: Correct the datasource connection parameters.
    64205: The Password must be specified.
    64205: Specify the property.
    OPSS Audit Viewer Schema: 64207: Mismatched passwords.
    64207: The Password and Confirm Password do not match.

    We used RCU prefix: hss but in logs its still taking DEV :(

    2020-09-14 16:56:16,648 SEVERE [19] com.oracle.cie.domain.progress.AbstractProgressGenerator - Error occurred in phase {OPSS Processing} execution.
    java.lang.IllegalStateException: SecurityContext:
    Domain Name: EPMSystem
    JDBC URL: opss-audit-DBDS:jdbc:oracle:thin:@//dbhost.example.com:1521/orcl
    JDBC URL: opss-data-source:jdbc:oracle:thin:@//dbhost.example.com:1521/orcl
    JNDI Name: opss-audit-DBDS:jdbc/AuditAppendDataSource
    JNDI Name: opss-data-source:jdbc/OpssDataSource
    Driver Name: opss-audit-DBDS:oracle.jdbc.OracleDriver
    Driver Name: opss-data-source:oracle.jdbc.OracleDriver
    Persistence Type: DATABASE
    Platform: WLS
    Scratch Dir: scratch
    Reconfig Domain: false
    Shared Secret Store: null
    Extension: true
    DisableManagementOperations: falseJDBC Properties:
    user:DEV_IAU_APPEND
    username:DEV_IAU_APPENDJDBC Properties:
    user:DEV_OPSS
    username:DEV_OPSS

    Sorry for long post, any idea what exactly going wrong here ? I can clearly observed in SQL it's created tables and logins with HSS only .

    Thanks in advance.

    Regards,
    Dinesh

    ReplyDelete
    Replies
    1. This definitely has something to do with the RCU. Did you run it multiple times? Also, are you sure you have all the correct details in RCUSchema.properties file? There should not be any conflict there.

      Did you miss anything here?
      40318: The JDBC datasource required parameters are invalid or missing.
      40318: Correct the datasource connection parameters.
      64205: The Password must be specified.
      64205: Specify the property.
      OPSS Audit Viewer Schema: 64207: Mismatched passwords.
      64207: The Password and Confirm Password do not match.

      Delete
  3. Hi, we finally found the cause of the issues at database owner side.the owner of the database rcu which we have created in disable mode.once we enabled config.tool able to write the data to tables under rcu and also able to access jdbc connection details properly. Thanks a lot for your suggestions.

    ReplyDelete
  4. We are facing a unique issue where the EPM configurator is not reading the RCUSchema.properties file. It is not encrpyting the password in the file and also not making use of the prefix 'EPMDEV' and just using 'DEV' as the prefix

    In the wlst_debug log file I see the following errors
    ~~~~~~~~~~~~~~~~~~~~~~
    2021-02-11 18:38:42,375 WARNING [1] com.oracle.cie.domain.jdbc.WlsDBHelper - Invalid section
    com.oracle.cie.domain.ValidateException: 40318: Invalid or missing JDBC datasource connection parameters.
    40318: The JDBC datasource required parameters are invalid or missing.
    40318: Correct the datasource connection parameters.
    at com.oracle.cie.domain.jdbc.WlsDBHelper.validateJdbcResourceAspect(WlsDBHelper.java:687)


    2021-02-11 18:38:42,375 WARNING [1] com.oracle.cie.domain.jdbc.WlsDBHelper - Datasource validation error: EPMSystemRegistry: 64206: Unspecified properties.
    64206: The following must be specified: Username, Password
    64206: Provide missing properties.
    ~~~~~~~~~~~~~

    ReplyDelete
  5. @Saurabh, if you are configuring in the disturbed environment, make sure to install all the components in the WLS admin server.

    ReplyDelete

Post a Comment

Popular posts from this blog

My first FDMEE data load in EPM 11.2.2

Multi-Column numeric data load in FDMEE 11.2.2

What's new with EPM 11.2?