SAP systems use profiles for configuration purposes. These profiles are provided by the installation tool and, if required, can be adjusted according to the needs of the customer.
According to the architecture of an ABAP-based SAP system, every installation (<SAPSID>) gets exactly one Default profile for system-wide parametrization. In addition, every SAP system consists of instances and uses Instance profiles, which are used for individual configuration of the instance-specific processes and services. In this way the settings provided in the Default profile can be replaced per instance with individual values or even simply enhanced with new parameters and values.
Thereby every Instance profile includes different types of parameters:
- Parameters to start programs in order to initialize the instance (for example sapcpe, database, ABAP Dispatcher, IGS)
- Parameters to configure the instance according to requirements and resources (for example type and amount of work processes, security, main memory, and so on.)
Note
The above mentioned parameters are not visible in blocks 1:1 within the Instance profile. This is only to remind the administrators that such a profile consists of different types of parameters. Parameters to start programs use prefixes like "Start_Program_<number>" or "Execute_<number>".
Hint
Here, for the topic of starting SAP systems, only some parameters to start programs are relevant and described without the corresponding syntax.
Hint
Nevertheless, be aware of the following:
An incorrect parameter or parameter value can also be the root cause for an unsuccessful start of an SAP system or an individual SAP instance failure.
For any further instance, an additional Instance profile will be used and stored within the central Profile directory: under /sapmnt/<SAPSID>/SYS/profile.
- UNIX/Linux: /usr/sap/<SAPSID>/SYS/profile
- Windows: \\<SAPGLOBALHOST>\saploc\<SAPSID>\SYS\profile
How does an SAP start procedure for a complete SAP system work?
Assuming that all involved sapstartsrvdaemons on UNIX/Linux or services on Windows are up-and-running, the sapstartsrv with the highest priority takes over control (this is typically the sapstartsrv of the priority 1 ASCS instance - see figure above).
Next, the content of the profiles is read by sapstartsrv. First the global parameters from the Default profile are taken into account, followed by the initialization of the instance. In this phase the start section from the respective Instance profile is evaluated, that is, the instance profile defines the steps to be performed during the start process and the processes of the instance to be started by sapstartsrv.
The start section of the ASCSInstance profile is read:
- Typically the start section begins with the execution of sapcpe, which replicates, copies, or links directories and programs (details are presented below in this lesson).
- Because the ASCS instance does not need an up-and-running database, it continues the scan of the start section and will start the Message Server and the Enqueue Server (optionally an RFC Gateway Service and/or an integrated SAP Web Dispatcher is/are started).
The sapstartsrv of the instance with the highest priority has done its work and gives over control to the next priorityLEVEL. In the figure above these are the PAS and AAS instances. Both have the same priority 3.
Every individual sapstartsrv scans the common global Default profile and the specific Instance profile in order to initialize the instance according to the respective start section in the Instance profile. This is done simultaneously, because both instances have the same assigned priorityLEVEL 3:
- sapcpe will be executed (see above)
- The database state will be checked and if it is not yet up-and-running, a script or command is executed to start the database (this is only valid, if the database is installed on the same host as the PAS or AAS instances - see discussion at the beginning of this lesson).
Hint
In our training environment the available SAP S/4HANA Server installations use explicit hosts for the SAP HANA databases. Therefore we should not expect a starting action for the database triggered from the Instance profile.
Note
Every Application Server instance (PAS/AAS) requires a database in operational state when it is started. This is caused by the follow-up procedure of the ABAP Dispatcher. When started itself, it initializes in turn the configured types and amounts of work processes, which immediately try to connect to the database.
- The ABAP Dispatcher will be started and performs follow-up actions like starting the work processes.
- The Internet Graphics Service (IGS) watchdog will be started. It can be used to generate graphical or non-graphical output for data from an SAP system or another source.
Caution
Normally, you should not change the entries for the start process in the instance profile. However, if these start entries are changed, the sapstartsrv has to be restarted so that the changes made will take effect for the next system restart.