1
0
Fork 0

sap-netweaver: Use RHEL-8 defaults for kernel.shmall and kernel.shmmax

The kernel.shmall and kernel.shmmax parameters were previously set using
a script that calculated their values based on the system's memory size.
However the script was broken for high values of memory size.

The default value of kernel.shmall and kernel.shmmax in RHEL-8 is
18446744073692774399, which is sufficiently high and it's recommended to
use it. So we could simply drop the tuning from the profile, however it
seems better to set the value explicitly so that the profile overrides
any changes that may have been applied to the parameters due to
misconfiguration.

Resolves: rhbz#1708418

Signed-off-by: Ondřej Lysoněk <olysonek@redhat.com>
This commit is contained in:
Ondřej Lysoněk 2019-06-06 10:52:32 +02:00
parent d673e006e2
commit 664cf6dde9
2 changed files with 2 additions and 43 deletions

View file

@ -1,40 +0,0 @@
#!/bin/bash
# SAP ktune script
#
# TODO: drop this script and implement native support
# into plugins
. /usr/lib/tuned/functions
start() {
# The following lines are for autodetection of SAP settings
SAP_MAIN_MEMORY_TOTAL=`awk '/MemTotal:/ {print $2}' /proc/meminfo`
SAP_SWAP_SPACE_TOTAL=`awk '/SwapTotal:/ {print $2}' /proc/meminfo`
# Rounding to full Gigabytes
SAP_VIRT_MEMORY_TOTAL=$(( ( $SAP_MAIN_MEMORY_TOTAL + $SAP_SWAP_SPACE_TOTAL + 1048576 ) / 1048576 ))
# kernel.shmall is in 4 KB pages; minimum 20 GB (SAP Note 941735)
SAP_SHMALL=$(( $SAP_VIRT_MEMORY_TOTAL * 1024 * 1024 / 4 ))
# kernel.shmmax is in Bytes; minimum 20 GB (SAP Note 941735)
SAP_SHMMAX=$(( $SAP_VIRT_MEMORY_TOTAL * 1024 * 1024 * 1024 ))
CURR_SHMALL=`sysctl -n kernel.shmall`
CURR_SHMMAX=`sysctl -n kernel.shmmax`
save_value kernel.shmall "$CURR_SHMALL"
save_value kernel.shmmax "$CURR_SHMMAX"
(( $SAP_SHMALL > $CURR_SHMALL )) && sysctl -w kernel.shmall="$SAP_SHMALL"
(( $SAP_SHMMAX > $CURR_SHMMAX )) && sysctl -w kernel.shmmax="$SAP_SHMMAX"
return 0
}
stop() {
SHMALL=`restore_value kernel.shmall`
SHMMAX=`restore_value kernel.shmmax`
[ "$SHMALL" ] && sysctl -w kernel.shmall="$SHMALL"
[ "$SHMMAX" ] && sysctl -w kernel.shmmax="$SHMMAX"
return 0
}
process $@

View file

@ -8,7 +8,6 @@ include=throughput-performance
[sysctl]
kernel.sem = 32000 1024000000 500 32000
kernel.shmall = 18446744073692774399
kernel.shmmax = 18446744073692774399
vm.max_map_count = 2000000
[script]
script=${i:PROFILE_DIR}/script.sh