![](/img/trans.png)
[英]Start AWS EC2 instance, run commands, stream logs to console and terminate
[英]Trigger event on AWS EC2 instance stop/terminate
當 EC2 實例停止/終止時,是否有某種方法可以觸發事件(例如,運行腳本將一些日志推送到 S3)?
我已經研究過使用 /usr/lib/systemd/system 中的服務觸發腳本,但我還沒有運氣。 我聽說可以在觸發服務之前關閉實例上的網絡功能,如果為真,這可能是腳本無法正確執行的原因。
所以答案並不是真正特定於 AWS 的,但它現在對我有用(在 EC2 實例停止和終止上進行了測試)。
/usr/lib/systemd/system/my_shutdown.service
[Unit]
Description=my_shutdown Service
Before=shutdown.target reboot.target halt.target
Requires=network-online.target network.target
[Service]
KillMode=none
ExecStart=/bin/true
ExecStop=/path/to/my_script.sh
RemainAfterExit=yes
Type=oneshot
[Install]
WantedBy=multi-user.target
systemctl enable my_shutdown.service
或者,您可以手動創建符號鏈接:
ln -s /usr/lib/systemd/system/my_shutdown.service /etc/systemd/system/multi-user.target.wants/my_shutdown.service
systemctl start my_shutdown.service
我的理解:
參考:
您可以使用 CloudWatch 觸發事件,例如在特定事件上將日志推送到 S3……在此處了解更多信息: https ://aws.amazon.com/cloudwatch/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.