使用Systemd脚本启动/停止SAP-Linux 7(RHEL7)

2020-08-20 11:28发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在尝试在RHEL7上创建systemd服务脚本,以在服务器重新启动后自动关闭/启动SAP应用程序。 我已经看到一些论坛讨论此问题,但是没有找到适合我的脚本的解决方案。

下面是我正在使用的systemd服务脚本,它可用于SAP应用程序的启动,但不适用于关机...当我尝试重新引导服务器时,所有服务将立即被杀死 无需在脚本上运行" ExecStop"命令。


您能告诉我一些如何解决此问题的方法吗?

 [单位]
 描述= SAP.service
 之后= local-fs.target network.target network-online.target

 [服务]
 类型=简单
 RemainAfterExit = true
 Environment =" SID1 = SID"" DAA = DAA"
 KillMode =无
 SendSIGKILL =否
 ExecStart =/usr/bin/python/usr/sap/scripts/SAPstart.py
 ExecStop =/usr/bin/python/usr/sap/scripts/SAPstop.py
 超时时间= 60

 [安装]
 WantedBy =多用户目标


 

预先感谢

卡洛斯

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在尝试在RHEL7上创建systemd服务脚本,以在服务器重新启动后自动关闭/启动SAP应用程序。 我已经看到一些论坛讨论此问题,但是没有找到适合我的脚本的解决方案。

下面是我正在使用的systemd服务脚本,它可用于SAP应用程序的启动,但不适用于关机...当我尝试重新引导服务器时,所有服务将立即被杀死 无需在脚本上运行" ExecStop"命令。


您能告诉我一些如何解决此问题的方法吗?

 [单位]
 描述= SAP.service
 之后= local-fs.target network.target network-online.target

 [服务]
 类型=简单
 RemainAfterExit = true
 Environment =" SID1 = SID"" DAA = DAA"
 KillMode =无
 SendSIGKILL =否
 ExecStart =/usr/bin/python/usr/sap/scripts/SAPstart.py
 ExecStop =/usr/bin/python/usr/sap/scripts/SAPstop.py
 超时时间= 60

 [安装]
 WantedBy =多用户目标


 

预先感谢

卡洛斯

付费偷看设置
发送
11条回答
ZJXianG
1楼-- · 2020-08-20 12:25

嗨,Moti,

还没有。 我仍然无法使用systemd关闭SAP。 我尝试了已经不同的事情,但是没有运气。 如果您找到解决方案,请告诉我。 如果我想出解决方法,我将做同样的事情。

谢谢

卡洛斯

spaceman01
2楼-- · 2020-08-20 12:25

嗨卡洛斯,

我们仍在困扰这个问题。

我与SAP发生了一起事件,这是他们的回复

"带有系统的sapinit脚本(及其启动的进程)位于用户切片中。通常,系统在杀死进程之前只允许90秒停止这些进程。

SUSE为这种情况提供了一种解决方法: https://www.suse.com/de-de/support/kb/doc/?id=7022671

KBA是在HA群集的上下文中描述的,但是它也可以以相同的方式应用于独立系统。 我建议您先在测试环境中尝试一下"

我们已经实现了SUSE KBA,但是在重启时仍然不会触发stopap(sapinit停止)

您可以尝试看看,也许您会成功。 请报告您是否完成

谢谢

Moti

Climb_Ma
3楼-- · 2020-08-20 12:31

下午好,

从我阅读的文档中,SAP并未为其提供的系统提供系统设置。

这是最令人惊讶的,因为systemd在RH 7中是强制性的,并且已经使用了几年。

正如已经提到的,最重要的问题是系统由于切换用户(su-)问题或系统未启动数据库而使数据库崩溃。

我还想坚持一个事实,那就是Suse解决方法不能解决以下问题。

如果SAP或DB没有通过systemd重新启动,即使使用KBA,手动启动系统也意味着systemd将在关闭计算机时使其崩溃。

这确实是一种肮脏的系统管理方式。

今天愉快。

95年老男孩
4楼-- · 2020-08-20 12:31

嗨,大家好,

您是否找到了一种创建脚本或为此进行某种处理的方法? 我再也没有问题可以自动启动SAP应用程序,但是除了手动关闭它们之外,我找不到在RHEL 7上正常关闭SAP应用程序的方法。 我认为SAP应该提供一种方法来实现这一目标。 我尝试了许多不同的systemd脚本,但是没有人能正常工作...,当操作系统重新启动时,它会杀死所有进程并卸载所有文件系统,因此systemd脚本永远无法工作。

如果您已经找到实现此目标的方法,请提出建议。

谢谢

Carlos

蓋茨
5楼-- · 2020-08-20 12:09

在某些情况下,要变通解决:

我们在abrt-ccpp.service中添加了一行
 ExecStop =/usr/bin/sleep 90
 之后,执行systemctl daemon-reload systemctl daemon-reexec并重新引导几次,

一周热门 更多>