oracle / docker-images

Official source of container configurations, images, and examples for Oracle products and projects
https://developer.oracle.com/use-cases/#containers
Universal Permissive License v1.0
6.53k stars 5.42k forks source link

Error on [CONFIG]:Essbase #1289

Closed marvinamorim closed 5 years ago

marvinamorim commented 5 years ago

Hello.

Yesterday I started to deploy OracleBI on docker, and all the dockerfiles build went out OK. But when I tryed the docker run, I got an error on the step:

Anyone knows what the problem is? I can connect to the oracle DB_HOST with the password that I provied, and I'm using an alphanumeric password on the environment variables ADMIN_PASSWORD and SCHEMA_PASSWORD, and the schemas are normaly created on my DB_HOST. Thanks in advance.

Here is the output of the process:

Starting Fusion Middleware Configuration Wizard for BIEE
ORACLE_HOME set as /u01/oracle
BI_PRODUCT_HOME set as /u01/oracle/bi
PATH set as /u01/oracle/bi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/java/default/bin:/u01/oracle/oracle_common/common/bin:/u01/oracle/wlserver/common/bin:/u01/oracle/container-scripts
LD_LIBRARY_PATH set as /u01/oracle/bi/lib
INSTALL_PROPERTIES /u01/oracle/bi/../oui/mw/bi/metadata/config.properties
INSTALL_INVOCATION /u01/oracle/bi/bin/../../oui/bin/launch.sh -clone ORACLE_HOME=/u01/oracle -invPtrLoc /u01/oracle/oraInst.loc -ignoreSysPrereqs -silent -responseFile /tmp/create_domain_gQbioZtm0f/response.txt -J-Doracle.as.install.engine.weblogic.config.mode=true -J-Doracle.config.mode=true -J-Doracle.as.install.engine.install.properties.location=/u01/oracle/bi/../oui/mw/bi/metadata/config.properties -J-DSHIPHOME_STAGE_DIR=/u01/oracle/bi/../oui/mw/bi -paramfile /tmp/XXX-3577783115.1
Launcher log file is /tmp/OraInstall2019-05-18_11-44-25AM/launcher2019-05-18_11-44-25AM.log.
Checking swap space: must be greater than 500 MB.   Actual 979 MB    Passed
Checking if this platform requires a 64-bit JVM.   Actual 64    Passed
Log: /u01/oracle/.inventory/logs/install2019-05-18_11-44-25AM.log
Copyright (c) 1999, 2017, Oracle and/or its affiliates. All rights reserved.
Reading response file..
Verifying data
[CONFIG] Launching Config Actions
Started Configuration:BI Configuration
[CONFIG]:Create default domains dir
[CONFIG] SUCCESS:Create default domains dir
[CONFIG]:Create schemas using RCU
[CONFIG] [BI Configuration] [Create schemas using RCU]:2019-05-18T11:44:43.430+0000 Starting RCU
[CONFIG] [BI Configuration] [Create schemas using RCU]:2019-05-18T11:44:43.431+0000 See log file: /u01/oracle/.inventory/logs/config2019-05-18_11-44-25AM/RCUCreateSchema/RCUCreateSchema.out
[CONFIG] [BI Configuration] [Create schemas using RCU]:2019-05-18T11:44:43.431+0000 See log file: /u01/oracle/.inventory/logs/config2019-05-18_11-44-25AM/RCUCreateSchema/RCUCreateSchema.log
[CONFIG] SUCCESS:Create schemas using RCU
[CONFIG]:Create expanded domain
[CONFIG] [BI Configuration] [Create expanded domain]:2019-05-18T11:45:51.509+0000 See log file: /u01/oracle/.inventory/logs/config2019-05-18_11-44-25AM/createExpandedDomain.log
[CONFIG] SUCCESS:Create expanded domain
[CONFIG]:Essbase
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T11:54:47.072+0000 See log file: /u01/oracle/.inventory/logs/config2019-05-18_11-44-25AM/essbase.log
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.481+0000 Failed single shot step: Essbase with: Execution of [/u01/oracle/oracle_common/common/bin/wlst.sh, /u01/oracle/bi/modules/oracle.bi.configassistant/essbase.py, /u01/oracle, /u01/oracle/user_projects/domains/bi, weblogic, Expanded, 55840d9ba0af, 9502, 9503, ORACLE, oracle.jdbc.OracleDriver, jdbc:oracle:thin:@//oraclelan.server:1521/ORCL, BI10, jdbc:oracle:thin:@//oraclelan.server:1521/ORCL, ] failed with exit value 1
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.481+0000 Current log files for failed step Essbase
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.482+0000 --------------------
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.482+0000    Log file: /u01/oracle/.inventory/logs/config2019-05-18_11-44-25AM/essbase.log
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.482+0000 --------------------
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.483+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.483+0000 Initializing WebLogic Scripting Tool (WLST) ...
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.483+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.484+0000 Welcome to WebLogic Server Administration Scripting Shell
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.484+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.484+0000 Type help() for help on available commands
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.485+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.485+0000 dbargs.py /u01/oracle/bi/modules/oracle.bi.configassistant/essbase.py /u01/oracle /u01/oracle/user_projects/domains/bi weblogic Expanded 55840d9ba0af 9502 9503 ORACLE oracle.jdbc.OracleDriver jdbc:oracle:thin:@//oraclelan.server:1521/ORCL BI10 jdbc:oracle:thin:@//oraclelan.server:1521/ORCL
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.485+0000 Reading passwords from stdin...
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.485+0000 Enter admin password
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.486+0000 Enter DBSchema password
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.486+0000 Extending domain for Essbase
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.486+0000 Configuring datasources ...
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.486+0000 Setting JDBC url to jdbc:oracle:thin:@//oraclelan.server:1521/ORCL
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.487+0000 Deleting old user of type Property
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.487+0000 Creating user of type Property at /JDBCSystemResource/LocalSvcTblDataSource/JdbcResource/LocalSvcTblDataSource/JDBCDriverParams/NO_NAME_0/Properties/NO_NAME_0
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.487+0000 Master STB data source defined
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.488+0000 Error: getDatabaseDefaults() failed. Do dumpStack() to see details.
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.488+0000 Error: runCmd() failed. Do dumpStack() to see details.
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.488+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.488+0000 Problem invoking WLST - Traceback (innermost last):
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.489+0000   File "/u01/oracle/bi/modules/oracle.bi.configassistant/essbase.py", line 22, in ?
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.489+0000   File "/u01/oracle/bi/modules/oracle.bi.configassistant/pymodules/essbaseimpl.py", line 23, in configureEssbase
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.489+0000   File "/u01/oracle/bi/modules/oracle.bi.configassistant/pymodules/dbargs.py", line 137, in configureSimpleDefaultDataSources
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.489+0000   File "/tmp/WLSTOfflineIni4658213299064068992.py", line 263, in getDatabaseDefaults
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.490+0000   File "/tmp/WLSTOfflineIni4658213299064068992.py", line 19, in command
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.490+0000 Failed to build JDBC Connection object:
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.490+0000      at com.oracle.cie.domain.script.jython.CommandExceptionHandler.handleException(CommandExceptionHandler.java:69)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.490+0000      at com.oracle.cie.domain.script.jython.WLScriptContext.handleException(WLScriptContext.java:2983)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.491+0000      at com.oracle.cie.domain.script.jython.WLScriptContext.runCmd(WLScriptContext.java:735)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.491+0000      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.491+0000      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.491+0000      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.492+0000      at java.lang.reflect.Method.invoke(Method.java:498)
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.492+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.492+0000 com.oracle.cie.domain.script.jython.WLSTException: com.oracle.cie.domain.script.jython.WLSTException: Got exception when auto configuring the schema component(s) with data obtained from shadow table:
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.493+0000 Failed to build JDBC Connection object:
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.493+0000
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.493+0000 --------------------
[CONFIG] [BI Configuration] [Essbase]:2019-05-18T12:02:10.494+0000
[CONFIG] [BI Configuration]:Zipping up config assistant log files to /u01/oracle/user_projects/domains/bi/bilogs/bieeconfiglogs_2019-05-18_11-44-25AM.zip
[CONFIG] [BI Configuration]:Zipping up the following log files and directories:
/u01/oracle/.inventory/logs/install2019-05-18_11-44-25AM.log
/u01/oracle/.inventory/logs/install2019-05-18_11-44-25AM.out
/u01/oracle/.inventory/logs/config2019-05-18_11-44-25AM

[CONFIG] [BI Configuration]:Completed zipping up log files to /u01/oracle/user_projects/domains/bi/bilogs/bieeconfiglogs_2019-05-18_11-44-25AM.zip on host 55840d9ba0af
Configuration:BI Configuration failed
Error while running Configuration.
The configuration of Oracle Fusion Middleware failed.

The log(s) can be found here: /tmp/OraInstall2019-05-18_11-44-25AM.
tail: cannot open '/u01/oracle/user_projects/domains/bi/servers/AdminServer/logs/bi.log' for reading: No such file or directory
tail: no files remaining

Edited for formatting.

Djelibeybi commented 5 years ago

@sjvp could this be caused by the changed to harden the middleware/fmw-infrastructure image?

sjvp commented 5 years ago

The most likely cause if you are using non-RAC Oracle DB is lack of entropy. Typical error in the log files are:

So check you have enough entropy. Official docs are: https://docs.oracle.com/middleware/1221/wls/WLUPG/compat.htm#WLUPG650.

marvinamorim commented 5 years ago

Hello.

But reading wlst_essbase.log, there is the line: "com.oracle.cie.domain.security.DomainSecurityService - Time required to process encryption was longer than expected: 336477ms; possible lack of entropy might result in poor performance (getEncryptionContext)". Going to check this entropy matter with the company that is responsible for our database, and going to check the official docs link provide by you.

Thanks a lot for the response.

sjvp commented 5 years ago

As you have found, the logs indicate a lack of entropy.

This is on the client side (BI/Weblogic running in docker on your host) - it is not a problem with the database.

I think it is the host's /dev/random that it is used for docker containers. See: https://stackoverflow.com/questions/52699235/how-are-requests-to-dev-urandom-etc-handled-in-docker

But 'host' could be the hyperkit VM if using docker-for-mac, boot2docker etc. See: https://stackoverflow.com/questions/26021181/not-enough-entropy-to-support-dev-random-in-docker-containers-running-in-boot2d

marvinamorim commented 5 years ago

So I see. Going to check those threads on stackoverflow and look a way to solve this problem. If I solve this, I give a feedback here.

Again, thank's a lot for the information.

marvinamorim commented 5 years ago

Hello again.

So we tried manual installation, and got stuck at the same point. But we solved by changing the line: securerandom.source=file:/dev/random to: securerandom.source=file:/dev/urandom After this, everything went smooth.

Where in the process of the installation of the 3 dockerfiles required by this guide (installation of OracleJava, OracleFMWInfrastructure, OracleBI) can I find the file java.security?

marvinamorim commented 5 years ago

So, I got the BI working, but only a part of it. What I did was: On the Dockerfile: docker-images/OracleFMWInfrastructure/dockerfiles/12.2.1.3/Dockerfile, i changed the env USER_MEM_ARGS from "-Djava.security.egd=file:/dev/./urandom" to "-Djava.security.egd=file:/dev/urandom". And on the Dockerfile: docker-images/OracleBI/dockerfiles/12.2.1.3/Dockerfile, I add at the last line: COPY java.security /usr/java/jdk1.8.0_211/jre/lib/security/java.security, where my local java.security had changed the line securerandom.source=file:/dev/random to securerandom.source=file:/dev/urandom.

Everything went fine, until the time to start the services. The console on port 9500 is working fine. But the services on port 9502 are returning error 500 The server encountered an unexpected condition which prevented it from fulfilling the request..

Any idea why only the console on port 9500 is working? Here follows the Start Services log attached start_services.log.

And thanks very much for everything.

sjvp commented 5 years ago

However to get you moving...

Please check if the following error appears in /u01/oracle/user_projects/domains/bi/servers/*/logs/*:

error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

If so, it appears to have already been fixed by this commit to add libaio back in: https://github.com/oracle/docker-images/pull/1293/commits/9c8cc2cfc0bc49998b30ccde677bfdb547350ab5

So - pull the changes and rebuild your FMW Infra image and then the BI image.

You may find that it fails due to Unable to create directory /u01/oracle/user_projects/domains. We are working on this but for now you could add RUN rmdir /u01/oracle/user_projects to the BI Dockerfile (not tested this, but should work if the base FMW Image has stopped creating this as a VOLUME).

marvinamorim commented 5 years ago

Everything is working now.

To solve the libaio problem I just switched the line that installed libaio to after the oracle user was set on the Dockerfile from the FMW, and everthing went fine, we are already using the BI with everything that we need.

Thanks a lot for your help @sjvp, now we can finaly work on our BI. See you around.