Codedeploy需要很长时间

时间:2019-08-22 10:26:15

标签: amazon-web-services autoscaling aws-code-deploy

我们在TargetResponseTime阈值上触发自动缩放。为新的EC2实例启动和恢复正常状态需要将近20分钟。当我们检查代码部署时,我们看到两种时间,一种在部署历史记录中,开始时间为2019年8月22日3:10 PM,结束时间为2019年8月22日3:28 PM。对于该特定部署,我们看到从ApplicationStop到AfterAllowTraffic的持续时间为2分21秒。其余时间在哪里?为什么部署历史记录显示18分钟,而部署时间却是2分钟21秒?

如何减少这个时间?

背景:要通过自动缩放功能启动EC2实例,我们有一个启动配置,用于安装codedeploy代理。实例将在Auto Scaling组实例的生命周期中处于挂起:等待状态,并带有一个钩子CodeDeploy-managed-automatic-launch-deployment-hook-DGENSVPC1b-f51a955c-194e-4a51-ad9b-1489101325ba 自动缩放:EC2_INSTANCE_LAUNCHING,ABANDON,600

2 个答案:

答案 0 :(得分:0)

如果没有更多的系统可见性,很难说。它可能涉及您在EC2用户数据或ELB运行状况检查设置中的任务。您能否再看一下不同的CodeDeploy生命周期事件,看看时间在哪里聚集?例如。如果查看特定的CodeDeploy操作,则可以“查看事件”以查看部署生命周期事件的列表以及完成每个事件所花费的时间。找出花费时间最长的时间后,就可以缩小根本原因。enter image description here

答案 1 :(得分:0)

使用Amazon的AMI而不是自定义AMI可以将这段时间从之前的20分钟减少到大约5-6分钟。