DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps =...

36
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Woody Borraccino, AWS Solutions Architect April 14, 2016 DevOps e Continuous Delivery: strumenti e processi

Transcript of DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps =...

Page 1: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Woody Borraccino, AWS Solutions Architect

April 14, 2016

DevOps e Continuous Delivery:

strumenti e processi

Page 2: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

What to expect from the session

• The Amazon DevOps story

• New developer tools for

everyone

• AWS CodeDeploy

• AWS CodePipeline

• AWS CodeCommit

• AWS Elastic Beanstalk

• AWS CloudFormation

• AWS OpsWorks

• Amazon EC2 Container Service

Page 3: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

What is DevOps?

DevOps = efficiencies that speed up this lifecycle

developers customers

releasetestbuild

plan monitor

delivery pipeline

feedback loop

Software development lifecycle

Page 4: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

The Amazon DevOps story

Page 5: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor
Page 6: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Monolith development lifecycle

developers

releasetestbuild

delivery pipelineapp

Page 7: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Service-Oriented

Architecture (SOA)

Single-purpose

Connected through APIs

Highly decoupled

“Microservices”

Page 8: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Two-pizza teams

Full ownership

Full accountability

Aligned incentives

“DevOps”

Page 9: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Missing tools

developers delivery pipelineservices

???

Page 10: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Self-service

Technology-agnostic

Encourage best

practices

Single-purpose services

Page 11: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Deployment service

No downtime

deployments

Health tracking

Versioned artifacts and

rollbacks

Page 12: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

PipelinesContinuous delivery

Automated release

process

Faster and more reliable

releases

>90% of teams

Page 13: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Microservice development lifecycle

developers delivery pipelinesservices

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

releasetestbuild

Page 14: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

= 50 million deployments a year

Thousands of teams

× Microservice architecture

× Continuous delivery

× Multiple environments

Page 15: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

How can others do this?

Page 16: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Setting up a delivery pipeline

Testing Staging Production

de

plo

y

de

plo

y

de

plo

y

Source Build

release

AWS CodeDeploy

AWS CodePipeline

AWS

CodeCommit

Page 17: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS Code Services

Page 18: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS CodeDeploy

Easy and reliable deployments

Scale with ease

Deploy to any server

TestCodeDeployv1, v2, v3

Production

Dev

application

revisions

deployment groups

Page 19: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS CodePipeline

Connect to best-of-breed tools

Accelerate your release process

Consistently verify each release

Build

1) Build

2) Unit test

1) Deploy

2) UI test

Source Beta Production

1) Deploy

2) Perf test

Gamma

1) Deploy canary

2) Deploy region 1

3) Deploy region 2

1) Pull

Page 20: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS CodeCommit

Use standard Git tools

Scalability, availability, and durability of Amazon S3

Encryption at rest with customer-specific keys

git pull/push CodeCommit

Git objects in

Amazon S3

Git index in

Amazon

DynamoDB

Encryption key

in AWS KMS

SSH or HTTPS

Page 21: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS Code partners

Page 22: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS Elastic Beanstalk

Fast & simple

to begin

Developer

productivity

Impossible

to outgrow

Complete

resource control

Easily deploy PHP, Java, Python, Ruby,

Node.js, .NET, Go or Docker application

Page 23: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS CloudFormation

Create templates of the infrastructure

to version control / replicate / update

with infrastructure-as-code

Templated resource

provisioning

Infrastructure

as code

Declarative

and flexible

Easy to use

Page 24: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

AWS OpsWorks

• Supports a wide variety of architectures

• Define configuration for your entire environment using

Chef recipes and Bash scripts

• Maintain and version like source code

• Ensure consistent configuration

Page 25: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Amazon EC2 Container Service

High performance container management

service that supports Docker

Environment consistency Developer productivity Version control Operational efficiency

Page 26: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

www.docebo.com26

Docebo @AWS Summit 20162016

Page 27: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com27

Docebo

Infrastructure Architect & DevOps

[email protected]

@andreaspoldi

Page 28: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com28

Docebo

Cloud LMS

Modular learning ecosystem

For your employee, channel

partners, customer and

member training

Page 29: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com29

70

FUNDS RECENTLY RAISED Growth Capital

Klass Capital (Canada)

U$6M

90

NORTH AMERICAAthens, GA (USA)

EUROPEMilan (Italy)

MIDDLE EASTDubai (UAE)

3 Offices

Target Market:

Projects with 500+ Users

900 2

B2B Clients in 80 Countries

Docebo

47.3%% SALES FROM

NORTH AMERICA

Page 30: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com30

Customers

Top Industries

- Software, High Tech- Retail- Consulting - Healthcare- Manufacturing- Energy, Oil and Gas

25%SMB

75% Enterprise

Page 31: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com31

The “Ops Challenge”

- High Availability & Scalability- Geographical Distribution- IaaS

Page 32: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com32

Docebo - AWS infrastructure

Page 33: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com33

AWS - Benefits

- System availability increased, mainly by RDS MultiAZ feature

- Customer experience increased

- More cloud services means more cool features

Page 34: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Copyright © 2015 Docebo - All rights reserved. www.docebo.com34

AWS - the future

integrate our “handmade” docker orchestration

and CI tools with ECS and ECS registry

Amazon Elastic Container Service (ECS)

Page 35: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

www.docebo.comCopyright © 2015 Docebo - All rights reserved. 35

Thank You

Page 36: DevOps e Continuous Delivery: strumenti e processi · PDF fileWhat is DevOps? DevOps = efficiencies that speed up this lifecycle developers customers build test release plan monitor

Thank you!