Week 8 Flashcards

1
Q

What are the approaches to testing in production?

A

Blue/Green testing
Canary testing
Feature testing
Resilience Testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
1
Q

Why test in production?

A

You get the most powerful feedback, you get real users doing real things, combinations that are unusual. Testing under real traffic.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is Blue/Green testing?

A

The production environment(blue) is exchanged with the staging environment(green) - may be done by updating a routing table.

this means that they need to be the same scale.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is canary testing?

A

A small percentage of customer traffic is sent to a new version in production, by tinkering with a load balancer (i.e. 5% are routed to the new system). Limits the damage if the new version is broken.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is A/B feature testing?

A

A small percentage of the customer traffic is sent to a new version in the production environment. (like netflix moving buttons on different versions etc). Investigate what users do (do they buy more tickets, watch more movies)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is resilience training?

A

Random virtual machines or containers in the production environment are terminated. Test the recovery plan by simulating a failure (e.g. spin up a new container), testing if we can recover without annoying people, to see if the system is tolerant of failure.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the ‘Chaos Monkey’ in resilience testing?

A

It terminates random virtual machines to see how well automatic recovery mechanisms work.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the ‘Chaos Gorilla’ in resilience testing?

A

It terminates (links to) entire availability zones. Services should automatically switch to alternate zones without a user-visible impact or manual intervention. (get routed to something else)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the ‘Latency Monkey’ in resilience testing?

A

It delays client-server communication to simulate service degradation and measures in upstream services respond appropriately. Very large delay can simulate a node or service downtime. See if we can deal with a slow network.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What does DevOps stand for?

A

Development (responding to a rapidly changing competitive landscape)
Operations (provide stable, reliable, and secure service)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Why might separating Dev and Ops lead to problems?

A

They have conflicting goals. Devs are measured by the number of features added whereas ops are measured by security. Devs want to go as fast as they can but ops want to go as slowly as they can.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is DevOps?

A

Sees development and operations teams work together to deploy changes hundreds or even thousands of times per day.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the DevOps manifesto?

A

CALMS
Culture
Automation
Lean
Measurement
Sharing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does ‘Culture’ mean in CALMS?

A

DevOps involves changing culture, so that development, QC, security and operations people are all on the same team, working together to discover, triage and fix problems. Mistakes are allowed as long as lessons are learned.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What does ‘Automation’ mean in CALMS?

A

Devops involves automating manual tasks to eliminate toil, defined as work that tends to be manual, repetitive, automatable, tactical, devoid of enduring value, and that scales linearly as a service grows. Extensive use of tooling eliminates this toil, giving consistency, predictability and transparency.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What does ‘Lean’ mean in CALMS?

A

Keeping everything minimal but useful so that batches of improvements are small, but worthwhile, and their deployment to production is frequent.
The idea is to give the user a perhaps imperfect product today,
rather than a perfect one in six month’s time.

16
Q

What does ‘Measurement’ mean in CALMS?

A

Obsessively monitoring metrics in real time, so that problems become apparent immediately and can be fixed quickly. Dev metrics, work-in-progress or the burn-down rate, or of operations metrics, such as the response time or incident rate. Driven by numbers.

17
Q

What does ‘Sharing’ mean in CALMS?

A

Sharing goals, priorities and responsibilities, so create a common sense of purpose. This is managed through the creation of frictionless information feedback loops from development to operations, and from operations to development.

18
Q

How is the DevOps lifecycle described?

A

An infinite loop to symbolize the need for constant collaboration and iterative improvement.

19
Q

Advantages of DevOps

A

Fatser delivery and problems resolved more quickly
Greater productivity and increased engagement
Improved collaboration and communication

20
Q

Disadvantages of DevOps

A

Resistance to change that means unlearning/learning
Limited funds for transitioning from siloed to single teams
Choosing metrics aligned with success is hard.