16 微调 SUSE Linux Enterprise for SAP #
本章介绍如何通过 sapconf
准备和微调 SUSE Linux Enterprise Server,以便以最佳方式使用 SAP 应用程序。sapconf
适用于安装了 SAP 应用程序的 SUSE Linux Enterprise 系统。安装了 SUSE Linux Enterprise Server for SAP Applications 的客户应使用 saptune
。
sapconf
命令
在 SUSE Linux Enterprise Server 以及 SUSE Linux Enterprise Server 11 和 12 中,sapconf
命令包含在同名的软件包中。
对于 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise Server 15,情况已发生变化:命令 sapconf
已从 sapconf 软件包中去除。该软件包仅包含 systemd
服务,不再包含 sapconf
命令行工具,以及 sapconf
/tuned
配置文件和 tuned
。
16.1 使用 sapconf
5 微调 SLE 系统 #
SUSE Linux Enterprise Server 和 SUSE Linux Enterprise Server for SAP Applications 中提供了 sapconf
软件包。此软件包可为以下类型的 SAP 应用程序设置建议的参数:SAP NetWeaver、SAP HANA 和基于 SAP HANA 的应用程序。
sapconf
5 概览 #sapconf
5(不包含tuned
)sapconf-netweaver
(取代了tuned
配置文件的sapconf
配置文件)sapconf-hana
(取代了tuned
配置文件的sapconf
配置文件)sapconf-bobj
(取代了tuned
配置文件的sapconf
配置文件)sapconf-ase
(取代了tuned
配置文件的sapconf
配置文件)
sapconf
5 概览 #sapconf
5(不包含tuned
)不再包含配置文件
请注意,如果您之前对系统微调进行了更改,sapconf
可能会重写这些更改。
sapconf
5 随附了一个 systemd
服务,该服务会应用微调并确保相关的服务正在运行。
要使用 sapconf
,请确保您的系统上已安装 sapconf 软件包。
在 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise Server 15 中,sapconf
不再支持配置文件。
16.1.1 校验 sapconf
设置 #
sapconf
5.0.2 和更高版本中提供了检查工具 sapconf_check
,用于校验是否已正确设置 sapconf
。例如:
#
sapconf_check
This is sapconf_check v1.0. It verifies if sapconf is set up correctly and will give advice to do so. Please keep in mind: {{ - This tool does not check, if the tuning itself works correctly.}} {{ - Follow the hints from top to down to minimize side effects.}} Checking sapconf ================ [ OK ] sapconf package has version 5.0.2 [ OK ] saptune.service is inactive [ OK ] saptune.service is disabled [WARN] tuned.service is enabled/active with profile 'virtual-guest -> Sapconf does not require tuned! Run 'systemctl stop tuned.service', if not needed otherwise. [FAIL] sapconf.service is inactive -> Run 'systemctl start sapconf.service' to activate the tuning now. [FAIL] sapconf.service is disabled -> Run 'systemctl enable sapconf.service' to activate sapconf at boot.1 warning(s) have been found. 2 error(s) have been found. Sapconf will not work properly!
如果 sapconf_check
发现了问题,将会提供有关如何解决问题的提示。该工具不会校验是否已正确微调系统,只会检查 sapconf
是否已正确设置且已启动。
16.1.2 启用和禁用 sapconf
并查看其状态 #
安装 sapconf
后,将启用 sapconf
服务。
您可以按如下所述检查或更改 sapconf
的状态:
要查看
sapconf
服务的状态,请运行以下命令:#
systemctl status sapconf
该服务应显示为 active (exited)。
要启动
sapconf
服务,请运行以下命令:#
systemctl start sapconf
如果
sapconf
处于禁用状态,请使用以下命令将其启用并启动:#
systemctl enable --now sapconf
要停止
sapconf
服务,请运行以下命令:#
systemctl stop sapconf
此命令将立即禁用绝大多数优化设置。只有需要重引导系统才能启用/禁用的选项例外。
要禁用
sapconf
,请使用以下命令:#
systemctl disable sapconf
如果您未特意自行启用
sapconf
所依赖的任何服务,则此命令还会禁用sapconf
所使用的大多数微调参数和所有服务。
sapconf
依赖的其他服务
除了 sapconf
服务以外,它还依赖于以下两个服务:
sysstat
,该服务用于收集有关系统活动的数据。uuidd
,该服务会生成基于时间的 UUID,即使是在涉及许多处理器核心的设置中,也能保证这些 UUID 是唯一的。这对于 SAP 应用程序而言非常必要。
16.1.3 配置 sapconf
5 #
一般情况下,sapconf
的默认配置已使用 SAP 建议的参数值。但如果您有特殊需求,可以配置该工具以更好地满足这些需求。
您可以在 /etc/sysconfig/sapconf
文件查看 sapconf
的所有参数。您可以直接编辑此文件。此文件中的所有参数都会通过注释和对 SAP 说明(可在 https://launchpad.support.sap.com/ 上查看)的引用进行解释。
更新 sapconf
时,系统会尽可能多地保留此文件中的所有自定义参数。但是,有时无法将参数完全传输到新配置文件中。因此,建议在更新后检查以前的自定义配置(在更新期间将转移到 /etc/sysconfig/sapconf.rpmsave
)与新版本(位于 /etc/sysconfig/sapconf
)之间的差异。
与此文件相关的日志消息将写入 /var/log/sapconf.log
中。
编辑其中的任一文件时,您会发现,某些值已通过行首的 #
字符注释掉。这表示尽管该参数与微调相关,但它没有适当的默认值。
相反,您可以在行首添加 #
字符来注释掉特定参数。但应该避免这种做法,因为这可能会导致 sapconf
无法正常应用配置文件。
要应用编辑的配置,请重启动 sapconf
:
#
systemctl restart sapconf
确认是否正确应用了某个参数值的方式根据参数的不同而异。因此,以下方法仅用作示例:
要确认是否已应用 TCP_SLOW_START
的设置,请执行以下操作:
查看
sapconf
的日志文件,以确定它是否应用了该值。在/var/log/sapconf.log
中,检查是否存在包含以下文本的行:Change net.ipv4.tcp_slow_start_after_idle from 1 to 0
或者,参数可能在
sapconf
启动之前已正确设置。在这种情况下,sapconf
将不更改其值:Leaving net.ipv4.tcp_slow_start_after_idle unchanged at 1
可以在
/proc/sys/net.ipv4.tcp_slow_start_after_idle
中手动配置TCP_SLOW_START
后面的基础选项。要检查其实际的当前值,请使用以下命令:#
sysctl net.ipv4.tcp_slow_start_after_idle
16.1.4 去除 sapconf
#
要从系统中去除 sapconf
,请使用以下命令卸装其软件包:
#
zypper rm sapconf
请注意,执行此操作不会卸装 sapconf
的依赖项,但 sysstat
服务将进入禁用状态。如果您仍然需要此服务,请务必再次启用它。
16.1.5 更多信息 #
以下手册页提供了有关 sapconf
的更多信息:
sapconf
设置的所有微调参数的详细说明:man 5 sapconf
有关配置和自定义
sapconf
配置文件的信息:man 7 sapconf
另请参见 https://www.suse.com/c/a-new-sapconf-is-available/ 上的博客系列,其中详细介绍了 sapconf
的更新版本。
16.1.6 将 tuned
与 sapconf
一起使用 #
在版本 5 中,sapconf
不再依赖于 tuned
。这意味着,这两个工具都可以单独使用。如果 tuned
服务已启动,sapconf
将在其日志中列显警告。
tuned
与 sapconf
一起使用
如果您要同时使用 tuned
和 sapconf
,请务必小心,因为这两个工具配置的系统参数不同。