X

Best Practices from Oracle Development's A‑Team

Best practice for Inventory Management with Oracle Fusion Applications

Introduction

The Oracle Inventory stores information about all Oracle software products installed in all the Oracle homes on a host provided the product was installed using Oracle Universal Installer (OUI).

How many Oracle Inventories are needed on a host and where to put those inventories are two common questions we get from the customers installing Oracle Fusion Applications for the first time. Highly experienced users just follow the same practice, as they are used to.

Section 4.3.3 of the Installation Guide provides basic information on oraInventory planning.

This blog provides a best practice on how to create the Oracle Inventories during Provisioning and what is expected at the end of the installation.

Our goal with these recommendations is to prevent future issues with patching and upgrades like products installed but not listed on your inventories or products listed but no longer installed as well.

Oracle Inventory details

There are three types of inventory:

  • Central Inventory
  • Local Inventory
  • Oracle Home Inventory

Central Inventory

The Central Inventory stores information about all Oracle software products installed in all the Oracle homes on a host.

The first time Oracle Universal Installer runs on a host it creates a Central Inventory Pointer File. The location of the file is /etc/oraInst.loc on Linux and AIX or /var/opt/oracle/oraInst.loc in Solaris.

To create the Central Inventory Pointer File Oracle Universal Installer will prompt you to run orainstRoot.sh as root user.

Local Inventory

The Oracle Local Inventory is a special case of a centralized inventory that is not identified by a unique Inventory Pointer File. In other words you may have multiple Oracle Homes on each Local Inventory and multiple Local Inventories on the same host.

Oracle home inventory

The Oracle Home Inventory is present inside each Oracle Home. It only contains information relevant to that particular Oracle Home. Default location is $ORACLE_HOME/inventory

Oracle Universal Installer

Oracle Universal Installer allows you to manipulate the Oracle Inventory files. Oracle does NOT support manually editing the Oracle Inventory files.

Using the Oracle Universal Installer you can:

  • Create the Central Inventory
  • Attach an Oracle Home to the Central Inventory
  • Detach an Oracle Home from the Central Inventory
  • Validate the Installed products listed on the Central Inventory
  • Consolidate Multiple Central Inventories
  • Reconstruct a Shared Central Inventory on a Non-Shared Location

Oracle Inventories used for Fusion Applications

In this section we discuss the best practice for location and naming of the Oracle Fusion Applications Inventories. Fusion Applications allows you to use Central or Local inventories during provisioning.

We recommend only use Local Inventories to prevent issues with patching and upgrades.

Fusion Applications requires several Oracle Homes, the exact number will vary depending on the release and will increase as a result of Scaled-Out of your environment.

We normally recommend organizing your Oracle Homes using the following Local Inventories, if you recall Local is just a special case of Central Inventory:

idmlcm

This inventory is only for the Oracle Home where you install the IDM Life Cycle Management tools.

Usually created under $ORACLE_BASE/oraInventory_idmlcm

idmdb

This inventory is only for the Oracle Home where you install the IDM Database

Usually created under $ORACLE_BASE/oraInventory_idmdb

Directory Services

This inventory is used for the Oracle Homes for OID and Oracle Common.

Created under $ORACLE_BASE/idm/dir/oraInventory

Application Services

This inventory is used for the Oracle Homes for IAM, IDM, SOA and Oracle Common.

Created under $ORACLE_BASE/idm/app/oraInventory

Auth OHS

This inventory is used for the Oracle Homes for OHS, Webgate and Oracle Common.

Created under $ORACLE_BASE/idm/dir/oraInventory

faprov

This inventory is only for the Oracle Home where you install the Fusion Applications Provisioning Framework.

Usually created under $ORACLE_BASE/oraInventory_faprov

fadb

This inventory is only for the Oracle Home where you install the Fusion Applications Transactional Database

Usually created under $ORACLE_BASE/oraInventory_fadb

fa

This inventory is used for the Oracle Homes for Fusion Applications products like: OHS, Webgate, Oracle Common (x2), dbclient, ECM, SOA, SES, Web Center, ODI, OSN, IDM Utils, BI, Applications, GOP and ATGPF

Usually created under $ORACLE_BASE/oraInventory_fa

Recommendations for Inventory Management

In order to preserve the consistency and correct registration of all the products on their specific Oracle Inventories, it is important to follow certain steps.

Step 1 IDMLCM

The first product to be installed is the Identity Management Provisioning Framework, also known as Identity Management Life Cycle Management Tools (idmlcm).

⇒ At this point the IDM Mid-tier host should be empty, however please review /etc directory and remove /etc/oraInst.loc in case that file already exists.

When the Oracle Universal Installer runs, you will be prompted for the location of your inventory and the installation OS group

Specify Inventory Lcoation Screen

In this example our $ORACLE_BASE is /u01/app and our Inventory Directory Name is oraInventory_idmlcm

⇒ When the OUI finishes the installation of idmlcm please delete /etc/oraInst.loc from IDM Mid-tier host.

Step 2 FAPROV

The second product to be installed is the Fusion Applications Provisioning Framework (aka faprov).

⇒ At this point the FA Mid-tier host should be empty, however please review /etc directory and remove /etc/oraInst.loc in case that file already exists.

Same way as before when the Oracle Universal Installer runs, you will be prompted for the location of your inventory and the installation OS group

The screen looks exactly the same as before. In this example our $ORACLE_BASE is /u01/app and our Inventory Directory Name is oraInventory_faprov

⇒ When the OUI finishes the installation of faprov please delete /etc/oraInst.loc from FA Mid-tier host.

Step 3 Databases

The following two installations will be for IDMDB and FADB databases.

We recommend to use $ORACLE_BASE/oraInventory_idmdb and $ORACLE_BASE/oraInventory_fadb to keep it consistent with the other Oracle Inventories.

There is one exception to this recommendation in case the DBA team chooses to install the databases on machines already hosting other databases. In this case we don’t recommend to delete /etc/oraInst.loc or to create separate Oracle Inventories.

Step 4 IDM Suite

When you are provisioning IDM suite we can assume the Central Inventory Pointer File should not be present as we recommended to delete it at the end of step 1 above, please validate is not there and remove it if necessary.

The recommended location is $ORACLE_BASE/oraInventory_idm please also notice the default inventories detailed in the section above.

⇒ When the IDM Provisioning finishes the installation of IDM suite please delete /etc/oraInst.loc from IDM Mid-tier host.

Step 5 Fusion ApPlications

We can make the same assumption as before. When you are provisioning Fusion Applications the Central Inventory Pointer File should not be present as we recommended to delete it at the end of step 2 above, please validate is not there and remove it if necessary.

The recommended location is $ORACLE_BASE/oraInventory_fa

⇒ When the FA Provisioning finishes please delete /etc/oraInst.loc from FA Mid-tier host.

Other Recommendations:

The steps detailed above are to be run on the primordial IDM and Primordial FA hosts only, any other host must not have /etc/oraInst.loc file. If you find one there please remove it.

When the Central Inventory Pointer File is not present it is necessary to use –invPtrLoc flag to specify the Inventory Pointer Location file $ORACLE_HOME/oraInst.loc

Some Oracle documentation recommends placing the central inventory on a local file system that is not shared by other hosts. However for Fusion Applications all previously noted Oracle Inventories must be on the shared file system mounted under $ORACLE_BASE. Exception to this rule may be only considered for the Oracle Inventories for the Databases.

Remember, Oracle does NOT support that you manually edit the files inside the Oracle Inventories as it will affect future installations and patching.

 

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.Captcha