microservices continuous delivery with mantl & shipped

44
container-solutions.com | @containersoluti µservices CD with MANTL & Shipped | @JoCatalin µservices Continuous Delivery with MANTL & Shipped Catalin Jora May 2016, Krakow Atmosphere Conference

Upload: catalin-jora

Post on 08-Feb-2017

115 views

Category:

Software


2 download

TRANSCRIPT

Page 1: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

µservices Continuous Delivery with MANTL & Shipped

Catalin JoraMay 2016, KrakowAtmosphere Conference

Page 2: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

About me

2

Catalin Joraengineer @ Container Solutions

worked on Shipped @JoCatalin linkedin.com/in/JoCatalin [email protected]

Page 3: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Agenda

3

Software development: Monolith to microservicesRise of the containers

Challenges with microservices:Putting everything together (MANTL)Make them available to your users/customers (Shipped)

Q&A

Page 4: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Software development : pre-DevOps

4

Page 5: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Software development : DevOps

5

Page 6: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Software development : Post-DevOps

6

Page 7: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin7

How to move to microservices?

Page 8: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin8

Page 9: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin9

Page 10: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin10

Security?

Service discovery?

Orchestration?

Networking?

Persistence?

Monitoring?

Cluster Management?

Page 11: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin11

We start with Docker

Page 12: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin12

Maybe add Mesos for scheduling?

Page 13: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin13

And Consul for service discovery?

Page 14: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin14

And Project Calico (canal) for the networking?

Page 15: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin15

And ELK for the logs collection?

Page 16: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin16

… 6 months later …

Terraform & Ansible deployment to cloud providers

etcd distributed key-value store for Calico

Calico a new kind of virtual network

Mesos cluster manager

Marathon long running services

Consul for service discovery

Vault for managing secrets

Docker container runtime

collectd for metrics collection

Logstash for log forwarding

GlusterFS for container volume storage

Traefik for proxying external traffic

Page 17: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin17

Why are you building infrastructure and not your application?

Page 18: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin18

Page 19: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

What is MANTL ?

19

Mantl is a modern platform for rapidly deploying globally distributed microservices

Open sourceCloud agnosticAvailable now: github.com/ciscocloud/mantl

Page 20: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

What problems does MANTL solve?

20

NetworkingSecurityService DiscoveryPersistenceMonitoringOrchestrationCluster ManagementAnd others...

Page 21: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

What problems does MANTL solve?

21

NetworkingSecurityService DiscoveryPersistenceMonitoringOrchestrationCluster ManagementAnd others...

Supports easier migration to microservices

Solves integration conflictsLowers configuration timeMore time for

developmentRuns anywhereAvoid cloud lockingEnd-to-End platformCustomizable (open-source)

Page 22: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin22

MANTL Architecture

3 types of components:

● Control

● Edge

● Resource

Page 23: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin23

MANTL Architecture

Page 24: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin24

MANTL Architecture

Page 25: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin25

MANTL Architecture

Page 26: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin26

Adding MANTL to your infrastructure

Page 27: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin27

Adding MANTL to your infrastructure

Page 28: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin28

Page 29: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin29

Page 30: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin30

Page 31: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin31

Security

Service discovery

Orchestration

NetworkingPersistence

Monitoring

Cluster Management

Page 32: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin32

How to build them?

Policies?

How to run them?

How to ship them?

Cloud or on-premises?

Infrastructure monitoring?

Auto-scaling?

Page 33: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin33

Page 34: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin34

What is Shipped ?● Shipped is a continuous delivery platform for

microservices (cloud native apps)● Commercial Cisco product● Runs on top of MANTL● Complements MANTL● In the cloud or on premises● In open Beta now: ciscoshipped.io

Page 35: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin35

What problems does Shipped solve ?

Page 36: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

What problems does Shipped solve?

36

CI/CD platform (build/deploy/run)Application intent engineInfrastructure monitoring Contiv (Infra Policy Enforcement)

Page 37: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin37

Shipped overview

Page 38: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin38

Shipped overview

Application Intent

Page 39: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Shipped - Implementing App Intent - Scaling

Page 40: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Shipped - Implementing App Intent - Scaling

Page 41: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Shipped - Implementing App Intent - Scaling

Page 42: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin42

Page 43: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin43

Security

Service discovery

Orchestration

NetworkingPersistence

Monitoring

Cluster Management

How to build them?

How to run them?

Infrastructure monitoring?

Policies? How to ship them?

Cloud or on-premises?

Auto-scaling?

Page 44: Microservices continuous delivery with mantl & shipped

container-solutions.com | @containersoluti

µservices CD with MANTL & Shipped | @JoCatalin

Thanks, links & more

44

MANTL: mantl.io (contribute on )Shipped: ciscoshipped.io (open beta)

Microservices: Applications & Microservices with

Docker & Containers - thenewstack.iomartinfowler.com/articles/microservices.htmlDocker : Using Docker - Adrian MouatBlogs:blogs.cisco.com/cloudcontainer-solutions.com/blog