在关闭/终止aws实例期间运行脚本


2

我需要在关闭/终止AWS实例(debian)期间执行脚本。我将我的脚本添加到/etc/init.d/myscript和/etc/rc0.d/K01myscript的符号链接但是我注意到当我终止实例时,我没有看到我的脚本被执行。任何想法?


1
你怎么知道它没有被执行?是否有任何本地~参考或预计会在路径中的程序?可能必须明确说明任何需要运行的位置。
Xen2050 2015年

我会解释我的用例。我正在使用Sensu进行监控,我的应用程序在ASG下运行。所以我使用systemd作为sensu客户端服务。实例启动时,它将自动连接到Sensu主服务器。我需要的是当实例发生故障时,它需要从Sensu主服务器取消注册。我手动尝试了脚本,它正如预期的那样正常工作。我想要的是在关机过程中执行此脚本。
Vishnu Nair 2015年

Answers:


2

所以我使用systemd作为sensu客户端服务

如果确实如此,那么根本使用init脚本。您需要做的就是将以下两行添加到systemd服务:

 RemainAfterExit=yes
 ExecStop=/path/to/executable/script

第一个选项指示systemd将服务视为守护进程,即使所有进程已经死亡,也将其视为正在运行; 系统指向清理脚本的第二个指令,您必须提供。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.