monitoring microservices @ sf microservice meeting

Post on 12-Jan-2017

810 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Monitoring Microservicestom@weave.works

@tom_wilkie

VisualisationMonitoring Tracing

0255075

100

Monitoring

0255075

100

Traditional 3-tier architectureIncoming traffic

Load balancers

Application servers

Database & replica

Microservice architecture

Public APIWeb UI

NoSQL serversDatabase

Message Broker

Services

Microservices should be treated like cattle not pets

USE Method* - for every resource, check: • utilization, • saturation, and • errors

RED Method - for every service, check request: • rate, • error (rate), and • duration (distributions)

* http://www.brendangregg.com/usemethod.html

An alternative view

Monitoring

0255075

100

Visualisation

Weave Scope

Connection Tracking

# cat /proc/net/tcp

# conntrack -E -p tcp

Demo time

Visualisation

VisualisationMonitoring Tracing

0255075

100

@weaveworks github.com/weaveworks

Questions?http://weave.works/product/scope

tom@weave.works @tom_wilkie

Tracing

Distributed Tracing

Not a new topic

• Lots of literature • Existing open source

projects • e.g. Zipkin, originally from

Twitter

• Challenge: detecting causality between incoming and outgoing requests

• Existing solutions require propagation of some unique ID (dapper, zipkin)

• This requires application-specific modifications

some service

incomingrequest

outgoingrequests

?

Can this be done without application modifications?

Demo time

Tracing

top related