efficient microservices deployment pipelines · 2019-10-28 · efficient microservices deployment...

33
Efficient Microservices Deployment Pipelines Anjana Fernando, WSO2 Inc. | @lafernando

Upload: others

Post on 22-May-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Efficient Microservices Deployment Pipelines

Anjana Fernando, WSO2 Inc. | @lafernando

Page 2: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Creating a Microservices Architecture...

Page 3: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Develop -> Test -> Deploy

Page 4: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Automation -> Create a Pipeline

Page 5: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

CI/CD

Page 6: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

CI = Code -> Review -> Unit Test -> Integration Test -> PackageCD = UAT -> Production

Page 7: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Integration in an increasingly disaggregated world

TransactionsCircuit Breaking

ProtocolsPayloads

EventsSecurity

WorkflowStreams

Compensation

Page 8: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

AGILENETWORK AWARE

Page 9: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

BatteriesIncluded

NetworkingNATSActiveMqWebSockets

Page 10: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Docker & Kubernetes

Page 11: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Hello World!

Page 12: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Hello World! [with k8s]

Page 13: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Hello World! [with k8s]...

Page 14: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Hello World! [with k8s]...

Page 15: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Serverless

Page 16: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

AWS Lambda

Page 17: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

AWS Lambda

Page 18: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Testing

Page 19: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Microservices Testing○ Unit Testing

○ Integration Testing○ Contract Testing

○ Ballerina Service Skeletons ○ Mocking

Page 20: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

CI/CD Pipeline Services○ Jenkins

○ Travis

○ Codefresh

○ GitHub Actions

Page 21: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

GitHub Actions

Page 22: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 23: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 24: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 25: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 26: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 27: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 28: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 29: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda
Page 30: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Ballerina/GitHub Actions Extended Operations○ AWS Lambda Deployment

○ Ballerina Central Module Deployment

○ Ballerina Connector Auto Generation

Page 31: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

Kubernetes Jaeger

Docker Prometheus

AWS Lambda

etcd OAuth2 / OIDC

Istio / Envoy

LinkerD RabbitMQ

Consul AMQP

Swagger/OpenAPI

MySQL gRPC / Protobuf

Postgres WebSub

Cassandra

Spring/Java

Visual Studio Code

Intellij IDEA

Ecosystem extensions for disaggregated architecture

Page 32: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

How to get involved

Learn more

Open source

Get support

http://ballerina.io

http://github.com/ballerina-platform/

Stack Overflow - #ballerina tag Slack - https://ballerina.io/community/slack/

Full Demo https://bit.ly/2WWutVm

Page 33: Efficient Microservices Deployment Pipelines · 2019-10-28 · Efficient Microservices Deployment Pipelines Anjana Fernando, ... Jenkins Travis ... Extended Operations AWS Lambda

THANK YOU