如何在启动时在新的 EC2 Windows 实例上运行命令?

上次更新时间:2020 年 10 月 12 日

我想在启动新的 Amazon Elastic Compute Cloud (Amazon EC2) Windows 实例时运行自定义脚本。我该如何操作?

简短描述

要运行在实例启动时启动的脚本,请将该脚本添加到用户数据中。用户数据由 EC2Config(Windows Server 2012 R2 及更早版本)或 EC2Launch(Windows Server 2016 及更高版本)处理。

解决方法

在将脚本添加到用户数据时,必须将其括在特殊标签中。此标签用于确定命令是在命令提示符窗口中运行还是使用 Windows PowerShell。有关更多信息,请参阅在启动时在 Windows 实例上运行命令

启动新的 EC2 Windows 实例时,您可以在配置期间指定用户数据,以便在启动时运行自定义脚本。

重要提示:如果从自定义 AMI 启动实例,则必须使用 EC2Launch 或 EC2Config 关闭创建 AMI 的原始实例。从 EC2LaunchEC2Config 设置中选择使用 Sysprep 关闭不使用 Sysprep 关闭

1.    打开 Amazon EC2 控制台,然后从导航窗格中选择 AMI

2.    选中 AMI,然后选择启动

3.    选择实例类型,然后选择下一步: 配置实例详细信息

4.    对于高级详细信息,请在用户数据文本框中输入您的自定义脚本。请务必使用正确的标签。
       注意:要在每次重启或启动实例时运行用户数据脚本,请添加以下内容:

<persist>true</persist>

5.    完成启动向导以启动实例。

对于其他问题排查,EC2Launch 和 EC2Config 日志文件包含标准输出和标准错误流的输出。日志文件的位置如下:

  • EC2Launch:C:\ProgramData\Amazon\EC2-Windows\Launch\Log\UserdataExecution.log
  • EC2Config:C:\Program Files\Amazon\Ec2ConfigService\Logs\Ec2Config.log

这篇文章对您有帮助吗?


您是否需要账单或技术支持?