2015-02-11 62 views
2

我試圖使用CloudFormation(CFN)啓動具有單個m3.medium實例和附加EBS的自動調整組。除了EBS部分之外,我已經成功做了一切。我試着加入以下塊到我的CFN模板(作爲AWS::AutoScaling::LaunchConfiguration block的屬性):使用CloudFormation啓動附帶EBS的AWS自動調整組

"BlockDeviceMappings": [ 
    { 
    "DeviceName": "/dev/sdf", 
    "Ebs": { "VolumeSize": 100, "VolumeType": "gp2" } 
    } 
] 

沒有這個發射成功。當我包含它時,aws在嘗試創建自動調整組時嘗試掛起。沒有錯誤消息來幫助調試此問題。我已經嘗試通過aws控制檯創建EBS並手動連接到啓動的m3實例,並且這可以工作,但我需要通過CFN來實現,以符合我們的自動化部署管道。

我需要在CFN模板中創建其他資源才能使其工作?

+0

要回答直接問題,您只需要啓動配置中的此嵌入式屬性,並且不需要其他資源。它可能只是語法(請參閱我的答案)或限制。 – 2015-02-11 17:15:00

回答

0

如果這是一個逐字塊,那麼你可以將引號添加到卷大小(doc是非常具有誤導性的,因爲所有數據類型都是字符串)。下面是一個真實的工作對我很好,我看不出有什麼差別:

  "BlockDeviceMappings": [ 
       { 
        "DeviceName": { 
         "Ref": "SecondaryDevice" 
        }, 
        "Ebs": { 
         "VolumeType": "gp2", 
         "VolumeSize": "10" 
        } 
       } 
      ] 

一般來說,如果您需要解決助理祕書長,加入SNS notifs用於發射失敗的自動縮放組(http://docs.aws.amazon.com/AutoScaling/latest/DeveloperGuide/ASGettingNotifications.html)。您可能會發現自己處於EBS限制的最後一百次(不太可能),或者您的AMI不喜歡您嘗試使用的設備類型或標籤(更有可能)。

+0

謝謝。我嘗試了100和「100」,但都沒有成功。此外,我知道我沒有用完EBS空間,因爲我可以創建一個新的EBS並通過aws控制檯將其附加到我的實例。 SNS通知如何幫助您?堆棧啓動實際上並沒有失敗,只是掛起了一段不確定的時間。最後蒂姆我嘗試了這一點,我讓它超過30分鐘。 – 2015-02-11 17:24:51

+0

哎呀。你需要更多關於在自動調節組上啓用SNS的細節嗎?如果組資源本身完成創建,那麼你可以使用它來獲得一個很好的錯誤信息(例如,你會得到一封電子郵件來回應失敗的啓動,如「不支持的配置」,我認爲這是一個潛在的原因)。 – 2015-02-11 17:31:10

+0

如果你有一個鏈接,我可以看看,這將是有益的。 – 2015-02-11 18:51:25