我有设置代码管道,用于使用cloudformation模板在EC2实例上端到端自动部署修订,部署组的类型为blue / green(用于代码部署)。
但是我不明白如何使代码部署组与新创建的自动缩放组(绿色)保持同步。
成功部署后,是否必须在管道中创建新的lambda调用操作,以更新新创建的自动缩放组名。
答案 0 :(得分:0)
不幸的是,CloudFormation 不支持用于EC2 platform的蓝色/绿色部署:
对于蓝色/绿色部署,AWS CloudFormation仅支持 Lambda计算平台上的部署。
对ECS的支持是非常新的。
要为EC2平台的蓝色/绿色创建部署组,您必须在CloudFormation中创建一个custom resource。
自定义资源将基于lambda函数,在该lambda函数中,您将使用create_deployment_group为EC2实例定义蓝色/绿色详细信息。在此过程中,您可以选择如何处理 AutoScaling组,例如
"greenFleetProvisioningOption": {
"action": "COPY_AUTO_SCALING_GROUP"
}
对于创建自定义资源,AWS的crhelper非常有用。
希望这会有所帮助,并希望CloudFormation支持EC2的Blue / Green。