Top Banner
Optimising For Speed
35
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Implementing Continuous Delivery and PaaS

Optimising For Speed

Page 2: Implementing Continuous Delivery and PaaS

About• Work for Paddy Power

• Predominately development background

• Been leveraging CI since ~ 2003

• I haven’t written any books

• But…if I did, I would have written…

Page 3: Implementing Continuous Delivery and PaaS

• Because you want to win!

• By beating your competitors.

• By growing the market.

• By growing your market share.

Why Optimise for Speed?

Page 4: Implementing Continuous Delivery and PaaS

• Making decisions quickly.

• Building better, faster, lighter.

• Your organisation must exist to support your engineering team.

• Replace human interaction with API invocation.

How to Optimise for Speed

Page 5: Implementing Continuous Delivery and PaaS

• Engineers own quality.

• You write it, your run it!

• Avoid moral hazard!

How to Optimise for Speed, Safely

Page 6: Implementing Continuous Delivery and PaaS

How to Optimise for Speed, Safely

• Continuous Delivery vs Continuous Deployment

• Continuous Delivery requires manual promotion.

• Continuous Deployment is fully automated.

• Continuous Delivery is an opportunity to realise efficiencies through convention.

• Continuous Delivery is realised through a staged pipeline.

Page 7: Implementing Continuous Delivery and PaaS

How to Optimise for Speed, Safely

• Change the characteristics of the system complexity.

• Monolithic architectures centralise complexity.

• Distributed architectures distribute complexity.

• Manage distributed systems complexity with PaaS.

• Provide operational tooling through PaaS.

Page 8: Implementing Continuous Delivery and PaaS

The Staged Delivery Pipeline

Page 9: Implementing Continuous Delivery and PaaS

An Example Staged Delivery Pipeline

Page 10: Implementing Continuous Delivery and PaaS

The Code Commit Stage

Page 11: Implementing Continuous Delivery and PaaS

The Build Stage

Page 12: Implementing Continuous Delivery and PaaS

The Acceptance Test Stage

Page 13: Implementing Continuous Delivery and PaaS

The Performance Test Stage

Page 14: Implementing Continuous Delivery and PaaS

The Stability Test Stage

Page 15: Implementing Continuous Delivery and PaaS

The Manual Test Stage

Page 16: Implementing Continuous Delivery and PaaS

The Production Stage

Page 17: Implementing Continuous Delivery and PaaS

A Word on Implementation

Page 18: Implementing Continuous Delivery and PaaS

PaaS Maturity

Page 19: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 20: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 21: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 22: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 23: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 24: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 25: Implementing Continuous Delivery and PaaS

PaaS from 30,000 Feet

Page 26: Implementing Continuous Delivery and PaaS

Some Key Concepts

Page 27: Implementing Continuous Delivery and PaaS

Machine Image

Page 28: Implementing Continuous Delivery and PaaS

Configuration Management• Control the functional and physical attributes of a

system.

• Desired state configuration allows you to declaratively specify they system configuration.

• Convergence applies the desired state to the system.

• In distributed environments, Desired State Configuration tooling requires orchestration.

Page 29: Implementing Continuous Delivery and PaaS

Application Service

Page 30: Implementing Continuous Delivery and PaaS

Application Blueprint

Page 31: Implementing Continuous Delivery and PaaS

Environment Orchestration

Page 32: Implementing Continuous Delivery and PaaS

Shared Services

Page 33: Implementing Continuous Delivery and PaaS

–Kevin Kelly, co-founder of Wired Magazine

“The nature of an innovation is that it will arise at a fringe where it can afford to become prevalent enough to establish its usefulness without being

overwhelmed by the inertia of the orthodox system.”

Page 34: Implementing Continuous Delivery and PaaS

–Clay Shirky

“Institutions will try to preserve the problem to which they are the solution.”

Page 35: Implementing Continuous Delivery and PaaS

Thoughts?