SDLC - Software Development Lifecycle Flashcards
Deployment Strategies - What is Single Target Deployment
Builds are ran on a single target. Has the drawback of limited testing. To be used on legacy or small development services where possible.
Deployment Strategies - All-at-OnceDeployment
Similar to single target, but allows for one step deployment to multiple targets. No ability to test and roll back is not always easy.
Deployment Strategies - Minimum in-service Deployment
Users set a minimum number of services that must remain operational. The system then tries to deploy the maximum number of upgrades while maintaining the minimum. Deployment happens in multiple stages and allows for health checks and automated testing. This allows generally no downtime.
Deployment Strategies - Rolling Deployments.
A specified number of deployment targets are given. So one can specify a number like 1,2,3 servers at a time, and then each of these numbers are done at a time. Overall applicable health isn’t necessarily maintained. Orchestration and health checks are required. May be slower to deploy if there are many targets.
Deployment Strategies - Blue/Greed Deployment
Uses a pointer like DNS load balancing to point services to an initial Blue service. Blue is then effectively copied to a full replica Green product and then the changes are made to the new green deployment and then DNS point over to Green.
Deployment Strategies - Canary Deployment
Same as Blue/Green but the switch over to green is slowly integrated using both Blue/Green simultaneously and then switching over slow using Route53 Weighted Round Robin.
What is CodeDeploy?
A managed deployment service that automates deployment to ECS, On-premise instances and Lambda.
How does CodeDeploy know where to deploy software too?
It can use auto-scaling or tags.