CloudFormation - 如何使用 cfn-init 启动 Windows 服务

CloudFormation - 如何使用 cfn-init 启动 Windows 服务

我正在创建一个 CloudFormation Stack,它将在 Windows 实例上安装和启动服务。我已经知道如何安装该服务,但如何使用 cfn-init 启动该服务?

例子似乎所有人都使用 Linux,因为有对“sysvinit”的引用。如何构造 AWS::CloudFormation::Init,以便 cfn-init 在安装 Windows 服务后启动它们?我是否应该保留 sysvinit,用其他东西替换它,或者将其取出?

ps:我指的是如何通过向 AWS::CloudFormation::Init.services 提供信息来启动服务。此外,了解“软件包”在 Windows 上的工作原理也很好。 AWS 的公告表示软件包在 Windows 上受支持,但没有针对 Windows 的文档

答案1

我得到了以下回复请参阅我在 AWS CloudFormation 论坛上的相关帖子:

发布者:Adam@AWS 发布时间:2012 年 11 月 7 日上午 9:05 回复:Edwin G. Landy 回复有帮助的 Edwin,

您可以采用与 yum 包非常相似的方式安装 MSI 包。例如:

"packages" : {
   "msi" : { 
      "mysql" : "URL or path to file on disk",
      "package2" : "path to another MSI"
   }
}

请注意,名称并不重要 - cfn-init 将从 MSI 中提取 ProductCode 以确定软件包是否已安装。还会为所有用户安装 MSI,并禁止重新启动。

恐怕我们目前还不支持 Windows 上的服务,但这是我们计划中的一项功能。在此之前,您可以使用命令部分中的“net”命令从 cfn-init 启动服务。

谢谢,亚当

相关内容