我的CloudFormation堆棧會生成一個將MinSize和MaxSize設置爲1的ScalingGroup。它還會創建一個以該ScalingGroup爲目標的DeploymentGroup。帶有AllAtOnce的Amazon CodeDeploy無法在具有1個EC2實例的新CloudFormation堆棧上執行
- 如果部署組配置了配置名稱
CodeDeployDefault.OneAtATime
,則部署將成功啓動。 - 當部署組配置了配置名稱
CodeDeployDefault.AllAtOnce
,然後在創建堆棧時,codedeploy不執行任何操作,並且在EC2上看不到任何事件或日誌跟蹤。只有一處提到錯誤代碼HEALTH_CONSTRAINTS
。如果我終止實例,那麼擴展組將啓動一個新實例,但CodeDeploy不會再執行任何操作。如果我手動開始部署CodeDeployDefault.OneAtATime
然後它的工作。
從我的文檔中讀過,這不應該發生
- 不應該有健康檢查,因爲沒有實例部署組
CodeDeployDefault.AllAtOnce
有一個最低限度的衛生百分比存在0.因此,可能是提高錯誤的原因是它等於0,它決定不繼續提到健康錯誤代碼CodeDeployDefault.AllAtOnce
提及,這應該是我的理解,它不會做一個健康因爲在概念上檢查沒有意義,因爲所有實例都將在同一時間進行配置。
我的期望還是正確,還是我做錯了什麼?
經過幾次迭代後,我發現這個錯誤並不總是會發生。 6次使用完全相同的CloudFormation模板,3次出錯,代碼爲'HEALTH_CONSTRAINTS'。 –