pivotal centurylink cloud platform seminar presentations: enabling continuous delivery

Post on 21-Aug-2015

145 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© Copyright 2014 Pivotal. All rights reserved.

Pivotal Cloud Platform Deep DiveEnabling Continuous Delivery

Andrew Ripka aripka@pivotal.io @rippmn

1

© Copyright 2014 Pivotal. All rights reserved.

Enabling Continuous Delivery• Continuous Delivery Overview

• How Cloud Foundry Enables Continuous Delivery

• DEMO: A CD Pipeline with Jenkins, Artifactory, CF Client, and PWS

2

Meet Henry (Our Business Owner)

3

Meet Henry

He needs an app built in the next 8 weeks He knows what the app should do

He expects competitors to try to beat us to market

4

Meet Jane (Our App Architect)

5

!

Meet Jane

Jane is a little worried: Not everyone understands agile here Environment setup takes a long time

8 Weeks isn’t much time to get a release to production (!)

6

!

Continuous Delivery To The Rescue!

7

Continuous Deployment

8

Github: On August 23, 2012 – 563 builds and 175 deploys

github.com/blog/1241-deploying-at-github

Continuous Delivery != Continuous Deployment

9

Continuous Delivery != Continuous Deployment

10 twitter.com/ccaum/statuses/372620989257232384

The Difference:

Who Presses The Button For A Production Deployment?

11

What Could Get In Jane’s Way?

12

Cycle Time

www.flickr.com/photos/nnova/339990495313

How Long Does It Take To Deploy One Line Of Code To Production?

Silos

www.flickr.com/photos/denimdave/633422442814

… But We Have A DevOps Team!

Process

www.flickr.com/photos/kevgilmour/484305133115

You Need To Open A Ticket For That!

Feedback Loop

www.flickr.com/photos/tenspeedphotography/545045678316

Are We Building The Right Thing?

17

ChangeProduction Breaks When Changes Are Made (!)

… Right?

Jane Needs Some Help (This Seems Insurmountable)

18

Strategies For Success

19

Strategies For Success

Do Implement Continuous Integration

20

21 http://en.wikipedia.org/wiki/Margaret_Hamilton_%28scientist%29

Strategies For Success

Do Not Create Environment Specific Packages

22

Strategies For Success

Do Externalize Environment Specific Configuration

23

Strategies For Success

Do Automate Everything

24

Strategies For Success

Do Not Assume Existing Processes Are Right (Engage In Continuous Improvement)

25

!

Strategies For Success

Do Not Use A Different Process For Different Environments

26

Strategies For Success

Do Recreate App Environments Frequently (Also Known As: Servers Are Not Puppies)

27

Strategies For Success

Do Ensure Database Changes Are Automated

28

Strategies For SuccessDo Ensure Database Changes Are Automated

http://www.amazon.com/Refactoring-Databases-Evolutionary-paperback-Addison-Wesley/dp/0321774515/

See also - https://www.simple-talk.com/sql/database-administration/continuous-delivery-and-the-database/

29

Strategies For Success

Do Deploy Less More Frequently

30

" " " " " "" " " " " "" " " " " "

v2.1

" " " "v2.1

" " "v2.3

" " " " " " "v2.2

Strategies For Success

Do Automate All Testing Where Test Failures Would Prevent A Production Release From

Occurring

31

Strategies For Success

Do Try To Use Tools That Support The Process (But Don’t Get Stuck In Tool Selection Hell!)

32

g

© Copyright 2014 Pivotal. All rights reserved.

Enabling Continuous Delivery• Continuous Delivery Overview

• How Cloud Foundry Enables Continuous Delivery

• DEMO: A CD Pipeline with Jenkins, Artifactory, CF Client, and PWS

33

Cloud Foundry Helps Jane…

34

Cloud Foundry Helps Jane…

Get A New App Environment In Seconds

35

in a

Cloud Foundry Helps Jane…

Have Complete Consistency Between Environments

36

Cloud Foundry Helps Jane…

Have A Consistent API To Automate Deployments

37

Cloud Foundry Helps Jane…

Inject Environment Specific Configuration

38

Cloud Foundry Helps Jane…

Inject External Dependencies

39

40

Promote Apps Through Environments With The Same Process

#$#

$

#$

Cloud Foundry Helps Jane…

%

Cloud Foundry Helps Jane…

By Providing New Options: + Canary Deployment

+ Zero Downtime Deployment + A/B Testing

+ Scale Apps On-Demand

41

App Developers Can Be More Successful When They Are Supported

By Agile Infrastructure

42

© Copyright 2014 Pivotal. All rights reserved.

Enabling Continuous Delivery• Continuous Delivery Overview

• How Cloud Foundry Enables Continuous Delivery

• DEMO: A CD Pipeline with Jenkins, Artifactory, CF Client, and PWS

43

© Copyright 2014 Pivotal. All rights reserved.

Continuous Delivery Demo

Full video at http://goo.gl/kocrtC

(Note - file sharing blocks may prevent viewing in google drive)

44

© Copyright 2014 Pivotal. All rights reserved.

Artifact Repository

Continuous Delivery Process with Pivotal Cloud Foundry

45

CI Deployment

Server

SCM Repository

Runtime

1. Commit Code

2. CI/CD Server Builds Artifact and pushes to Repo

3. CI/CD Pushes Artifact and config to Dev

4. Triggered CI/CD Push into Test

5. Trigger CI/CD Push into Stage

Commit Code "

Dev Test Stage

© Copyright 2014 Pivotal. All rights reserved.

Enabling Continuous Delivery• Continuous Delivery Overview

• How Cloud Foundry Enables Continuous Delivery

• DEMO: A CD Pipeline with Jenkins, Artifactory, CF Client, and PWS

46

© Copyright 2014 Pivotal. All rights reserved.

THANK YOU!Get Pivotal Cloud Platform at http://network.pivotal.io!

47

top related