AWS用户数据运行后启动服务

我正在build立一个基于Ubuntu 16.04 AMI的AMI。

当我从AMI启动一个实例时,我想传递一个用户数据脚本,该脚本在AMI服务启动之前运行。

看起来用户数据在cloud-final.service运行。 如果我systemctl status cloud-finaljournalctl -u cloud-final我看到我的用户数据脚本的输出。

我试图设置我的.service文件来启动cloud-final.service之后的服务

 [Unit] Description=My Service After=network.service After=cloud-final.service ... 

但云端有RemainAfterExit=yes ,这意味着它永远不会完成,所以我的服务永远不会启动。

如何在用户数据脚本运行后将 AWS Ubuntuconfiguration为启动我的服务?

你可能会做的是让用户数据脚本写一个文件来表示它已经完成了(在脚本的末尾),并且让其他服务在接近尾声的某个地方开始,并且让它首先监视文件。 当它注意到正在创build的文件(或者时间戳被更新,或者内容改变了,无论如何),然后启动服务的其余部分并正常退出。