【发布时间】:2012-10-06 09:57:34
【问题描述】:
我们目前正在使用“负载平衡模板”部署时基于 AWS Toolkit for Visual Studio 创建的模板设置 CloudFormation 堆栈。我们需要创建一个脚本来稍微自定义 EC2 实例。更具体地说,我们希望: 1. 将两个证书安装到证书存储中。 2. 配置 IIS 以使用其中一种证书。 3. 在 IIS 上启用 TLS 1.2。
我们需要将这些证书安装在 IIS 上,而不是负载均衡器,因为我们需要支持客户端证书身份验证。
我们希望在不必创建自定义 AMI 的情况下实现这一点,因为我们希望能够在新版本到来时轻松更新 AMI。我们正在使用以下内容:ami-f6803f9f(这是模板使用的默认值)。
因此,我们希望将这些自定义作为 CloudFormation 模板的一部分。我尝试使用模板的“AWS::CloudFormation::Init”部分创建一个简单的文件(只是为了确保脚本有效)。但是,当我启动堆栈时,文件永远不会被创建。应该创建文件的模板部分如下所示:
"Metadata" : {
"AWS::CloudFormation::Init" : {
"config" : {
"files" : {
"C:/ClientCA.pfx" : {
"content" : { "Fn::Join" : ["", [
"test1\n",
"test2\n"
]]}
}
}
}
}
}
因此,我的问题是: 1. 为什么文件没有被创建?是因为模板有问题还是这个 AMI 不支持这些类型的初始化脚本? 2. 我们计划使用“AWS::CloudFormation::Init”从 S3 下载证书,并使用我们添加到 UserData 的 PowerShell 脚本安装它们。这是一个好方法还是我们应该采取不同的做法?
【问题讨论】:
标签: powershell amazon-ec2 amazon-web-services amazon-cloudformation