Saturday, 3 October 2015

Install IDM 11.1.2.3.0 on Windows

 

Hello friends , today I will discuss on installing Identity Management Suite on windows 8.1 or 10 laptop , this is only for development and own RnD purpose or if you want to  show some quick demo to client , might be useful. 8GB memory is must to get started else I wouldn’t recommend you to go ahead. So guys , here are high level steps..

1. Get Installers

You can get the latest IDM suite 11.1.2.3.0 from http://www.oracle.com/technetwork/middleware/id-mgmt/downloads/oid-11gr2-2104316.html. Download Oracle Identity and Access Management 11g (11.1.2.3.0) & Oracle Fusion Middleware Repository Creation Utility 11g (11.1.1.9.0). For database download latest one 12c R1 from http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html. Download JDK 7 (64 bit) from http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html. Download generic Weblogic 10.3.6 from http://www.oracle.com/technetwork/middleware/weblogic/downloads/wls-main-097127.html.

2. Configuring Database

Install DB12R1 , don’t select container option and make sure AL32UTF8 character set selected, Once done we need to tune couple of parameters to run the same on low memory footprint.

Enable Oracle Database XA

Connect with sys and run @$ORACLE_HOME/javavm/install/initxa.sql & $ORACLE_HOME/rdbms/admin/xaview.sql.  This will prevent “XATRANS Views are not installed on this Database. This is required by the OIM Schema” error while running the RCU.

Tune memory

Run below commands , obviously values are of your choice though change in sga size and pga_aggregate_target is NOT mandatory.

alter system set sga_size=900M scope=spfile;
alter system set pga_aggregate_target=180M scope=spfile;
alter system set shared_pool_size=150M;
alter system set OPEN_CURSORS=900;

Alternatively you can run CREATE PFILE='C:\shrik\Apps\DB\product\12.1.0\dbhome_1\NETWORK\ADMIN\pfile.ora' FROM SPFILE;  Give your location and then edit the pfile and run create SPFILE from PFILE='C:\shrik\Apps\DB\product\12.1.0\dbhome_1\NETWORK\ADMIN\pfile.ora';

Below are the requirements basically,

show parameters PROCESSES (should be more 300)
show parameters NLS_LENGTH_SEMANTICS  (should be BYTE)
show parameters SHARED_POOL_SIZE (should be more 147456KB)
show parameters SGA_MAX_SIZE (should be more 147456KB)
show parameters DB_BLOCK_SIZE (is greater than or equal to 8KB)
show parameters OPEN_CURSORS (should be more 800)

3. Install Java

install JDK , you can skip JRE installation.’'

4.Install Weblogic

While installing weblogic create a new middleware home. Select installation type custom and de-select coherence and evaluation database.

5.Install IAM

Select the same middleware home you created earlier and complete the installation.

6.Create a new Domain

Create a OAM or IDM domain by selecting config.cmd from  <Middleware_Home>\oracle_common\common\bin directory. After completion of the same go to setDomainEnv.cmd fle of your domain.

At first line you should see set COMMON_COMPONENTS_HOME=C:\shrik\Apps\IDM\middleware\oracle_common , note down the path.

Search for set JAVA_OPTIONS=%JAVA_OPTIONS% and change/add to                                                               set JAVA_OPTIONS=%JAVA_OPTIONS% -DDISABLE_CONFIG_ENTITY=true like below,

image

7.Create DB Security store for the Domain

This step is important , go to C:/shrik/Apps/IDM/middleware/iam_home/common/tools/configureSecurityStore.py change the directory accordingly, and edit the file configureSecurityStore.py.                                         Locate the line rcu_common_path = os.path.abspath(os.path.join(os.environ["COMMON_COMPONENTS_HOME"],"jlib","rcucommon.jar")). Replace the same with                                                                                                                               rcu_common_path = os.path.abspath(os.path.join("C:/shrik/Apps/IDM/middleware/oracle_common","jlib","rcucommon.jar"))

Here we are replacing COMMON_COMPONENTS_HOME mentioned in setDomainEnv.cmd file with value, this step require for Windows 8.1 or 10, else you will get below error while running configureSecurityStore.py.

Failed to get environment, environ will be empty: (0, 'Failed to execute command ([\'sh\', \'-c\', \'env\']): java.io.IOException: Cannot run program "sh": CreateProcess error=2, The system cannot find the file specified')
Problem invoking WLST - Traceback (innermost last):
  File "C:\shrik\Apps\IDM\middleware\iam_home\common\tools\configureSecurityStore.py", line 42, in ?
  File "C:\shrik\Apps\IDM\MIDDLE~1\wls_home\common\wlst\modules\jython-modules.jar\Lib/javaos$py.class", line 256, in __getitem__
  File "C:\shrik\Apps\IDM\MIDDLE~1\wls_home\common\wlst\modules\jython-modules.jar\Lib/UserDict$py.class", line 14, in __getitem__
  File "C:\shrik\Apps\IDM\MIDDLE~1\wls_home\common\wlst\modules\jython-modules.jar\Lib/javaos$py.class", line 256, in __getitem__
  File "C:\shrik\Apps\IDM\MIDDLE~1\wls_home\common\wlst\modules\jython-modules.jar\Lib/UserDict$py.class", line 14, in __getitem__
KeyError: COMMON_COMPONENTS_HOME

Then go to C:\shrik\Apps\IDM\middleware\oracle_common\common\bin directory and run                                                 wlst C:/shrik/Apps/IDM/middleware/iam_home/common/tools/configureSecurityStore.py -v -d C:/shrik/Apps/IDM/middleware/user_projects/domains/oam_domain -c IAM -m create -p welcome1

Change the directory accordingly and the output of that should be successful, you can validate the same by                     wlst C:/shrik/Apps/IDM/middleware/iam_home/common/tools/configureSecurityStore.py -v -d C:/shrik/Apps/IDM/middleware/user_projects/domains/oam_domain -m validate   

If you still get the above error , compile and run below java file in your windows system ,

public class OpertingSystemInfo
{
    public static void main(String[] args)
    {
        // The key for getting operating system name
        String name = "os.name";       
        // The key for getting operating system version
        String version = "os.version";       
        // The key for getting operating system architecture
        String architecture = "os.arch";
       
        System.out.println("Name: " + System.getProperty(name));
        System.out.println("Version: " + System.getProperty(version));
        System.out.println("Architecture: " + System.getProperty(architecture));
    }
}

Note the output of os.name and go to C:\shrik\Apps\IDM\middleware\wls_home\common\wlst\modules directory.

Open the jython-modules.jar in 7 Zip and locate javashell.py file within that.

Search for and edit os.name accordingly (in my case I added Windows 8.1 manually)

_osTypeMap = (
      ( "nt", ( 'nt', 'Windows NT', 'Windows NT 4.0', 'WindowsNT',
                'Windows 2000', 'Windows 2003', 'Windows XP', 'Windows CE',
                'Windows Vista', 'Windows Server 2008', 'Windows 7', 'Windows 8.1' )),
      ( "dos", ( 'dos', 'Windows 95', 'Windows 98', 'Windows ME' )),
      ( "mac", ( 'mac', 'MacOS', 'Darwin' )),
      ( "None", ( 'None', )),
      )

Save and update the Jar and try to run configureSecurityStore.py again.

8. Start WLS

Start the weblogic server and oam_server1 & oam_policy_mgr1 managed server.

imageNow you should able to access OAM console ,

image 

Hope this help you installing IDM at local laptop.

5 comments:

Unknown said...

Super útil, le doy un diez a este post. Muchas gracias por esta colaboración.

Anonymous said...

Thanks for the detailed blog. I was facing same issues on windows server 2012 for oam. Your post helped me to solve my errors.

Anonymous said...

Thanks for the detailed blog. I was facing same issues on windows server 2012 for oam. Your post helped me to solve my errors.

Digressing Mind said...

very helpful

rmouniak said...

This is amazing and awesome

Oracle SOA Online Training