0

我在嘗試使用自動縮放策略和組啓動實例時遇到此錯誤。自動縮放無法正確創建實例

Cancelled: Launching a new EC2 instance: i-50dd31cc. Status Reason: Only EC2-Classic instances may be linked. 

我正在使用以下命令來創建自動縮放啓動配置和自動縮放組。

aws autoscaling create-launch-configuration --launch-configuration-name my-lc --image-id ami-12345678 --instance-type c4.large --classic-link-vpc-id vpc-1345622 --user-data file:///Users/path/Desktop/myscript.sh --classic-link-vpc-security-groups sg-sad34353 --spot-price "0.5" 

aws autoscaling create-auto-scaling-group --auto-scaling-group-name my-asg --launch-configuration-name my-lc --availability-zones "us-east-1a" "us-east-1e" --max-size 10 --min-size 1 --desired-capacity 10 --vpc-zone-identifier 'subnet-asd3r322,subnet-asdasd12' 

然後我根據SQS中的消息數量創建Cloudwatch警報。一切似乎都很好,實例正確運行。但問題是他們總是處於「待定」狀態。然後在半小時後,他們會因上述錯誤而關閉。

如何鏈接經典的EC2實例?

另外我還有一個問題與「所需」實例有關。我的最小數量是1,最大數量是10,所需數量是10.因此,當我啓動組並且SQS中沒有消息時,所需容量自動降至1。但是,當超過一半一個小時,所需容量沒有增加。仍然只有一個實例正在運行。爲什麼?

回答

1

你有2個問題在這裏,所以我會盡力回答他們都盡我所能。

啓動配置:似乎您正在嘗試創建啓動配置,以將實例啓動到鏈接到VPC的EC2 Classic中。您在啓動配置中定義的內容是啓動啓用了經典鏈接到VPC的c4.large(僅VPC類型的實例)。您需要選擇與EC2 Classic兼容的實例類型。

AutoScaling組:您正試圖從啓動配置啓動一個實例,並啓用了經典鏈接(意味着您想將其啓動到EC2 Classic中,但您要提供一個VPC(子網ID)來啓動它。你不應該提供的VPC子網ID的啓動它。

的命令單獨地看不是不正確,這樣你就不會收到任何錯誤,但它們互不兼容將在啓動時一起使用。

CloudWatch:我建議解決第一個問題,然後詢問有關您的CloudWatch警報的單獨問題,但我懷疑您沒有與自動縮放組相關的警報。是url的更多信息:http://docs.aws.amazon.com/autoscaling/latest/userguide/as-scale-based-on-demand.html

+0

因此,如果我啓動「c3」而不是「c4」,並且如果我不提供subnet-id,它會是一個正確的方向嗎? –

+0

那麼,在你回答之前,我使用「c3.large」而不是「c4.large」,但沒有提供subnet-id:IT WORKED。實例已成功創建。但是如果我想使用「c4.large」實例呢?我將如何使用它們? –

+0

您無法在EC2 Classic中使用c4實例:[請參閱文檔中的限制](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/c4-instances.html#c4-instance-limit )。如果您想使用c4,則需要將這些實例直接遷移到VPC中,而不要使用經典鏈接。無論如何,我推薦做的事情,因爲將來出現的任何新的實例類型都不會提供給EC2 Classic。亞馬遜正試圖讓人們遠離使用EC2 Classic,實際上今天創建的新帳戶甚至無法訪問EC2 Classic,只有VPC。 – ItsKarma

相關問題