Lets see why are all application tier nodes configured to run all services ?
Suppose we have 2 Application Tiers
APPS1 (Admin- and Concurrent Manager- Services)
APPS2 (Forms- and Web Services)
During the Rapid Install, selected the above configuration via the "Edit Services" button as follows :
APPS1 : enable "Root Service Group", "Batch Processing Services"
APPS2 : enable "Root Service Group", "Web Entry Point Services", "Web Application Services", "Other Service Group"
The logic behind these service classification is as follows :
1.Root Service Group (Runs services on AS, 10.1.3 OH)
Oracle Process Manager (OPM) : adopmnctl.sh
2.Web Entry Point Services (Runs services on AS, 10.1.3 OH)
HTTP Server : adapcctl.sh
3.Web Application Services (Runs services on AS, 10.1.3 OH)
OACORE OC4J : adoacorectl.sh
FORMS OC4J : adformsctl.sh
OAFM OC4J : adoafmctl.sh
4.Batch Processing Services (Concurrent Managers and Apps Listener)
APPS TNS Listener : adalnctl.sh
Concurrent Managers : adcmctl.sh, adsvcm.sh, ieoicsm.sh, ieosvicsm.sh
Fulfillment Server : jtffmctl.sh, jtfsvfm.sh
5.Other Service Group: (Runs services for Forms on 10.1.2)
Oracle Forms Server : adformsrvctl.sh
Oracle MWA Service : mwactlwrpr.sh
After the installation you see that the Autoconfig XML file is generated with the following entries for APPS1 and APPS2 :
The reason for enabled all services on the two application tier nodes instead of the configuration that was selected via the "Edit Services" feature is that:
When installing R12 with multiple nodes. all the nodes are now set as 'Y' in FND_NODES.
This occurs because in R12, concept of unified APPL_TOP is introduced which means everything is laid down on all servers.
From the APPL_TOP perspective, all the Servers on a Multi-Node Environment will have the same files and can now potentially start any Service if needed. In some cases, additional configuration will be required before this can be done since there can be profiles, etc associated with each Server.
For R12, the only difference between the Servers, are the Services that have been activated on each Node.
The Services are identified by the variables on the /service_group/ section in the APPS Context File:
Root Service Group : s_root_status
Web Entry Point Services : s_web_entry_status
Web Application Services : s_web_applications_status
Batch Processing Services : s_batch_status
Other Service Group : s_other_service_group_status
Depending on the value of these variables (enabled or disabled), adstrtal.sh / adstpall.sh will only start/stop the Services associated with them, ignoring the rest.
For example, if a node has only /s_batch_status/ "enabled" and the rest of the services are disabled, when you run adstrtall.sh on that Server and it will only start the Concurrent Managers and the TNS Listener for Apps.