6

起動時にいくつかのアクションを実行するためにアプリケーション・サーバー(Beanstalkインスタンス)が必要です。利用可能なUserDataプロパティーを使用してインスタンスに渡されたbashスクリプトを実行することを考えました定期的なEC2のインスタンスに変換します。CloudFormationを使用してBeanstalkインスタンスにUserDataを渡すには

通常のEC2インスタンスでこれを行うCloudFormationテンプレートの例がいくつか見つかりましたが、Beanstalkの例はありません。作成しようとしたとき、これは失敗に終わったいずれの場合においても

"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" 
    } 
}, 

:私も環境一部に追加しようとした

"MyApp" : { 
    "Type" : "AWS::ElasticBeanstalk::Application", 
    "Properties" : { 
    "Description" : "MyApp description", 
    "ApplicationVersions" : [{ 
     ... 
    }], 
    "UserData" : { 
     "Fn::Base64" : { "Fn::Join" : ["", [ 
     "#!/bin/bash\n", 
     "touch /tmp/userdata_sucess\n" 
     ]] 
    }}, 
    ... 

:私は、アプリケーションのプロパティフィールドにこれを追加しようとしましたスタックCloudFormationを使用してUserDataをBeanstalkインスタンスに渡すことができるかどうかは誰にも知られています。もしそうなら、あなたは例を挙げることができます。

答えて

6

もしBeanstalkが提供するすべての利点(Amazonがあなたのために行うOSにパッチを当てなくてもいいなど)を望むなら、これは不可能です。 1つのオプションは、必要なスクリプトを含めるカスタムAMIを作成することですが、OSをセキュリティパッチで管理する必要があります。続きを読むhere

+0

+1ご質問ありがとうございます。 –

+0

@トロンダ、6年後もまだ同じかどうか分かりますか? –

+0

申し訳ありませんが、この投稿からBeanstalkで働いていません。 @AlexanderF。 – tronda

関連する問題