continuous delivery for microservice architectures with concourse & cloud foundry

32
Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry Alex Ley @alexevade

Upload: pivotal

Post on 10-Jan-2017

179 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Continuous Delivery for Microservice Architectures

with Concourse & Cloud FoundryAlex Ley

@alexevade

Page 2: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

INTROAlex Ley Building the Cloud Pivotal

@alexevade

Page 3: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

1. Introduction to Continuous Delivery for Microservices.

2. Spring Boot Trader. 3. Build a Delivery Pipeline with

Concourse & Cloud Foundry. 4. Getting Started Materials.

What will we cover?

Page 4: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Continuous Delivery?

Page 5: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

“Continuous Delivery is a software development discipline where you build software in such a way that the software can be released to production at any time.”

Martin Fowler

Page 6: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Continuous Integration

Page 7: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Why is Continuous Delivery different for

Microservice Architectures?

Page 8: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

It’s not.

Page 9: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

There are just many more things to integrate, deliver and operate.

Page 10: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

µService CD Challenges • Teams want to move fast. • Organizations expect systems to

work! • Service discovery & compatibility. • Asynchronicity & Ops at scale.

Page 11: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

We don’t want to deliver a monolith in

lots of parts!

Page 12: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Page 13: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

But fear not…

Page 14: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Page 15: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Page 16: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

“Concourse was dreamt up and built while working on the Cloud Foundry project and experiencing the interesting CI and CD challenges that it has.”

http://concourse.ci/

Page 17: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Spring Boot Trader By David Pinto

Page 18: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Spring Boot Trader By David Pinto

Page 19: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Page 20: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Let’s create a simple Delivery Pipeline for a

SpringBootTrader component with Concourse

& Cloud Foundry!

Page 21: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

1. The quote service will be used by many systems.

2. Production already has Spring Cloud Services created.

3. We want to deploy the service every commit that passes CI.

Assumptions

Page 22: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

1. Independently deployable services. 2. Detect committed changed. 3. Run unit tests. 4. Deploy & setup dependencies. 5. Integration test. 6. Deploy to production!

Pipeline Goals

Page 23: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

KEEP CALM AND

PREPARE FOR

TAKEOFF

Page 24: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

1. Independently deployable services. 2. Smoke tests to monitor system

health. 3. Be disciplined about service

versioning - breaking changes hurt. 4. Deploy to production often. 5. Leave an audit trail.

Recap

Page 25: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

“Concourse + Cloud Foundry makes it simple to create repeatable and robust pipeline(s) to test, integrate and deploy complex systems”

@alexevade, just now, here.

Page 26: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry
Page 27: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

vagrant init concourse/lite vagrant up

https://concourse.ci/hello-world.html

Tutorial: https://github.com/starkandwayne/concourse-tutorial

GETTING STARTED WITH

Page 28: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

PCF Concourse Tile v1.0.0

Coming Q4 2016

Page 29: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Docs: https://docs.pivotal.io/pcf-dev/

Download:

https://network.pivotal.io/products/pcfdev/

GETTING STARTED WITH

Page 30: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Github:

https://github.com/pivotal-bank/cf-SpringBootTrader

Workshops:

https://github.com/pivotal-bank/cf-SpringBootTrader/tree/master/docs

GETTING STARTED WITH SpringBootTrader

Page 31: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

1. Introduction to Continuous delivery for Microservices

2. Spring Boot Trader System 3. Built a Delivery Pipeline with

Concourse & Cloud Foundry 4. Getting Started Materials

What did we cover?

Page 32: Continuous Delivery for Microservice Architectures with Concourse & Cloud Foundry

Unless o therw ise ind ica ted , these s l ides are © 2013-2016 P ivo ta l So f tware , Inc . and l i censed under a Creat ive Commons At t r ibu t ion-NonCommerc ia l l i cense: h t tp : / / c rea t ivecommons.org / l i censes /by-nc /3 .0 /

Thanks for joining

Catch me on twitter @alexevade