EC2`UserData`执行回调?

问题描述 投票:0回答:2

我有一个Cloudformation模板,该模板可创建VPC /子网并在其中启动一台EC2计算机-

https://gist.github.com/jhw/9c595edb615381780a2ba76791722fc3#file-stack-yaml

模板还包含一些EC2 UserData,该EC2 UserData在该计算机上安装了Cloudwatch和CodeDeploy用户代理。

模板可以正常工作,但是我正在努力地获得有关何时实际执行UserData的通知-似乎EC2机器会说“就绪”,但是只有then开始执行[C0 ],由于需要加载/安装不同的软件包,因此随后需要花费几分钟。

我能够了解UserData执行的唯一方法是转储EC2计算机级别的日志,但这远非完美,因为直到UserData为止,这些日志似乎才可用已执行completed-如果您在成功执行之前尝试下载它们,则只会得到一个空文件。

因此,我用于检测计算机是否已经[真正]准备就绪的“自动化”例程是在定时循环中获取日志,然后尝试检测这些日志中的某些关键字。感觉很糟糕,-/

UserData可能已完成执行时,有没有更好的方法来得到通知?某种回调?

我有一个Cloudformation模板,该模板可创建VPC /子网并在其中启动一台EC2计算机-https://gist.github.com/jhw/9c595edb615381780a2ba76791722fc3#file-stack-yaml模板...

amazon-ec2 aws-code-deploy
2个回答
0
投票
如果您的EC2实例的OS是基于systemd的,则可以在[Unit]部分中使用“ After”来定义应在“ cloud-final”启动后启动的可执行文件/服务。

0
投票
[CreationPolicy Documentation]将CreationPolicy属性与资源相关联,以防止其状态在AWS CloudFormation收到指定数量的成功信号或超过超时期限之前无法完成创建。
© www.soinside.com 2019 - 2024. All rights reserved.