6
我需要应用服务器(它是beanstalk实例)在启动时执行一些操作,我想运行一个bash脚本传递给具有UserData属性的实例定期到EC2实例。我如何通过CloudFormation将UserData传递给Beanstalk实例
我发现了几个例子CloudFormation模板,它与常规的EC2实例做到了这一点,但没有使用Beanstalk的例子。我试图把它添加到属性字段中的应用:
"MyApp" : {
"Type" : "AWS::ElasticBeanstalk::Application",
"Properties" : {
"Description" : "MyApp description",
"ApplicationVersions" : [{
...
}],
"UserData" : {
"Fn::Base64" : { "Fn::Join" : ["", [
"#!/bin/bash\n",
"touch /tmp/userdata_sucess\n"
]]
}},
...
我也试图添加到环境的一部分:
"MyAppEnv" : {
"Type" : "AWS::ElasticBeanstalk::Environment",
"Properties" : {
"ApplicationName" : { "Ref" : "MyApp" },
"Description" : "MyApp environment description",
"UserData" : {
"Fn::Base64" : { "Fn::Join" : ["", [
"#!/bin/bash\n",
"touch /tmp/userdata_sucess\n"
]]
}},
"TemplateName" : "MyAppConfiguration",
"VersionLabel" : "First Cloud version"
}
},
在这两种情况下,这种试图创建时导致失败堆栈。有谁知道是否可以使用CloudFormation将UserData传递给Beanstalk实例。如果是这样 - 你能提供一个例子吗?
+1对于您自己的问题,谢谢! –
@tronda,你知不知道6年后还是这样? –
对不起,自从这篇文章以来一直没有使用Beanstalk。 @AlexanderF。 – tronda