Transcript
Page 1: Microservices on the Edge

Microservices on the Edge

James HigginbothamAPI Architect@launchany

Page 2: Microservices on the Edge

Introduction

Page 3: Microservices on the Edge

A Little Background…

Page 4: Microservices on the Edge

Fog Computing

The collaboration of resources from ‘edge nodes’ for the purposes of

computation, storage, analysis and management of devices and data

Page 5: Microservices on the Edge

Edge Computing in 2001

+

Page 6: Microservices on the Edge

What’s Different Now?

Page 7: Microservices on the Edge

Cloud Native Architecture

Need Solution

Servers Cloud Servers are abundant (e.g. EC2)

Database Various vendors, can scale up and out (e.g. RDS or self-install)

File Storage File and Object storage abundant (e.g. EFS, S3, Ceph)

Messaging Message brokers abundant (e.g. SNS/SQS, RabbitMQ)

Stack Definition Declarative Infrastructure (e.g. CloudFormation, SaltStack, Terraform, BOSH)

Page 8: Microservices on the Edge

Edge Computing Architecture

Need Solution

Servers Hardware must be installed ahead of time

Database Limited footprint/storage requires careful selection

File Storage File storage limited, can cluster block devices

Messaging Message brokers abundant, limited by footprint requirements

Stack Definition Infrastructure is hardware

Page 9: Microservices on the Edge

Edge computing demonstrates some of the same limitations of

the pre-cloud world: No elasticity or flexibility

Page 10: Microservices on the Edge

What if we could bring some elasticity and flexibility of our

cloud native architecture to edge computing?

Page 11: Microservices on the Edge

The Proof of Concept

Page 12: Microservices on the Edge

Hardware List

• Raspberry Pi 2• 6-port USB Charger• 1’ micro USB cables• 1’ Cat 5 cables + switch• 3’ thin HDMI cables• HDMI Switcher (optional)• Projector (optional, for initial Pi configuration)

Page 13: Microservices on the Edge

Docker Environment

• Hypriot Raspbian distribution• Docker 1.6.0• OverlayFS• http://blog.hypriot.com/

• Docker Images:• hypriot/rpi-redis• hypriot/rpi-ruby• (Also avail: Node, Go, Python, Java, MySQL, …)

Page 14: Microservices on the Edge

Architecture

RedisMessage Broker

Dashboard

WX API

Solar Panel API

Platform Services

Application Services

Solar Panel Aggregator

WX Collector

Solar Panel Collector

Microservice Boundary

Page 15: Microservices on the Edge

Demo

Page 16: Microservices on the Edge

Future Considerations

Build trigger logic from events/analysis Shared platform services– Device-specific integration services (logging/ELK)– Network-specific services (MQTT, Internal DNS)

Service discovery and orchestration– Docker Swarm, Hashicorp Consul/Atlas

Deployment services– Upgrade/rollback using blue-green deployment

Page 17: Microservices on the Edge

Thanks Ya’ll

James [email protected]://launchany.com

@launchany

Page 18: Microservices on the Edge

QUESTIONS


Top Related