2017-09-08 8 views
0

CloudFormation JSONでは、少なくとも私はバッチスクリプトのように見えるものを含むbase64エンコードUserDataフィールドを持っています。しかしそれは<script></script>に囲まれています。AWS CloudFormationのUserDataフィールドに<script>タグがあるのはなぜですか?

フォーマットがXMLでもなくJSONであるため、これは奇妙です。そこでXMLタグとは何ですか?それはいくつかの遺産か、それともウェブブラウザの<script>タグを模倣していますか?

例:

"UserData": { 
    "Fn::Base64": { 
     "Fn::Join": [ 
      "", 
      [ 
       "<script>\n", 
       "cfn-init.exe -v -s MyStack -r MyResource --region us-west-1b\n", 
       "</script>\n" 
      ] 
     ] 
    } 
} 

答えて

2

ユーザーデータフィールドは、Amazon EC2インスタンスに情報を渡します。データベースのパスワード、バックエンドサーバーのIPアドレス、または選択したものになります。これらのタグ内の何かがコマンドライン上で最初に実行されるインスタンスの起動

  • <powershell>...</powershell> - - 何

    • <script>...</script>

      しかし、標準的なWindowsのAMIにインストールされたソフトウェアも探しこれらのタグ内のインスタンスの起動PowerShellで最初に実行されます

    を参照してください:Running Commands on Your Windows Instance at Launch

    Amazon Linuxインスタンスでは、#!で始まるユーザーデータがシェルで実行されます。

    So ... XMLは文字列の中にあるのはなぜですか?これは、文字列がユーザーデータを介してインスタンス上のユーティリティソフトウェアに渡され、ソフトウェアがこれらのタグを探しているためです。それらがなければ、スクリプトは実行されません。

  • 関連する問題