L13 - Continuous Delivery 1 Flashcards
1
Q
What is Continuous Delivery?
A
- The transition from Staging to Production in the CI/CD pipeline.
- Staging to production delivery occurs frequently with a high quality
2
Q
What is the difference between Continuous Deployment and Continuous Delivery?
A
- Continuous Deployment is automated whereas Continuous Delivery has a ‘Button Press’ way of working E.g manually.
3
Q
What is an issue with Continuous Deployment?
A
- Due to automated deliver to production, bugs can be released to production stage (end users)
4
Q
What are the 4 types of testing in Continuous Delivery that can reduced risk of problems when moving to production?
A
- A/B Testing
- Canary Testing
- Blue / Green Testing
- Resilience Testing
5
Q
Explain A/B Testing…
A
- Usually used for user interfaces.
- A small % of customer traffic is sent to a new interface in the production environment. Associated interactions with this interface is monitored to determined its effectiveness.
- % is consistently upped so long as returns are positive until new interface is used for all users.
6
Q
Explain Canary Testing…
A
- Conducted when not sure if modification will work.
- Small % of customer traffic is sent to a ‘maybe working’ version of the product (a canary) in the production environment.
7
Q
Define a Canary…
A
Refers to an updated / modified version of the software.
8
Q
Explain Blue / Green Testing…
A
- Production environment (blue) is exchanged with the staging environment (green).
- Send user traffic to staging environment instead of production environment.
- Maybe be done by updating a routing table.
- If users have issues or complain, can revert instantly. Otherwise, used permanently.
9
Q
Explain Resilience Testing…
A
- Software provider deliberately fails a VM or container in the production environment.
- The aim is to break the infrastructure (with a chaos monkey), determine the reaction regarding how quickly the system can recover.
- The continuous resilience testing ensures system is safeguarded against a wide array of fail cases.
10
Q
What is the Chaos Monkey?
A
- Used in resilience testing
- Terminates random VM’s to test recovery mechanisms of the system.
11
Q
What is the Chaos Gorilla?
A
- Used in resilience testing
- Terminates entire availability zones to ensure that services automatically switch to reserve or backup services.
12
Q
What is the Latency Monkey?
A
- Used in resilience testing
- Delays client/server response times to mimc network degradation.
- Ensures system responds appropriately