Top Banner
Hands-on Workshop | OpenStack Summit, Barcelona Learn About Microservices Architectures with Docker Swarm, Etcd, Kuryr, Neutron
19

Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Jan 12, 2017

Download

Software

Fawad Khaliq
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Hands-on Workshop | OpenStack Summit, Barcelona

Learn About Microservices Architectures with Docker Swarm, Etcd, Kuryr, Neutron

Page 2: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

IntroductionSpeaker

2

Senior Software Engineer, PLUMgrid

KhaliqFawad

@fawadkhaliq

Page 3: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

• Brief Introduction to Microservices • Docker, Docker Swarm • etcd • Kuryr, Neutron (with PLUMgrid plugin) • Service Discovery/Service Registration • Hands-on workshop • Questions

Agenda

3

Page 4: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Introduction to MicroservicesEnter the world of containers!

4

ContainersVirtual Machines

Start/Stop time

Workload Density

Seconds to minutes Milliseconds

1x 10x-100x

Page 5: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Introduction to MicroservicesMonolithic services vs Microservices

5

• Monolithic • All in one application with single big unified code base • Comprises of multiple small components packaged as one • Entire application grows overtime with each component growth • Harder to maintain overtime, especially upgrades and troubleshooting

• Microservices • Divide and conquer • Move each component into a separate service entity • Connect via APIs • Code base is easier to manage • Deploying is easier and upgrade downtimes are reduced • Easier to scale/replace a component

Page 6: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Docker SwarmArchitecture

6

Page 7: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

• Distributed K/V store based on directories

• Service definition queried using JSON-based HTTP APIs

• Clients handle failure or load balancing themselves

• Allows watch on changes

etcd

7

Page 8: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

etcd

8

ETCD

Page 9: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Service Registration/Service Discovery

9

Page 10: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Kuryr, Neutron, PLUMgrid

10

Page 11: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

OpenStack Networks PLUMgrid Virtual Domains

From OpenStack Networks to PLUMgrid Virtual Domains

11

Page 12: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Virtual DomainsYour Private Virtual Data Center

12

• Tenant Virtual Domains • Isolation & segmentation of workloads • Self-service provision of all functions

• Service Virtual Domains • Owned by Cloud Operator • Used to apply common services or

security policies • Hosts external connectivity

• Virtual Domain Chaining • Decouple changes from physical

infrastructure • Fully distributed within IO Visor layer

DNS

Service Virtual Domain

Tenant Virtual Domains

Page 13: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Virtual Network Functions

13

Distributed Virtual Network Functions Description

Connector • Connectivity: External, Port Bundle (“Multi-gateway LAG”), Appliance and Inter Virtual Domain

Bridge • Distributed Layer 2 network function • Connects VMs on same IP subnet inside Virtual Domain • Include Private VLAN functionality

Router• Distributed Layer 3 network function • Connects VMs from different subnets inside a Virtual Domain • Includes Dynamic Routing Protocols (RIP, OSPF, BGP)

DHCP • Distributed DHCP function for dynamic IP Address allocation • Associated on per Bridge basis

NAT • Distributed Network Address Translation function • Supports Inbound / Outbound, Many to One, One to One NAT

Security Policies • Distributed Layer 4 Security network function • Substitute for Layer 4 ACLs / Firewalls

DNS • Distributed Domain Name Service

Page 14: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Any Questions?Before we move on to the hands-on workshop

14

Page 15: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

HANDS-ON WORKSHOP

15

Page 16: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Hands-on Workshop Environment

16

Page 17: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Content Overview

17

Docker, Kuryr, Neutron

Microservices using Docker

Compose

Service Registration and Service Discovery

Page 18: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Copyright © PLUMgrid, Inc. 2011-2016

Content Overview

18

Hybrid VM and Container

Application

Micro segmentation for Containers

and VMs

Extended Exercises

Page 19: Microservices Architectures with Docker Swarm, etcd, Kuryr and Neutron

Visit Us @Booth B37

THANK YOU!

www.plumgrid.com