Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sap_netweaver_preconfigure: Add SAP Note 2391706 #751

Open
herrmie opened this issue Jun 10, 2024 · 7 comments
Open

sap_netweaver_preconfigure: Add SAP Note 2391706 #751

herrmie opened this issue Jun 10, 2024 · 7 comments
Assignees

Comments

@herrmie
Copy link

herrmie commented Jun 10, 2024

Hello,
it would be great to have the SNote 2391706 (https://me.sap.com/notes/2391706/E) implement in the sap_netweaver_preconfigure, as it is a good thing to have Transparent Huge Pages on Linux disabled also for non-HANA systems.

Best regards,
Steffen Herrmann

@berndfinger
Copy link
Member

Hello, it would be great to have the SNote 2391706 (https://me.sap.com/notes/2391706/E) implement in the sap_netweaver_preconfigure, as it is a good thing to have Transparent Huge Pages on Linux disabled also for non-HANA systems.

Hi Steffen,
Thank you for bringing this to our attention. I just discussed this topic with my colleagues from the SAP LinuxLab and got the reply that the SAP note 2391706 is just meant to provide "how to" assistance in case users want to disable THP on Linux (e.g. as required for SAP HANA).

The SAP note is not meant to advise users to disable THP on non-HANA systems nor does it provide a statement about any possible advantage of doing so.

So we should better not disable THP for SAP ABAP Platform, non-HANA, systems by default. Should we get informed by SAP at any time that disabling THP would be recommended by default, we will of course modify the role sap_netweaver_preconfigure (or even sap_general_preconfigure) accordingly. The code for this is already present and used in the role sap_hana_preconfigure.

Regards,
Bernd

@berndfinger berndfinger self-assigned this Jun 10, 2024
@herrmie
Copy link
Author

herrmie commented Jun 11, 2024

Hello Bernd,

thanks for your reply. Unfortunately, there is nothing like another NetWeaver+DB script available.
It’s a clear recommendation to deactivate THPs with Oracle and ASE on Linux (besides HANA): See SAP Notes

2989091 - Configured HugePages versus Transparent Huge Pages (THP) on Linux - SAP ASE
1871318 - Linux: Disable Transparent HugePages for Oracle Database

How can we handle that?

Thanks in advance

Steffen

@sean-freeman sean-freeman changed the title Add SAP Note 2391706 to sap_netweaver_preconfigure sap_netweaver_preconfigure: Add SAP Note 2391706 Jun 14, 2024
@marcelmamula
Copy link
Contributor

Hello @herrmie
I have not seen comment about what OS you are using, but if you run sap_netweaver_preconfigure on SUSE SLES system, it will execute saptune with selected solution.

sap_hana_preconfigure_saptune_solution: "SAP-ASE" will apply ASE related SAP Notes and disabling THP is one of them.

saptune solution list


All solutions (* denotes enabled solution, O denotes override file exists for solution, C denotes custom solutions, D denotes deprecated solutions):
        BOBJ               - 941735 1771258 2578899 SAP_BOBJ 2993054 1656250
        HANA               - 941735 1771258 1868829 1980196 2578899 2684254 2382421 2534844 2993054 1656250
        MAXDB              - 941735 1771258 2578899
        NETWEAVER          - 941735 1771258 2578899 2993054 1656250 900929
        NETWEAVER+HANA     - 941735 1771258 1868829 1980196 2578899 2684254 2382421 2534844 2993054 1656250
        NETWEAVER+MAXDB    - 941735 1771258 2578899 2993054 1656250 900929
        S4HANA-APP+DB      - 941735 1771258 1868829 1980196 2578899 2684254 2382421 2534844 2993054 1656250
        S4HANA-APPSERVER   - 941735 1771258 1868829 2578899 2993054 1656250 900929
        S4HANA-DBSERVER    - 941735 1771258 1868829 1980196 2578899 2684254 2382421 2534844 2993054 1656250
 *      SAP-ASE            - 941735 1680803 1771258 2578899 2993054 1656250

Remember: if you wish to automatically activate the solution's tuning options after a reboot, you must enable and start saptune.service by running:
    saptune service enablestart

@herrmie
Copy link
Author

herrmie commented Jul 15, 2024

Hello @marcelmamula,
we are using RHEL.

Best regards,
Steffen

@sean-freeman
Copy link
Member

@herrmie Having a look myself, it certainly seems subjective.

Disable of Transparent Huge Pages, Enable of "Normal" Huge Pages....

sapsysinfo.sh in 618104 - "sapsysinfo" - Collecting system information on Linux only contains a check for Transparent Huge Pages; no warnings just a status.

Introduction of Transparent Huge Pages

SAP AnyDB - SAP ASE, articles date back to 2017

The cited 2989091 - Configured HugePages versus Transparent Huge Pages (THP) on Linux - SAP ASE:

SAP AnyDB - Oracle DB, articles date back to 2013

The cited 1871318 - Linux: Disable Transparent HugePages for Oracle Database:

BW Accelerator (BWA)

Solved already?

Heavily abbreviated statement in SNote 1310037 - SUSE LINUX Enterprise Server 11: Installation notes....

Problem: On systems with large memory, frequent access to the
Translation Lookaside Buffer (TLB) may slow down the system significantly.
....
Transparent huge pages thus are of most use on systems with
very large (128GB or more) memory, and help to drive performance.
....
There are cases where THP may regress performance,
particularly when under memory pressure due to pages
being reclaimed in an effort to promote to huge pages.
....
Symptom: When you are running into the THP performance problem,
you often can see peaks in the cpu usage and a very high value of
system time (sys-time) in relation to the user time (usr-time).

Solution 1: Update your linux kernel to at least version 3.0.80-0.5.1 (SP2).
In this case Solution 2 is not needed any more.

Solution 2: If necessary, THP can be disabled....

Heavily abbreviated statement in SNote 2193512 - BWA: New alert to check if the Linux feature "Transparent Hugepages" is enabled?....

With kernel >= 3.0.80-0.5.1 a fix for the hanging situation has been provided by SUSE for SLES 11 SP2.
With this kernel version it is not necessary anymore to disable the transparent hugepages.
We strongly recommend to upgrade to kernel 3.0.93 or better as soon as possible.

Using Red Hat Enterprise Linux the fix is provided by upgrading to RHEL 7.

Nethertheless we propose to disable the Transparent Huge Pages in any case,
even on kernel >= 3.0.80, to avoid possible performance degration in BWA or TREX.

@herrmie
Copy link
Author

herrmie commented Jul 18, 2024

Hello,

@sean-freeman, thanks a lot for the summarize.
But we are only focusing on Transparent Huge pages. And there is the Note for ASE which stated it correctly to disable THP:
https://me.sap.com/notes/2989091/E

image

Also for Oracle should THP be disabled, you can see it in note https://me.sap.com/notes/1871318/E and in the Oracle documentation:
https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/disabling-transparent-hugepages.html

image

For us, it is clear, there need to be a correction of the code with regards to disable THP on Oracle, ASE and HANA as well (which is already there) which are running on Linux.
"The use of THP is not recommended for ASE (and in general not for hosts running a DBMS)." (https://me.sap.com/notes/2989091/E)

Best regards,
Steffen Herrmann

@berndfinger
Copy link
Member

Hi @herrmie,
one of the reasons for not immediately fixing this issue was that we also need to consider the scope of the roles (on RHEL at least). And then there were a lot of other tasks I had to work on.

The role sap_general_preconfigure is performing package installations and system settings for both SAP ABAP Platform and SAP HANA, so it might also be suitable for non-HANA databases in SAP environments (however, this needs to be confirmed first). For example, SAP note 2772999 contains the following statement: "The installation or configuration of RHEL 8 for a database server for SAP software is not the primary purpose of this document. If you want to install a database server, please consult the operating system and database system documentation as well." A similar statement is in SAP note 3108316.

On top of this role, sap_netweaver_preconfigure is performing necessary changes for SAP ABAP Platform and sap_hana_preconfigure for SAP HANA database, respectively.

So none of these roles is performing necessary changes for RHEL systems running non-HANA databases in SAP landscapes. We could (for example) add parameters for configuring database settings as part of the sap_general_preconfigure role (similar to what we are doing for NetApp NFS in sap_hana_preconfigure). Or we could add a new role for performing non-HANA database settings for RHEL Systems in SAP landscapes. In both cases, we would need to examine all (or at least the most important) necessary OS changes for these databases, so this would take some time. Developing the code is probably the easiest part, as most of such code is already part of existing preconfigure roles. But I expect some significant testing effort due to the different landscapes and because database installations take some time.

An alternative solution could be to use the kernel_settings role, which is also part of the RHEL System Roles collection. But as this role is using tuned for setting kernel parameters, it might interfere with the SAP related tuned profile (at least if the database is running on the same system as the one running SAP ABAP Platform).

Or, if most of the settings for SAP HANA are also OK for the non-HANA databases, the role sap_hana_preconfigure can be used to set THP to any supported value, see PR 886.

Please let me know your thoughts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants