为什么我的CloudFormation脚本不会下载文件?

时间:2013-07-19 15:44:44

标签: amazon-web-services amazon-cloudformation

我需要在初始化Windows实例期间下载文件。为了测试这一点,我使用以下脚本下载Google徽标(使用Windows Roles and Features template的简化版本):

{
  "AWSTemplateFormatVersion" : "2010-09-09",

  "Description" : "Test download.",

  "Resources" : {

    "InstanceSecurityGroup" : {
      "Type" : "AWS::EC2::SecurityGroup",
      "Properties" : {
        "GroupDescription" : "Enable RDP",
        "SecurityGroupIngress" : [
          {"IpProtocol" : "tcp", "FromPort" : "3389", "ToPort" : "3389", "CidrIp" : "0.0.0.0/0"}
        ]
      }
    },

    "WindowsServer": {
      "Type" : "AWS::EC2::Instance",
      "Metadata" : {
        "AWS::CloudFormation::Init" : {
          "config" : {
            "files" : {
              "c:\\test\\google-logo.png" : {
                "source" : "http://www.google.com/images/srpr/logo4w.png"
              }
            }
          }
        }
      },

      "Properties": {
        "InstanceType" : "m1.small",
        "ImageId" : "ami-bbf2e1cf",
        "SecurityGroups" : [ {"Ref" : "InstanceSecurityGroup"} ],
        "KeyName" : "POP",
        "UserData" : { "Fn::Base64" : { "Fn::Join" : ["", [
            "<script>\n",

            "cfn-init.exe -v -s ", { "Ref" : "AWS::StackId" }, 
            " -r WindowsServer",
            " --region ", { "Ref" : "AWS::Region" }, "\n",

            "</script>"
        ]]}}
      }
    },

    "WindowsServerWaitHandle" : {
      "Type" : "AWS::CloudFormation::WaitConditionHandle"
    },

    "WindowsServerWaitCondition" : {
      "Type" : "AWS::CloudFormation::WaitCondition",
      "DependsOn" : "WindowsServer",
      "Properties" : {
        "Handle" : {"Ref" : "WindowsServerWaitHandle"},
        "Timeout" : "1800"
      }
    }
  }
}

执行完毕没有错误......没有文件。我哪里错了?

1 个答案:

答案 0 :(得分:1)

乔纳森,

我尝试了您的模板并成功下载了该文件。您可以检查实例上的cfn日志。他们在c:\cfn\log\。我的cfn-init.log显示:

2013-07-19 21:30:18,269 [DEBUG] Parent directory c:\test does not exist, creating
2013-07-19 21:30:18,269 [DEBUG] Writing content to c:\test\google-logo.png
2013-07-19 21:30:18,269 [DEBUG] Retrieving contents from http://www.google.com/images/srpr/logo4w.png
2013-07-19 21:30:18,316 [DEBUG] No mode specified for c:\test\google-logo.png
2013-07-19 21:30:18,316 [WARNING] Unsupported OS for setting owner/group: nt

我的cfn-wire.log显示:

2013-07-19 21:30:18,269 [DEBUG] Request: GET http://www.google.com/images/srpr/logo4w.png [headers: {'Accept-Encoding': 'identity, deflate, compress, gzip', 'Accept': '*/*', 'User-Agent': 'python-requests/0.11.1'}]
2013-07-19 21:30:18,302 [DEBUG] Response: 200 http://www.google.com/images/srpr/logo4w.png [headers: {'content-length': '18946', 'x-xss-protection': '1; mode=block', 'x-content-type-options': 'nosniff', 'expires': 'Fri, 19 Jul 2013 21:30:20 GMT', 'server': 'sffe', 'last-modified': 'Mon, 25 Mar 2013 19:02:15 GMT', 'cache-control': 'private, max-age=31536000', 'date': 'Fri, 19 Jul 2013 21:30:20 GMT', 'content-type': 'image/png'}]