🧩 Oracle E-Business Suite R12.2

📌 Overview

  • Oracle E-Business Suite (EBS) Release 12.2 introduces a dual file system architecture with online patching, enabling high availability, modular maintenance, and horizontal scalability. Multi-node configurations help enterprises improve application responsiveness, ensure business continuity, and support failover strategies. The add-node and remove-node operations must be executed with strict adherence to Oracle standards to ensure service integrity and lifecycle manageability.

  • Key benefits include:

  • Consistent AutoConfig and context-driven configuration management

  • Shared application tier support via NFS or clustered storage

  • Dual file system support for run/patch file systems

  • Centralized and distributed load balancing

  • Full service enablement (OHS, WebLogic, NodeManager, Forms, Concurrent Managers)

  • Oracle officially documents this process via My Oracle Support (MOS) and in Rapid Clone tools.

🔧 Step-by-Step: Adding a Secondary Node to R12.2

🔹 Step 1: Prepare files from Primary Application Tier to send to another new server node.

# Start Admin Server on RUN file system
cd $ADMIN_SCRIPTS_HOME
./adadminsrvctl.sh start


# Start Admin Server on PATCH file system
cd $ADMIN_SCRIPTS_HOME
./adadminsrvctl.sh start forcepatchfs


# Execute Preclone on Primary Node (appsTier)
cd $ADMIN_SCRIPTS_HOME
perl adpreclone.pl appsTier

*🔹 Step 2: Create Tar Archive and Transfer
*

# Navigate to FS1 and compress application tier
cd /u01/appltier/R12PRD/fs1/

nohup tar -czvf EBSapps$(date +%m%d%y).tar.gz EBSapps &

# Secure copy tar file generated to new node
scp EBSapps$(date +%m%d%y).tar.gz user@newnode:/u01/appltier/R12PRD/fs1/

*🔹 Step 3: Unpack and Prepare the New Node
*

# Uncompress the application tier structure
cd /u01/appltier/R12PRD/fs1/

nohup tar -xzvf EBSapps$(date +%m%d%y).tar.gz &
Note: Ensure shared mount points, user groups, and directory structures are aligned across nodes. Examples:

/usr/tmp
/u01/oracle/ebshml/appltier/tmp/shared
/fs_shared/APPLPTMP

🔹 Step 4: Prepare Pairs File (Node-Specific)

Example values for /u01/appltier/R12PRD/pairsfiles/pairsfile.txt:

[Base]
s_base=/u01/appltier/R12PRD
s_current_base=/u01/appltier/R12PRD/fs1
s_other_base=/u01/appltier/R12PRD/fs2
s_ne_base=/u01/appltier/R12PRD/fs_ne

[General]
s_applptmp=/u01/appltier/R12PRD/tmp/shared
s_appsgroup=oinstall
s_appsuser=applprd
s_dbuser=oracle
s_dbgroup=dba
s_dbdomain=your_host_domain.com
s_at=/u01/appltier/R12PRD/fs1/EBSapps/appl
s_com=/u01/appltier/R12PRD/fs1/EBSapps/comn
s_tools_oh=/u01/appltier/R12PRD/fs1/EBSapps/10.1.2
s_weboh_oh=/u01/appltier/R12PRD/fs1/FMW_Home/webtier
s_fmw_home=/u01/appltier/R12PRD/fs1/FMW_Home
s_dbGlnam=R12PRD
s_dbSid=R12PRD
s_dbhost=scprd-scan
s_clonestage=/u01/appltier/R12PRD/fs1/EBSapps/comn/clone
s_dbport=1521
s_options_symlinks=Options -FollowSymLinks
s_proxyhost=
s_proxybypassdomain=your_host_domain.com
s_proxyport=
s_nonproxyhosts=
s_javamailer_imapdomainname=NoImapDomain
s_javamailer_imaphost=NoImapHost
s_javamailer_reply_to=NoReplyTo
s_javamailer_outbound_user=changeOnJavaMailerInstall
s_smtphost=ebsprdr12
s_smtpdomainname=your_host_domain.com
s_file_edition_type=run
s_port_pool=0
s_admhost=ebsprdr12
s_atName=ebsprdr12
s_shared_file_system=true
patch_s_port_pool=1

[Web Entry Point Configuration]
s_webentryurlprotocol=http
s_webentryhost=ebsprdr12
s_webentrydomain=your_host_domain.com
s_active_webport=8000
s_endUserMonitoringURL=http://ebsprdr12.your_host_domain.com:8000/oracle_smp_chronos/oracle_smp_chronos_sdk.gif
s_external_url=http://ebsprdr12.your_host_domain.com:8000
s_login_page=http://ebsprdr12.your_host_domain.com:8000/OA_HTML/AppsLocalLogin.jsp

[Instance Specific]
s_temp=/u01/appltier/R12PRD/fs1/inst/apps/R12PRD_ebsprdweb/temp
s_contextname=R12PRD_ebsprdweb
s_hostname=ebsprdweb
s_domainname=your_host_domain.com
s_cphost=ebsprdweb
s_webhost=ebsprdweb
s_config_home=/u01/appltier/R12PRD/fs1/inst/apps/R12PRD_ebsprdweb
s_inst_base=/u01/appltier/R12PRD
s_display=ebsprdweb:0.0
s_forms-c4ws_display=ebsprdweb:0.0
s_ohs_instance=EBS_web_R12PRD_OHS2
s_webport=8000
s_http_listen_parameter=8000
s_https_listen_parameter=4443

[Services To be Enabled on the Secondary Application Tier Node]
s_web_applications_status=enabled
s_web_entry_status=enabled
s_apcstatus=enabled
s_root_status=enabled
s_batch_status=enabled
s_other_service_group_status=enabled
s_adminserverstatus=disabled
s_web_admin_status=disabled

*🔹 Step 5: Clone Secondary Node
*

cd /u01/appltier/R12PRD/fs1/EBSapps/comn/clone/bin

perl adcfgclone.pl component=appsTier \
  pairsfile=/u01/appltier/R12PRD/pairsfiles/pairsfile.txt \
  addnode=yes dualfs=yes
This will instantiate the context, register WebLogic managed servers, and start relevant services.

*🗑️ Removing an Application Tier Node (R12.2)
*

*🔹 Step 1: Execute adProvisionEBS
*

perl $AD_TOP/patch/115/bin/adProvisionEBS.pl \
  ebs-delete-node \
  -contextfile=$CONTEXT_FILE \
  -hostname=rnnhml01ebs03 \
  -logfile=delete.log

Optionally, to delete a specific managed server:

perl $AD_TOP/patch/115/bin/adProvisionEBS.pl \
  ebs-delete-managedserver \
  -contextfile=$CONTEXT_FILE \
  -managedsrvname=oacore_server1 \
  -logfile=/tmp/oacore_server1_delete.txt

*🧾 Best Practices & Considerations
*

  • Always take a backup before cloning or removing nodes.
  • Validate context files with adchkcfg.sh post-clone.
  • Run AutoConfig on all nodes after changes.
  • Sync all tier clocks via NTP.
  • Monitor via EBS Cloud Control or custom dashboards.

📚 Thank you for reading!
I’m passionate about sharing real-world experiences in Oracle General, Oracle Cloud, Database Optimization, IT Innovation, and Enterprise Solutions.