#ATR(11)
Informative Note: Created this blog to provide information on how to install additional application server for the existing SAP System (S/4 HANA).
Prerequisites: Knowledge of NFS and OS level FS, SWPM Installation
My Scenario: S/4 HANA System with Primary Application Server/ASCS/Database installed in RHEL - Linux server (Host 1). We are having another host (Host 2) with NFS (/sapmnt, /usr/sap/trans) already mounted and ready to act as a secondary application server for Host 1. You can also consider this blog generally for installing additional application server (SWPM Steps) in any of the landscape.
Installation Steps:
RUN SWPM:
- No need to prepare anything related to Stack/Maintenance Planner for additional application server installation since we have inbuilt options IN SWPM. Make sure to use correct SWPM 1.0 or 2.0 accordingly. In my case, SWPM 2.0 for S/4 HANA. Just download SWPM software -> Extract -> Run (sapinst with SAPINST_GUI_HOSTNAME)
- Select Additional Application Server Instance

DEFINE PARAMETER
- Selected 'Custom Mode' to have a view on all parameters. Especially to check whether SIDADM user ID and group ID set as same as Mounted Server ID or not. In my Case, GID and UID of SIDADM - Host 1 Primary App server is 45559 and 79. Group Name of 79 - SAPSYS which will be default for all SAP System SIDADM IDs.

(Please note: It should be 4559 and 79. I have already created GID manually with SAPSYS group name by mistake. Ignore and consider above as 45559 and 79 only)

- Provide profile path [ /sapmnt - mounted - /sapmnt/SID/profile]

- Once you click Next, SWPM will check SAP SID exists or not in that profile path. To check successfully, UID (45559) and GID(79) shouldn't be assigned to any other IDs(Like SAPADM, Any other existing SIDADM). If it's assigned already in Host2, then it will be automatically assigned with that ID (say sapadm) once mounted and you will face below error.
- In short, SWPM will detect SAP System but it can't able to read file since profile will be in different FS UID and GID.

- Left "Empty" for Message Server Port.

- Provide "FQDN " which will be domain -> hostname.domain



- We can also provide uid as same as primary server host1 sapadm. It’s optional only. I have left blank.
- To check uid and gid, use cat /etc/passwd|grep -i name


NOTE:
- SWPM itself automatically detected 45559 and 79 will be the suitable User and group ID since /sapmnt path has this UID and GID only. We can’t edit UID/GID as well in this case. During system rename/ If SIDADM accidently deleted, we might have this UID and GID option enabled.

- Provide Database details (SAPHANADB - ABAP Schema User and Password)

- I have provided with default - HDBUserstore entry which will be easier to store and delete Keys. Left blank for Database Host Name(s). SWPM will detect automatically.

NOTE:
In my case, I have already used 00, 01 and 02 instance numbers for Primary App server, ASCS and DB in Host 1. Hence, Used 03 to differentiate. We can also use 00 since host differed but make sure to have unique instance number. A host can have only one unique instance number for each of System types - ABAP, JAVA, WD, DB, ASCS.

- Proceeded with default Work Processes.

- In my case, ACL List not required. Hence, Ignored. We can create ACL List manually if required later as well.

- Selected "Cleanup OS users". It's optional. SIDADM will be inside SAPSYS group permanently. During SWPM operation, SIDADM will be added to SAPINST group as well. Below option "Cleanup" will delete SIDADM from SAPINST group once operation completed. Not from SAPSYS group. For Safer side - Post SWPM completed, check once whether SIDADM assigned to group SAPSYS or not.

DEFINE PARAMETER COMPLETED.
REVIEW PARAMETERS
- It's just reviewing parameters which we defined.


Proceed to Execute Service.
EXECUTE SERVICE

Errors you might face during execution
- I have faced below two errors during execution phase.
ICMBND File Permission Error:
- GID and UID of root user will be 0. SWPM can't able to assign 0 for it's ICMBND (file) operation.
- ICMBND File Path -> /sapmnt/SID/exe/uc/linuxx86_64. Assign 0 in /sapmnt host 1 - primary application server path. FS permissions will be updated automatically in mounted host 2 path as well.

- I have set 4750 FS permission (Root 0 - UID, SAPSYS - 79 - GID) for the ICMBND file.

- Execution will continue without errors once you retry setup. Also, you can see ICMBND file FS will be changed automatically from Root 0 SAPSYS 79 to SIDADM and SAPINST by SWPM. It's part of SWPM operation.

LIBRARY NOT FOUND Error -- Occurs in general during Installation - SAP in RHEL.
- SIDADM would already be created by SWPM when you face this error.

- It will directly show error OR asked to refer logs.

[OR]

Log file check:

mkdir -p /usr/sap/lib
ln -s /opt/rh/SAP/lib64/compat-sap-c++-9.so /usr/sap/lib/libstdc++.so.6
chown -R SIDadm:sapsys /usr/sap/lib
For Application Server:

For HANA DB:

NOTE:
If multiple application servers – S4A, S4B, S4C exists in single host, we can create separate libs4a, libs4b, libs4c folder with symlink to corresponding sidadm:sapsys group. Aim is to create symlink for the library file with sidadm FS permission.
Once step retried, it crossed this error occurred step successfully and continued without any issues.
[Starting ABAP Application Server]

EXECUTION AND SERVICE COMPLETED SUCCESSFULLY.

HEALTH CHECKS:
- All process running fine.

- HDBUserstore list entry 'DEFAULT' added by SWPM and Application <-> DB Connectivity looks fine.

- Mount Point FS checks - We can see all mount points for SAP changed to SIDADM:sapsys. [Including - /usr/sap/SID directory]



Hence, In Host 2, we have added Additional Application server using SWPM post /sapmnt and /usr/sap mounted from Primary Application server(Host 1).

KEY POINTS
[ GID can be 79 – SAPSYS group for all SAP Systems irrespective of SAP System Design]
- Don’t create SIDADM user manually in host 2/client server(secondary app server) after creating mount point from Primary App server(Host 1). Let SWPM creates SIDADM user with SAP System Administrator Role. If created by mistake, delete and run SWPM from Scratch. Else, provide SAP System Admin role.
- Make sure to have same Primary Application server UID for an SAP System having multiple application servers in different hosts – SIDADM user.
- If single host has multiple SAP System Application server (S4A, S4B, S4C), make sure UID of one SAP SYSTEM does not conflict with each other.
Example:
IF,
- Primary Application server of S4BADM – UID and GID : 400 79 (HOST A)
- Primary Application server of S4CADM – UID and GID : 400 79 (HOST B)
AND
- We need to have both S4B and S4C Additional App server in another Host C since RAM/CPU is huge and compliance.
CHANGE
- Either S4B or S4C of Primary app server UID and GID to 401 79 before mounting to C –> Delete S4BADM or S4CADM user manually -> USE SWPM System Rename option to recreate SIDADM user with different UID.
Else
- we can’t have both Additional Application Server S4B and S4C in Host C.
Thanks for Visiting !
Please do connect and follow my Linked In Profile - https://www.linkedin.com/in/ajaytr66/
AJAY TR - ATR - SAP BASIS ADMINISTRATOR