38
The DevOps journey in an Enterprise Anders Lundsgård Dev Mattias Järnhäll Ops May 3 rd 2016

The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Embed Size (px)

Citation preview

Page 1: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

The DevOps journey in an Enterprise

Anders LundsgårdDev

Mattias JärnhällOps

May 3rd 2016

Page 2: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Who are we?

Anders Lundsgård• Developer & Technical Architect (Senior Engineer)• Scania Connected Services, Delivery Engineering Team

Mattias Järnhäll• Manager• Infrastructure Delivery .NET

Page 3: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

What We will talk about

Very short about Scania

Our DevOps movement

The ‘Ops’ in DevOps

Final takeaways

3

Page 4: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

What does Scania?

Annually ~80.000 heavyweight trucks

Page 5: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Software evolution at Scania

‘90sSpaghetti Code

‘00sGrowing monoliths

‘10sMicroservices era

Page 6: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Disclaimer

The opinions expressed in this presentation and on the following slides are solely those of the presenters and not necessarily those of

Scania as a whole.

Page 7: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

We at infra need to be an enabler for developers. Enable automatic deployments

and roll-backs.

Creating tools/dashboards with relevant KPI’s so that the developer can fast and easily see

the consequences of a deployment.

- Mattias Järnhäll, Infrastructure manager 2014.03.03 on Scania social network

Page 8: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

in the early days…

DevOps movement

More features quicker Stability

Page 9: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

More features quicker Stability

Page 10: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Shared understanding and common goals

Page 11: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Pipeline

Tests

Code

‘90s ‘00s ‘10s

Software Delivery Through the Decades

Page 12: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

DevOpsAutomation

Trust

Agile explained

Page 13: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Agile explained

Page 14: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

CODEIN PROD

PENDING CODE

NEWFEATURES

CustomerValue

Limit Work In Progress

Page 15: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Version Control

Pull & Push several times a day

Continuous Integration

Server Target Servers(Dev, Staging, Prod)

Version Everything- Code- Tests- Configuration- Database- Infrastructure

15 minutes

Automation – Deployment Pipeline

DeployServer

CI D

Page 16: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Reveal a Secret

Page 17: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Developers care about QA and Stability

if…they gets accountable

Page 18: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

18

Growing Microservices out of Monoliths

Why?How?

Results?

Page 19: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

GUI

Database

Infra

Business Logic

Networking Storage

OS

Integration

Service 1

Service 2 Service

5 Service 7

Service 8

Service 10

Service 12

Service 14

Service 3

Service 4

Service 6

Service 9

Service 11

Service 15

Middleware

Service 13

User Interface

Security Monitoring

Even with Continuous Integration, fast delivery is hard with 50+

engineers and a large codebase.

Monolith

Page 20: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

All Infra needs

User Interface

Service 1

Service 2 Service

5 Service 7

Service 8

Service 10

Service 12

Service 14

Service 3

Service 4

Service 6

Service 9

Service 11

Service 15

Service 13

All Infra needs

All Infra needs

All Infra needs

All Infra needs

All Infra needs

All Infra needs

All Infra needs

GUI

Database

Infra

Business Logic

Why Microservices?1. Autonomous teams

2. Build, Test, Deploy SPEED

Microservices

Page 21: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Check-in frequency

Project: Scania Connected Services

Page 22: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Ops!

Page 23: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Who am I and why am I here?

13 years @ Infrastructure Have an attraction to developers Passionate about the agile transformation Love big complex challenges

Page 24: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

What I will talk about

Setting the context – why is this hard? What did we look like before change? Pain points? The transformation starts – and where we are now.

Page 25: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

25

Enterprise IT challenges #1 Different types of customer needs

? !I have an app. Can you install it

for me?Can you help me to help myself?

Page 26: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

26

Enterprise IT challenges #2 The Legacy

Culture

Page 27: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

27

Enterprise IT challenges #3 Optimized for resource efficiency

Page 28: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Back in the days...

Pain Points Required a lot of coordinating roles Lots of hand overs Unclear responsibilities Gap between solutions and infra/op Optimized for resource efficiency ”far away from our customer” (solutions) Unclear ownership of deliveries

OperationsInfrastructure

NetworkStorageHW / Virtualization

OSDBWEB

Solutions

Built Bought

Page 29: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Clearly pointed out that IT should be strategic and transformationalAnd that we need to become more agile in our way of working.

New MD, clear direction and new org

Page 30: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Infrastructure Services

Infra SolutionTeam.NET

Infra SolutionTeam.NET

Infra SolutionTeam

Java/Oracle

Infra SolutionTeam

Java/Oracle

Sales Service PD O2D Shared EUP

Self Service Portal

What happened… Delivery Focus

Provide infrastructure servicesthat are easy to consume.

Autonomous delivery departments with a clear customer.

Enable delivery departments to be agile

Infra SolutionTeam.NET

Page 31: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Our mission is to enable our customer become more agile while keeping a

robust infrastructure solution with high performance that is easy to maintain

over its lifecycle.  

We do this by:• Using standardized infrastructure components• Automating operational tasks• Sharing our knowledge to developers• Providing infrastructure solutions that are easy to maintain

Page 32: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Transformation don’t happen over night… Still mostly reactive work Working on breaking old roles / habbits Understanding CI, CD, IaC Getting everybody onboard

Page 33: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

“Don’t fight stupid, make more Awesome”

Page 34: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Use your technical skillsPoor little me. I’m just a Dev. What can I do?

Zero Downtime

Feature Toggles

Deploy is a part of your daily job

Deploy is decoupled from Release

Page 35: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Collaboration > Automation

Good reads

Automation Business impact

Pair Programming

Collocate with coffee machine

Page 36: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

36

Page 37: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

37

Page 38: The DevOps journey in an Enterprise - Continuous Lifecycle London 2016

Thank You!

Anders Lundsgård: @anderslundsgard

Mattias Järnhäll: @mattiasjarnhall